diff options
Diffstat (limited to 'data/zh_cn/ebs')
| -rw-r--r-- | data/zh_cn/ebs/2021-07-30/api-docs.php | 18458 |
1 files changed, 6808 insertions, 11650 deletions
diff --git a/data/zh_cn/ebs/2021-07-30/api-docs.php b/data/zh_cn/ebs/2021-07-30/api-docs.php index ad2d5c5..6689bfc 100644 --- a/data/zh_cn/ebs/2021-07-30/api-docs.php +++ b/data/zh_cn/ebs/2021-07-30/api-docs.php @@ -1,211 +1,93 @@ <?php return [ 'version' => '1.0', - 'info' => [ - 'style' => 'RPC', - 'product' => 'ebs', - 'version' => '2021-07-30', - ], + 'info' => ['style' => 'RPC', 'product' => 'ebs', 'version' => '2021-07-30'], 'directories' => [ [ - 'id' => 276857, - 'title' => '服务地域', + 'children' => ['ListReplicaEdgeSupported', 'CreateDiskReplicaPair', 'AddDiskReplicaPair', 'ModifyDiskReplicaPair', 'StartDiskReplicaPair', 'StopDiskReplicaPair', 'ReprotectDiskReplicaPair', 'FailoverDiskReplicaPair', 'DescribeDiskReplicaPairProgress', 'DeleteDiskReplicaPair', 'DescribeDiskReplicaPairs', 'RemoveDiskReplicaPair', 'DescribePairDrills', 'StartPairDrill', 'ClearPairDrill'], 'type' => 'directory', - 'children' => [ - 'DescribeRegions', - ], - ], - [ - 'id' => 276859, 'title' => '复制对', - 'type' => 'directory', - 'children' => [ - 'ListReplicaEdgeSupported', - 'CreateDiskReplicaPair', - 'AddDiskReplicaPair', - 'ModifyDiskReplicaPair', - 'StartDiskReplicaPair', - 'StopDiskReplicaPair', - 'ReprotectDiskReplicaPair', - 'FailoverDiskReplicaPair', - 'DescribeDiskReplicaPairProgress', - 'DeleteDiskReplicaPair', - 'DescribeDiskReplicaPairs', - 'RemoveDiskReplicaPair', - 'DescribePairDrills', - 'StartPairDrill', - 'ClearPairDrill', - ], + 'id' => 97395, ], [ - 'id' => 276875, - 'title' => '复制组', + 'children' => ['CreateDiskReplicaGroup', 'DescribeDiskReplicaGroups', 'ModifyDiskReplicaGroup', 'StartDiskReplicaGroup', 'StopDiskReplicaGroup', 'FailoverDiskReplicaGroup', 'ReprotectDiskReplicaGroup', 'DeleteDiskReplicaGroup', 'DescribeReplicaGroupDrills', 'StartReplicaGroupDrill', 'ClearReplicaGroupDrill'], 'type' => 'directory', - 'children' => [ - 'CreateDiskReplicaGroup', - 'DescribeDiskReplicaGroups', - 'ModifyDiskReplicaGroup', - 'StartDiskReplicaGroup', - 'StopDiskReplicaGroup', - 'FailoverDiskReplicaGroup', - 'ReprotectDiskReplicaGroup', - 'DeleteDiskReplicaGroup', - 'DescribeReplicaGroupDrills', - 'StartReplicaGroupDrill', - 'ClearReplicaGroupDrill', - ], + 'title' => '复制组', + 'id' => 97381, ], [ - 'id' => 276887, - 'title' => '专属块存储集群', + 'children' => ['CreateDedicatedBlockStorageCluster', 'DescribeDedicatedBlockStorageClusters', 'ModifyDedicatedBlockStorageClusterAttribute', 'DescribeDedicatedBlockStorageClusterDisks', 'QueryDedicatedBlockStorageClusterInventoryData'], 'type' => 'directory', - 'children' => [ - 'CreateDedicatedBlockStorageCluster', - 'DescribeDedicatedBlockStorageClusters', - 'ModifyDedicatedBlockStorageClusterAttribute', - 'DescribeDedicatedBlockStorageClusterDisks', - 'QueryDedicatedBlockStorageClusterInventoryData', - ], + 'title' => '专属块存储集群', + 'id' => 97410, ], [ - 'id' => 276893, - 'title' => '企业级快照策略', + 'children' => ['CreateEnterpriseSnapshotPolicy', 'DescribeEnterpriseSnapshotPolicy', 'UpdateEnterpriseSnapshotPolicy', 'BindEnterpriseSnapshotPolicy', 'UnbindEnterpriseSnapshotPolicy', 'DeleteEnterpriseSnapshotPolicy'], 'type' => 'directory', - 'children' => [ - 'CreateEnterpriseSnapshotPolicy', - 'DescribeEnterpriseSnapshotPolicy', - 'UpdateEnterpriseSnapshotPolicy', - 'BindEnterpriseSnapshotPolicy', - 'UnbindEnterpriseSnapshotPolicy', - 'DeleteEnterpriseSnapshotPolicy', - ], + 'title' => '企业级快照策略', + 'id' => 97438, ], [ - 'id' => 276900, - 'title' => '数据洞察', + 'children' => ['ApplyLensService', 'DescribeLensServiceStatus', 'CancelLensService', 'DescribeLensMonitorDisks'], 'type' => 'directory', - 'children' => [ - 'ApplyLensService', - 'DescribeLensServiceStatus', - 'CancelLensService', - 'DescribeLensMonitorDisks', - 'DescribeEvents', - 'DescribeMetricData', - 'DescribeDiskMonitorDataList', - 'DescribeDiskMonitorData', - 'DescribeDiskEvents', - ], + 'title' => '数据洞察', + 'id' => 97428, ], [ - 'id' => 276910, - 'title' => '实验室', + 'children' => ['UpdateSolutionInstanceAttribute'], 'type' => 'directory', - 'children' => [ - 'UpdateSolutionInstanceAttribute', - ], + 'title' => '实验室', + 'id' => 97445, ], [ - 'id' => 276912, - 'title' => '其他', - 'type' => 'directory', 'children' => [ - 'TagResources', - 'ListTagResources', + 'DescribeSolutionInstanceConfiguration', 'QueryDedicatedBlockStorageClusterDiskThroughputStatus', 'SetDedicatedBlockStorageClusterDiskThroughput', 'ListReports', 'GetReport', 'DescribeUserTagKeys', 'DescribeUserTagValues', 'ChangeResourceGroup', 'CreateApp', 'CreateDiagnoseReport', 'DeleteApp', 'DescribeApps', 'DescribeDiagnoseReport', 'DescribeDiskMonitorData', 'DescribeEvents', 'DescribeMetricData', 'DescribeRegions', 'ListTagResources', 'ModifyApp', 'TagResources', 'UntagResources', - 'ChangeResourceGroup', - 'DescribeSolutionInstanceConfiguration', - 'QueryDedicatedBlockStorageClusterDiskThroughputStatus', - 'SetDedicatedBlockStorageClusterDiskThroughput', - 'ListReports', - 'GetReport', - 'DescribeUserTagKeys', - 'DescribeUserTagValues', ], - ], - [ - 'id' => 0, - 'title' => '其它', 'type' => 'directory', - 'children' => [ - 'DeleteApp', - 'DescribeApps', - 'CreateApp', - 'ModifyApp', - ], + 'title' => '其他', + 'id' => 97416, ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ - 'DescribeRegions' => [ - 'summary' => '查询块存储EBS相关功能异步复制、数据洞察、专属块存储集群支持的地域信息。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'AddDiskReplicaPair' => [ + 'summary' => '调用AddDiskReplicaPair接口,并可以指定ReplicaGroupId、ReplicaPairId、ClientToken等参数,添加复制对到一致性复制组,最终通过一致性复制组,您可以批量管理复制对。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '61960', - 'abilityTreeNodes' => [ - 'FEATUREdisk0EX8WR', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '115801', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ - 'name' => 'ResourceType', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '资源类型。取值范围:'."\n" - ."\n" - .'- ear:异步复制。'."\n" - ."\n" - .'- lens:数据洞察。'."\n" - ."\n" - .'- dbsc: 专属块存储集群。'."\n" - ."\n" - .'未指定资源类型时,将会返回所有资源类型支持的地域信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'ear', - ], + 'schema' => ['description' => '一致性复制组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'AcceptLanguage', + 'name' => 'ReplicaGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '地域和可用区名称的语言类型。对应返回参数中`LocalName`的返回值。取值范围:'."\n" - ."\n" - .'- zh-CN:中文。'."\n" - .'- en-US:英文。'."\n" - .'- ja:日文。'."\n" - ."\n" - .'默认值:zh-CN。', - 'type' => 'string', - 'required' => false, - 'example' => 'zh-CN', - ], + 'schema' => ['description' => '一致性复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****'], ], [ - 'name' => 'RegionId', + 'name' => 'ReplicaPairId', 'in' => 'query', - 'schema' => [ - 'description' => '用户访问端的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', - 'default' => 'cn-shanghai', - ], + 'schema' => ['description' => '复制对ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询已创建的复制对ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ @@ -215,330 +97,154 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '17EE62D8-064E-5404-8B0D-72122478****', - ], - 'Regions' => [ - 'description' => '地域和可用区信息合集。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'LocalName' => [ - 'description' => '地域名称。', - 'type' => 'string', - 'example' => '华东1(杭州)', - ], - 'RegionEndpoint' => [ - 'description' => '地域对应的接入地址(Endpoint)。', - 'type' => 'string', - 'example' => 'ebs.cn-hangzhou.aliyuncs.com', - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'Zones' => [ - 'description' => '可用区信息合集。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'LocalName' => [ - 'description' => '可用区名称。', - 'type' => 'string', - 'example' => '杭州 可用区H', - ], - 'ZoneId' => [ - 'description' => '可用区ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou-h', - ], - 'ResourceTypes' => [ - 'description' => '资源类型列表。', - 'type' => 'array', - 'items' => [ - 'description' => '资源类型。可能值:'."\n" - ."\n" - .'- ear:异步复制。'."\n" - ."\n" - .'- lens:数据洞察。'."\n" - ."\n" - .'- dbsc: 专属块存储集群。', - 'type' => 'string', - 'example' => 'ear', - ], - ], - ], - ], - ], - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - ], - [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.GroupStatusCannotAddPair', 'errorMessage' => 'The pair cannot be added in group current status.', 'description' => '一致性组的当前状态不允许复制对加入。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => '当前状态下该操作不允许执行。'], + ['errorCode' => 'OperationDenied.PairGroupAZoneConflict', 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'description' => '当前操作不允许执行,因为复制对和一致性组所属的RegionId和ZoneId不一致。'], + ['errorCode' => 'OperationDenied.PairGroupStatusConflict', 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', 'description' => '当前操作不允许执行,因为复制对和一致性组的状态不一致。'], + ['errorCode' => 'OperationDenied.PairInAnotherGroup', 'errorMessage' => 'The operation is not allowed because pair is already in another group.', 'description' => '当前操作不允许执行,因为复制对已被加入另一个一致性组中。'], + ['errorCode' => 'OperationDenied.PairInitializing', 'errorMessage' => 'The operation is not allowed due to pair initializing, please try again later.', 'description' => '当前操作不允许执行,因为复制对仍在初始化中,请稍后再重试。'], + ['errorCode' => 'OperationDenied.PairStatusCannotAddToGroup', 'errorMessage' => 'The pair cannot be added in pair current status.', 'description' => '复制对的当前状态不允许复制对加入到一致性组中。'], + ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The operation is not allowed due to quota exceed.', 'description' => '当前操作已超过使用配额。'], + ['errorCode' => 'OperationDenied.PairsExceedInGroup', 'errorMessage' => 'The operation is not allowed due to too much pair in the group.', 'description' => '当前操作不允许执行,因为已超过一致性组可支持的最大复制对数量。'], + ['errorCode' => 'OperationDenied.GroupTotalDiskCapacityLimit', 'errorMessage' => 'The disk space in the replication pair-consistent group exceeds the upper limit.', '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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"17EE62D8-064E-5404-8B0D-72122478****\\",\\n \\"Regions\\": [\\n {\\n \\"LocalName\\": \\"华东1(杭州)\\",\\n \\"RegionEndpoint\\": \\"ebs.cn-hangzhou.aliyuncs.com\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Zones\\": [\\n {\\n \\"LocalName\\": \\"杭州 可用区H\\",\\n \\"ZoneId\\": \\"cn-hangzhou-h\\",\\n \\"ResourceTypes\\": [\\n \\"ear\\"\\n ]\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeRegionsResponse>\\n <RequestId>17EE62D8-064E-5404-8B0D-72122478****</RequestId>\\n <Regions>\\n <LocalName>华东1(杭州)</LocalName>\\n <RegionEndpoint>ebs.cn-hangzhou.aliyuncs.com</RegionEndpoint>\\n <RegionId>cn-hangzhou</RegionId>\\n <Zones>\\n <LocalName>杭州 可用区H</LocalName>\\n <ZoneId>cn-hangzhou-h</ZoneId>\\n </Zones>\\n </Regions>\\n</DescribeRegionsResponse>","errorExample":""}]', - 'title' => '查询地域信息', - ], - 'ListReplicaEdgeSupported' => [ - 'summary' => '查询某个可用区支持的异步复制目的地域和可用区。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<AddDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</AddDiskReplicaPairResponse>","errorExample":""}]', + 'title' => '添加复制对到一致性复制组', + 'description' => '## 接口说明'."\n" + ."\n" + .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + ."\n" + .'- 只有复制对与一致性复制组的数据复制方向相同(即生产地域、生产可用区、容灾地域、容灾可用区分别相同)时,才能将复制对加入到该一致性复制组中。'."\n" + ."\n" + .'- 要添加的复制对和添加到的一致性复制组均要处于**已创建**(`created`)或者**已停止**(`stopped`)状态。'."\n" + ."\n" + .'- 单个一致性复制组中最大支持添加17个复制对。'."\n" + ."\n" + .'- 将复制对添加到一致性复制组后,复制对原有的RPO会失效,并按照一致性复制组的RPO进行运行。', + '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' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '186462', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'abilityTreeCode' => '138241', + 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'title' => '地域ID。', - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'Azone', - 'in' => 'query', - 'schema' => [ - 'title' => '可用区ID。', - 'description' => '可用区ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou-h', - ], - ], - [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。该参数暂未启用。', - 'type' => 'string', - 'required' => false, - 'example' => 'e71d8a535bd9c****', - ], - ], - [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时每页的最大条目数。取值范围:1~500。该参数暂未启用。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], - ], - ], + 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'ListReplicaPairEdgeResponse', - 'description' => 'ListReplicaPairEdgeResponse', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'SupportedRegions' => [ - 'description' => '地域信息合集。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'RegionId' => [ - 'title' => '地域ID', - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'Zones' => [ - 'description' => '可用区信息合集。', - 'type' => 'array', - 'items' => [ - 'description' => '可用区信息。', - 'type' => 'object', - 'properties' => [ - 'ZoneId' => [ - 'title' => '可用区ID', - 'description' => '可用区ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou-i', - ], - ], - ], - ], - ], - ], - ], - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '17EE62D8-064E-5404-8B0D-72122478****', - ], - 'NextToken' => [ - 'description' => '下一个查询开始的Token,NextToken为空表示没有下一个。', - 'type' => 'string', - 'example' => 'e71d8a535bd9c****', - ], - 'MaxResults' => [ - 'description' => '分页查询时每页的最大条目数。'."\n" - ."\n" - .'取值范围:1~500。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => '参数错误'], ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => '当前用户无权限对当前资源执行任何操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => '当前用户无权限执行该操作。请检查您的账号权限或者咨询您的主账号管理员。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SupportedRegions\\": [\\n {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Zones\\": [\\n {\\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"}]', - 'title' => '查询可用区支持的异步复制目的地域和可用区', - ], - 'CreateDiskReplicaPair' => [ - 'summary' => '创建一个云盘异步复制关系。', - 'methods' => [ - 'get', - 'post', + 'title' => '开通数据洞察服务', + 'summary' => '开通块存储数据洞察(CloudLens for EBS)。', + 'changeSet' => [ + ['createdAt' => '2023-03-22T01:59:35.000Z', 'description' => '错误码发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ApplyLensService'], + ], + 'product' => ['code' => 'disk', 'title' => '块存储'], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:ApplyLensService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ApplyLensServiceResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ApplyLensServiceResponse>","errorExample":""}]', + ], + 'BindEnterpriseSnapshotPolicy' => [ + 'summary' => '调用BindEnterpriseSnapshotPolicy绑定云盘到企业级快照策略。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -547,634 +253,118 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '42802', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '159099', + 'abilityTreeNodes' => ['FEATUREdiskTL976Y'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['title' => '地域ID', 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'SourceZoneId', - 'in' => 'query', - 'schema' => [ - 'description' => '源云盘(主盘)所属的可用区ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing-f', - ], - ], - [ - 'name' => 'DiskId', - 'in' => 'query', - 'schema' => [ - 'description' => '源云盘(主盘)的云盘ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'd-iq80sgp4d0xbk24q****', - ], - ], - [ - 'name' => 'DestinationRegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '目标云盘(从盘)所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], - ], - [ - 'name' => 'DestinationDiskId', - 'in' => 'query', - 'schema' => [ - 'description' => '目标云盘(从盘)的云盘ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'd-sa1f82p58p1tdw9g****', - ], - ], - [ - 'name' => 'DestinationZoneId', - 'in' => 'query', - 'schema' => [ - 'description' => '目标云盘(从盘)所属的可用区ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai-e', - ], - ], - [ - 'name' => 'PairName', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的名称。长度为2~128个字符,必须以大小写字母或中文开头,不能以`http://`或`https://`开头。可以包含中文、英文、数字、半角冒号(:)、下划线(_)、半角句号(.)或者短划线(-)。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestReplicaPair', - ], - ], - [ - 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的描述信息。长度为2~256个英文或中文字符,不能以`http://`或`https://`开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'This is description.', - ], - ], - [ - 'name' => 'ChargeType', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的付费方式。取值范围:'."\n" - .'- PREPAY:包年包月。'."\n" - .'- POSTPAY:按量付费。'."\n" - ."\n" - .'默认值:POSTPAY。', - 'type' => 'string', - 'required' => false, - 'example' => 'PREPAY', - ], - ], - [ - 'name' => 'Period', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的购买时长。当`ChargeType=PREPAY`时,该参数为必选参数。时长单位由`PeriodUnit`指定,取值范围:1、2、3、6、12、24、36、60。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'PeriodUnit', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系购买时长的单位。当前仅支持Month。'."\n" - .'Month:月。', - 'type' => 'string', - 'required' => false, - 'example' => 'Month', - ], - ], - [ - 'name' => 'ClientToken', - 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], - ], - [ - 'name' => 'Bandwidth', - 'in' => 'query', - 'schema' => [ - 'description' => '云盘之间异步复制数据时的带宽。单位为Kbps。取值范围:'."\n" - ."\n" - .'- 10240'."\n" - .'- 20480'."\n" - .'- 51200'."\n" - .'- 102400'."\n" - ."\n" - .'默认值:10240。'."\n" - .'当ChargeType取值为POSTPAY时,不能指定本参数值,系统取值为0,表示云盘异步复制时根据数据写入变化动态分配。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '10240', - ], - ], - [ - 'name' => 'RPO', - 'in' => 'query', - 'schema' => [ - 'description' => '云盘异步复制关系设定的RPO值,单位:秒。当前仅支持900秒。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '900', - ], - ], - [ - 'name' => 'ResourceGroupId', + 'name' => 'PolicyId', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制对所在的企业资源组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmvs****', - ], + 'schema' => ['title' => '快照策略ID', 'description' => '快照策略ID。', 'type' => 'string', 'required' => true, 'example' => 'esp-xxx'], ], [ - 'name' => 'Tag', + 'name' => 'DiskTargets', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'title' => '标签列表,最多包含20个子项', - 'description' => '标签列表,最多包含20个子项。', + 'title' => 'the disk targets', + 'description' => '需要绑定的云盘列表。', 'type' => 'array', - 'items' => [ - 'description' => '标签信息。', - 'type' => 'object', - 'properties' => [ - 'Value' => [ - 'title' => '异步复制对的标签值', - 'description' => '异步复制对的标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestValue', - ], - 'Key' => [ - 'title' => '异步复制对的标签键', - 'description' => '异步复制对的标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestKey', - ], - ], - 'required' => false, - ], + 'items' => ['description' => '磁盘ID。', 'type' => 'string', 'required' => false, 'example' => 'd-xxx'], 'required' => false, - 'maxItems' => 21, + 'maxItems' => 10, ], ], [ - 'name' => 'EnableRtc', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '是否开启RTC。默认关闭。', - 'description' => '是否开启复制时间控制(RTC)。取值范围:'."\n" - ."\n" - .'- false:关闭。'."\n" - .'- true:开启。'."\n" - ."\n" - .'默认值:false。'."\n" - ."\n" - .'> 若复制对加入复制组,则与复制组的属性保持一致。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => 'Response', + 'description' => '应答', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], - 'ReplicaPairId' => [ - 'description' => '异步复制关系ID。', - 'type' => 'string', - 'example' => 'pair-cn-dsa****', - ], - 'OrderId' => [ - 'description' => '订单ID。', - 'type' => 'string', - 'example' => '123456****', - ], + 'RequestId' => ['title' => '请求ID', 'description' => '请求ID', 'type' => 'string', 'example' => 'D763F3A9-EB16-5E85-BFD5-AA9E07D18CB9'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'IdempotentParameterMismatch', - 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', - ], + ['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' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.QuotaExceed', - 'errorMessage' => 'The operation is not allowed due to quota exceed.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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 \\"ReplicaPairId\\": \\"pair-cn-dsa****\\",\\n \\"OrderId\\": \\"123456****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n <ReplicaPairId>pair-cn-dsa****</ReplicaPairId>\\n <OrderId>123456****</OrderId>\\n</CreateDiskReplicaPairResponse>","errorExample":""}]', - 'title' => '创建云盘异步复制关系', - 'description' => '## 接口说明'."\n" - ."\n" - .'<props="china">云盘异步复制是一种基于块存储数据复制能力实现跨地域数据保护的功能。该功能可以将某一块云盘的数据,异步复制到其他地域内的另一块云盘中,实现存储数据的跨地域容灾备份。您可以通过该功能建立关键业务的容灾能力,保护数据库数据的同时提升业务的连续性。关于功能注意事项以及计费的更多信息,请参见[云盘异步复制概述](~~314563~~)。同时,异步复制功能以包年包月的计费方式收取带宽费用,也支持以后付费方式收取流量费用。</props>'."\n" - ."\n" - .'<props="intl">云盘异步复制是一种基于块存储数据复制能力实现跨地域数据保护的功能。该功能可以将某一块云盘的数据,异步复制到其他地域内的另一块云盘中,实现存储数据的跨地域容灾备份。您可以通过该功能建立关键业务的容灾能力,保护数据库数据的同时提升业务的连续性。同时,异步复制功能以包年包月的计费方式收取带宽费用。</props>'."\n" - ."\n" - .'目前异步复制功能仅支持ESSD云盘,且云盘功能会受到一定的限制。'."\n" - ."\n" - .'在创建异步复制关系前,您需要注意:'."\n" - ."\n" - .'- 已准备好需要容灾的源云盘(异步复制关系中的主盘)以及已创建好的目标云盘(异步复制关系中的从盘)。您可以调用[CreateDisk](~~25513~~)创建云盘。'."\n" - ."\n" - .'- 创建的从盘所属的地域不能与主盘相同,当前异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - ."\n" - .'- 调用该接口只是创建主盘和从盘之间的异步复制关系,创建完成后,您还需要调用[StartDiskReplicaPair](~~354205~~)激活异步复制功能,以实现周期性地将主盘数据跨地域异步复制到从盘。', - ], - 'AddDiskReplicaPair' => [ - 'summary' => '调用AddDiskReplicaPair接口,并可以指定ReplicaGroupId、ReplicaPairId、ClientToken等参数,添加复制对到一致性复制组,最终通过一致性复制组,您可以批量管理复制对。', - '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' => '一致性复制组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], - ], - [ - 'name' => 'ReplicaGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-myreplica****', - ], - ], - [ - 'name' => 'ReplicaPairId', - 'in' => 'query', - 'schema' => [ - 'description' => '复制对ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询已创建的复制对ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-cn-dsa****', - ], - ], - [ - 'name' => 'ClientToken', - 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"D763F3A9-EB16-5E85-BFD5-AA9E07D18CB9\\"\\n}","errorExample":""},{"type":"xml","example":"<BindEnterpriseSnapshotPolicyResponse>\\n <RequestId>xxx</RequestId>\\n</BindEnterpriseSnapshotPolicyResponse>","errorExample":""}]', + 'title' => '绑定企业级快照策略', + '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}'], ], ], ], ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.GroupStatusCannotAddPair', - 'errorMessage' => 'The pair cannot be added in group current status.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupAZoneConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupStatusConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', - ], - [ - 'errorCode' => 'OperationDenied.PairInAnotherGroup', - 'errorMessage' => 'The operation is not allowed because pair is already in another group.', - ], - [ - 'errorCode' => 'OperationDenied.PairInitializing', - 'errorMessage' => 'The operation is not allowed due to pair initializing, please try again later.', - ], - [ - 'errorCode' => 'OperationDenied.PairStatusCannotAddToGroup', - 'errorMessage' => 'The pair cannot be added in pair current status.', - ], - [ - 'errorCode' => 'OperationDenied.QuotaExceed', - 'errorMessage' => 'The operation is not allowed due to quota exceed.', - ], - [ - 'errorCode' => 'OperationDenied.PairsExceedInGroup', - 'errorMessage' => 'The operation is not allowed due to too much pair in the group.', - ], - [ - 'errorCode' => 'OperationDenied.GroupTotalDiskCapacityLimit', - 'errorMessage' => 'The disk space in the replication pair-consistent group exceeds the upper limit.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - ], - [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], - ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', - ], - ], - ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<AddDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</AddDiskReplicaPairResponse>","errorExample":""}]', - 'title' => '添加复制对到一致性复制组', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - ."\n" - .'- 只有复制对与一致性复制组的数据复制方向相同(即生产地域、生产可用区、容灾地域、容灾可用区分别相同)时,才能将复制对加入到该一致性复制组中。'."\n" - ."\n" - .'- 要添加的复制对和添加到的一致性复制组均要处于**已创建**(`created`)或者**已停止**(`stopped`)状态。'."\n" - ."\n" - .'- 单个一致性复制组中最大支持添加17个复制对。'."\n" - ."\n" - .'- 将复制对添加到一致性复制组后,复制对原有的RPO会失效,并按照一致性复制组的RPO进行运行。', ], - 'ModifyDiskReplicaPair' => [ - 'summary' => '修改一个云盘异步复制关系。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CancelLensService' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '44716', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], - ], - 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系中主盘或从盘所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], - ], - [ - 'name' => 'ReplicaPairId', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-cn-dsa****', - ], - ], - [ - 'name' => 'PairName', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestReplicaPair', - ], - ], - [ - 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的描述信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'This is description.', - ], - ], - [ - 'name' => 'ClientToken', - 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], - ], - [ - 'name' => 'Bandwidth', - 'in' => 'query', - 'schema' => [ - 'description' => '带宽值,单位Kbps。'."\n" - .'>该参数暂未开放使用。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '10240', - ], - ], - [ - 'name' => 'RPO', - 'in' => 'query', - 'schema' => [ - 'description' => '一致性组设定的RPO值,单位:秒。当前仅支持900秒。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '900', - ], - ], - [ - 'name' => 'EnableRtc', - 'in' => 'query', - 'schema' => [ - 'title' => '是否开启RTC。', - 'description' => '是否开启复制时间控制(RTC)。取值范围:'."\n" - ."\n" - .'- false:关闭。'."\n" - .'- true:开启。'."\n" - ."\n" - .'默认false。'."\n" - ."\n" - .'> 若复制对已加入复制组,则与复制组的属性保持一致。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], + 'abilityTreeCode' => '138257', + 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], + 'tenantRelevance' => 'publicInformation', ], + 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ @@ -1182,83 +372,59 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => '参数错误'], + ], 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', - 'errorMessage' => 'Operation is not allowed on the primary site.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForStandby', - 'errorMessage' => 'Operation is not allowed on the secondary site.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'title' => '取消数据洞察服务', + 'summary' => '取消块存储数据洞察(CloudLens for EBS)。', + 'changeSet' => [ + ['createdAt' => '2023-03-22T01:59:35.000Z', 'description' => '错误码发生变更'], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ModifyDiskReplicaPairResponse>","errorExample":""}]', - 'title' => '修改云盘异步复制关系', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - .'- 当异步复制关系处于**已创建**(`created`)或**已停止**(`stopped`)状态时,可以修改名称或者描述信息。', - ], - 'StartDiskReplicaPair' => [ - 'summary' => '为指定的异步复制关系激活异步复制功能。', - 'methods' => [ - 'get', - 'post', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CancelLensService'], + ], + 'product' => ['code' => 'disk', 'title' => '块存储'], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:CancelLensService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<CancelLensServiceResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</CancelLensServiceResponse>","errorExample":""}]', + ], + 'ChangeResourceGroup' => [ + 'summary' => '修改EBS资源所在资源组。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -1268,431 +434,197 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '48741', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'abilityTreeCode' => '152482', + 'abilityTreeNodes' => ['FEATUREdiskFDS0SW'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系中主盘或从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['title' => '地域', 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ReplicaPairId', + 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-cn-dsa****', - ], + 'schema' => ['title' => '资源类型定义', 'description' => '资源类型定义。取值范围:'."\n" + ."\n" + .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" + .'- diskreplicapair:异步复制关系。'."\n" + .'- diskreplicagroup:一致性复制组。', 'type' => 'string', 'required' => true, 'example' => 'diskreplicapair'], ], [ - 'name' => 'ClientToken', + 'name' => 'ResourceId', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['title' => '资源ID', 'description' => '资源ID。例如,当ResourceType=diskreplicapair时,则ResourceId可以理解为异步复制对ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-123'], ], [ - 'name' => 'OneShot', + 'name' => 'NewResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '是否立刻进行一次同步。取值范围:'."\n" - .'- true:立刻开始数据同步。'."\n" - .'- false:在RPO时间周期之后才开始数据同步。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['title' => '资源ID', 'description' => '新的企业资源组ID,可在资源组控制台查看可用企业资源组。企业资源组详情请参见[查看资源组基本信息](~~151181~~)。', 'type' => 'string', 'required' => true, 'example' => 'rg-123'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => 'TagResponse', + 'description' => 'TagResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****', - ], + 'RequestId' => ['title' => '请求ID', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'OperationDenied.StandbyDeviceAttached', - 'errorMessage' => 'The secondary disk is attached.', - ], + ['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' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.ManualSyncLimit', - 'errorMessage' => 'One shot start manual syncing too frequently, please try again later.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - ], - [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","errorExample":""},{"type":"xml","example":"<StartDiskReplicaPairResponse>\\n <RequestId>A37597A6-BB99-19B3-85EA-4C2B91F0****</RequestId>\\n</StartDiskReplicaPairResponse>","errorExample":""}]', - 'title' => '开始云盘异步复制', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - ."\n" - .'- 只能启动处于**已创建**(`created`)或者**已停止**(`stopped`)状态的异步复制关系。'."\n" - ."\n" - .'- 异步复制被启动后,系统会自动进行第一次异步复制操作,此时异步复制关系会处于**初始同步中**(`initial_syncing`)的状态,该次操作会把主盘的全量数据复制到从盘。', - ], - 'StopDiskReplicaPair' => [ - 'summary' => '为指定的异步复制关系停止异步复制功能。', - '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' => '异步复制关系中主盘或从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'ReplicaPairId', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-cn-dsa****', - ], - ], - [ - 'name' => 'ClientToken', - 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****', - ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","type":"json"}]', + 'title' => '修改资源组', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:ChangeResourceGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - ], - [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], - ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', - ], - ], - ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","errorExample":""},{"type":"xml","example":"<StopDiskReplicaPairResponse>\\n <RequestId>A37597A6-BB99-19B3-85EA-4C2B91F0****</RequestId>\\n</StopDiskReplicaPairResponse>","errorExample":""}]', - 'title' => '停止云盘异步复制', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - .'- 只能停止处于**初始同步中**(`initial_syncing`)、**同步中**(`syncing`)、**单次同步中**(`manual_syncing`)或者**正常**(`normal`)状态的异步复制关系。异步复制停止后,将处于已停止(`stopped`)状态,此时从盘中数据将自动回滚到最近一次完成的异步复制后的数据(即最后一次正在进行中的异步复制对应的数据将丢失)。', ], - 'ReprotectDiskReplicaPair' => [ - 'summary' => '启用异步复制关系的反向复制功能。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ClearPairDrill' => [ + 'summary' => '该接口可以清理之前复制对从盘启动的容灾演练,并尝试删除自动创建出来的演练盘。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '71806', - 'abilityTreeNodes' => [ - 'FEATUREdiskAQUAFH', - 'FEATUREdiskVW208V', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '186459', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系中从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制关系中从盘的地域信息。'."\n" - ."\n" - .'> 必须在从盘所属地域下启用反向复制功能。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], - ], - [ - 'name' => 'ReplicaPairId', - 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-cn-dsa****', - ], + 'schema' => ['description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ClientToken', + 'name' => 'PairId', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['title' => '复制对ID。', 'description' => '复制对ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制对列表,获得复制对ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-xxxx'], ], [ - 'name' => 'ReverseReplicate', + 'name' => 'DrillId', 'in' => 'query', - 'schema' => [ - 'description' => '反向复制开关:false代表恢复原方向,true代表反向复制。默认值是true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['title' => '演练ID。', 'description' => '演练ID。您可以通过[DescribePairDrills](~~2584480~~)接口查询当前地域下复制对的容灾演练。', 'type' => 'string', 'required' => true, 'example' => 'drill-xxxx'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', + 'title' => 'Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', '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' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.NoPairInGroup', - 'errorMessage' => 'The operation is not allowed because no pair in the group.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupAZoneConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupStatusConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', - ], - [ - 'errorCode' => 'OperationDenied.PairNotInGroup', - 'errorMessage' => 'The operation is not allowed because pair is not in any group.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', - 'errorMessage' => 'Operation is not allowed on the primary site.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForStandby', - 'errorMessage' => 'Operation is not allowed on the secondary site.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"20758A-585D-4A41-A9B2-28DA8F4F****\\"\\n}","errorExample":""},{"type":"xml","example":"<ClearPairDrillResponse>\\n <RequestId>20758A-585D-4A41-A9B2-28DA8F4F****</RequestId>\\n</ClearPairDrillResponse>","errorExample":""}]', + 'title' => '清理异步复制对的容灾演练', + '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}'], + ], + ], + ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<ReprotectDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ReprotectDiskReplicaPairResponse>","errorExample":""}]', - 'title' => '启用云盘反向异步复制', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - .'- 异步复制关系必须处于**故障切换完成**(`failovered`)状态。您可以调用[FailoverDiskReplicaPair](~~354358~~)启用故障切换功能。'."\n" - .'- 异步复制关系中,主盘必须从所属的ECS实例上卸载,即处于未挂载的状态。您可以调用[DetachDisk](~~25516~~)卸载云盘。'."\n" - .'- 启用反向复制功能后,您还需要重新调用[StartDiskReplicaPair](~~354205~~)启动异步复制功能,才可以将原从盘的数据复制到原主盘当中。'."\n" - .'- 通过设置ReverseReplicate参数为false,您可以进行取消**故障切换完成**(`failovered`)状态,恢复原来的复制方向。', ], - 'FailoverDiskReplicaPair' => [ - 'summary' => '启用异步复制关系的故障切换功能。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ClearReplicaGroupDrill' => [ + 'summary' => '该接口可以清理之前复制组从盘启动的容灾演练,并尝试删除自动创建出来的演练盘。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -1701,971 +633,362 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '71755', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '189138', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系中从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制关系中从盘的地域信息。'."\n" - ."\n" - .'> 必须在从盘所属地域下启用故障切换功能。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['title' => '地域ID。', 'description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ReplicaPairId', + 'name' => 'GroupId', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-cn-dsa****', - ], + 'schema' => ['title' => '复制组ID。', 'description' => '复制组ID。您可以通过[DescribeDiskReplicaGroups](~~426614~~)接口查询异步复制组列表,获得复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'pg-xxxx'], ], [ - 'name' => 'ClientToken', + 'name' => 'DrillId', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['title' => '演练ID。', 'description' => '演练ID。您可以通过[DescribeReplicaGroupDrills](~~2584481~~)接口查询当前地域下复制对的容灾演练。', 'type' => 'string', 'required' => true, 'example' => 'pg-drill-xxxx'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', + 'title' => 'Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', '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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => '参数缺失。'], + ], 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', - 'errorMessage' => 'Operation is not allowed on the primary site.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForStandby', - 'errorMessage' => 'Operation is not allowed on the secondary site.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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":"<ClearReplicaGroupDrillResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ClearReplicaGroupDrillResponse>","errorExample":""}]', + 'title' => '清理异步复制组的容灾演练', + '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}'], + ], + ], + ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<FailoverDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</FailoverDiskReplicaPairResponse>","errorExample":""}]', - 'title' => '启用云盘异步复制故障切换', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - .'- 异步复制关系不能处于**失效**(`invalid`)或**已删除**(`deleted`)状态。'."\n" - .'- 故障切换完成后,异步复制关系处于**故障切换完成**(`failovered`)状态。', ], - 'DescribeDiskReplicaPairProgress' => [ - 'summary' => '查询复制对的同步进度。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateApp' => [ + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '118925', - 'abilityTreeNodes' => [ - 'FEATUREdiskAQUAFH', - 'FEATUREdiskVW208V', - ], + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '193444', + 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], ], 'parameters' => [ [ - 'name' => 'ReplicaPairId', + 'name' => 'AppName', 'in' => 'query', - 'schema' => [ - 'description' => '复制对ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询已创建的复制对ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-cn-tl32ribst0z', - ], + 'schema' => ['title' => 'App名称', 'description' => 'App名称', 'type' => 'string', 'required' => true, 'example' => 'App1'], ], [ - 'name' => 'RegionId', + 'name' => 'AppTags', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '复制对所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'DescribeReplicaPairProgressResponse', - 'description' => 'DescribeReplicaPairProgressResponse', - 'type' => 'object', - 'properties' => [ - 'Progress' => [ - 'title' => '同步进度', - 'description' => '同步进度。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'RecoverPoint' => [ - 'title' => '最近一次恢复点的时间戳。有条件返回,复制对start后,才会返回该字段。', - 'description' => '最近一次恢复点的时间戳。有条件返回,复制对start后,才会返回该字段。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1661917424', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****'."\n", + 'title' => '用户自定义标签,多个标签用', + 'description' => '用户自定义标签,多个标签用', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TagKey' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'controlledBy'], + 'TagValue' => ['description' => '专属集群的标签值。', 'type' => 'string', 'required' => false, 'example' => 'ear'], ], + 'required' => false, + 'description' => '', ], - ], - ], - ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', + 'required' => true, + 'example' => 'default', + 'maxItems' => 100, ], ], [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], + 'name' => 'SubscribeStatus', + 'in' => 'query', + 'schema' => ['title' => 'App使用报告订阅状态', 'description' => 'App使用报告订阅状态,可选:'."\n" + .'- UnSubscribe'."\n" + .'- Subscribe', 'type' => 'string', 'required' => true, 'example' => 'Subscribe'], ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', - ], + [ + 'name' => 'SubscribePeriod', + 'in' => 'query', + 'schema' => ['title' => 'App使用报告发送间隔', 'description' => 'App使用报告发送间隔,可选:'."\n" + .'- Weekly'."\n" + .'- Biweekly'."\n" + .'- Monthly。'."\n" + .'默认Weekly。', 'type' => 'string', 'required' => true, 'example' => 'Weekly'], ], - ], - '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' => '查询复制对的同步进度', - ], - 'DeleteDiskReplicaPair' => [ - 'summary' => '删除一个异步复制关系。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['title' => 'App简介', 'description' => 'App简介', 'type' => 'string', 'required' => false, 'example' => 'test'], ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '48744', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', + [ + 'name' => 'ReportSendEnabled', + 'in' => 'query', + 'schema' => ['title' => '发送报告到邮箱和站内信', 'description' => '发送报告到邮箱和站内信', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], - ], - 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系中主盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '地域ID。您可以调用[DescribeRegions](~~2680071~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ReplicaPairId', + 'name' => 'Owner', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系的ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-cn-dsa****', - ], + 'schema' => ['description' => '基线责任人的阿里云uid。', 'type' => 'string', 'required' => false, 'example' => '1/0'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => 'LensResponse', + 'description' => 'LensResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'E604ABBF-FD0F-5080-BE2B-BCF674A9E941'], + 'Code' => ['description' => '状态码。返回200代表成功。', 'type' => 'string', 'example' => 'OK'], + 'UserCode' => ['description' => '状态码。', 'type' => 'string', 'example' => 'OK'], + 'Message' => ['description' => '附加信息。取值说明如下:请求正常,返回success。请求异常,返回具体异常错误码。', 'type' => 'string', 'example' => 'successful'], + 'Success' => ['description' => '创建应用是否成功。取值说明如下:true:创建成功。false:创建失败。', 'type' => 'boolean', 'example' => 'True'], + 'HttpStatusCode' => ['description' => '错误码描述', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], + 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => '200'], + 'DynamicMessage' => ['description' => '动态消息,暂无使用,请忽略', 'type' => 'string', 'example' => '-'], + 'AccessDeniedDetail' => ['description' => '访问被拒绝的详细原因。', 'type' => 'string', 'example' => 'None'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'app-bd5e3533'], + 'AppName' => ['description' => 'App名称。', 'type' => 'string', 'example' => 'TestApp_g5t'], ], ], ], ], '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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => '参数缺失。'], + ['errorCode' => 'App.NumberExceed', 'errorMessage' => 'The number of apps exceeded.', 'description' => 'app数量超过限制'], + ], 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDiskReplicaPairResponse>\\n <RequestId>A37597A6-BB99-19B3-85EA-4C2B91F0****</RequestId>\\n</DeleteDiskReplicaPairResponse>","errorExample":""}]', - 'title' => '删除云盘异步复制关系', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - ."\n" - .'- 当异步复制关系处于**已停止**(`stopped`)、**失效**(`invalid`)或者**故障切换完成**(`failovered`)状态时支持删除。删除异步复制时仅删除复制关系,主盘与从盘对应的云盘资源保留。'."\n" - ."\n" - .'- 必须在主盘所在地域进行删除操作,异步复制关系被删除后,主盘与从盘受限的功能将被解除。例如,从盘可以进行挂载、读写以及扩容等操作。', - ], - 'DescribeDiskReplicaPairs' => [ - 'summary' => '查询指定地域下,一个或多个异步复制关系的信息。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '创建App', + 'summary' => '中心化角色:创建App', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + 'product' => ['code' => 'disk', 'title' => '块存储'], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ebs:CreateApp', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', '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' => '调用CreateDedicatedBlockStorageCluster接口,并指定Azone、Capacity、Type、PeriodUnit等参数,创建专属块存储集群。', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'create', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '42727', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'chargeType' => 'paid', + 'abilityTreeCode' => '116777', + 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制关系中主盘或从盘所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['title' => '专属块存储集群所在的地域ID。您可以调用DescribeRegions'."\n" + .'查看最新的阿里云地域列表。', 'description' => '专属块存储集群所属地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan'], ], [ - 'name' => 'MaxResults', + 'name' => 'Azone', 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时每页的最大条目数。取值范围:1~500'."\n" - ."\n" - .'默认值:10', - 'description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" - ."\n" - .'取值范围:1~500。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['title' => '专属块存储集群所在的可用区ID。您可以调用DescribeZones'."\n" + .'查看阿里云地域下的可用区。', 'description' => '专属块存储集群所属可用区ID。您可以调用[DescribeZones](~~25610~~)获取可用区列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan-b'], ], [ - 'name' => 'NextToken', + 'name' => 'DbscName', 'in' => 'query', - 'schema' => [ - 'title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdDWBF2****', - ], + 'schema' => ['title' => '专属集群名称', 'description' => '专属块存储集群名称。', 'type' => 'string', 'required' => true, 'example' => 'myDBSCCluster'], ], [ - 'name' => 'PairIds', + 'name' => 'Capacity', 'in' => 'query', - 'schema' => [ - 'title' => '异步复制关系ID列表。您可以指定一个或多个异步复制关系ID进行查询。格式为:pair-cn-dsa****,pair-cn-asd****。'."\n" - ."\n" - .'默认值为空,表示查询当前地域下所有的异步复制关系。', - 'description' => '异步复制关系ID列表。您可以指定一个或多个异步复制关系ID进行查询。格式为:`pair-cn-dsa****,pair-cn-asd****`。'."\n" - ."\n" - .'默认值为空,表示查询当前地域下所有的异步复制关系。最多允许填写100个复制关系ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'pair-cn-dsa****', - ], + 'schema' => ['title' => '专属集群容量,单位为GiB,范围为[61440, 2334720],最小递增步长为12288GiB', 'description' => '专属块存储集群的容量。取值范围为61440~2334720GiB(2280 TiB),最小递增步长为12288 GiB。'."\n" + ."\n" + .'> 当专属块存储集群的容量小于576 TiB时,每TiB支持的最大吞吐量性能不超过52 MB/s。当专属块存储集群的容量大于576 TiB时,每TiB支持的最大吞吐量性能不超过26 MB/s。'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'maximum' => '2334720', 'minimum' => '61440', 'example' => '61440'], ], [ - 'name' => 'Site', + 'name' => 'Type', 'in' => 'query', 'schema' => [ - 'title' => 'production或backup,表示获取本地为生产站点或灾备站点的复制对数据,默认为production。', - 'description' => '获取本Region为生产站点或灾备站点的复制对数据。取值范围:'."\n" - ."\n" - .'- production:生产站点。'."\n" - ."\n" - .'- backup:灾备站点。'."\n" + 'title' => '专属块存储集群性能类型。可能值:'."\n" + .'Standard:基础型。该类型的专属块存储集群中可创建ESSD PL0云盘。'."\n" + .'Premium:性能型。该类型的专属块存储集群中可创建ESSD PL1云盘。', + 'description' => '专属块存储集群性能类型。取值范围:'."\n" ."\n" - .'默认值:production。', - 'type' => 'string', - 'required' => false, - 'example' => 'production', - ], - ], - [ - 'name' => 'ReplicaGroupId', - 'in' => 'query', - 'schema' => [ - 'title' => '所属复制组id。', - 'description' => '一致性复制组ID,您可以指定一个一致性复制组ID来查询组内的复制对。格式为:`pg-****`。'."\n" + .'- Standard:基础型。该类型的专属块存储集群中可创建ESSD PL0云盘。'."\n" + .'- Premium:性能型。该类型的专属块存储集群中可创建ESSD PL1云盘。'."\n" ."\n" - .'默认值为空,表示查询当前地域下所有的异步复制关系。'."\n" + .'默认值:Premium。'."\n" ."\n" - .'> 当该参数为`-`时,返回不在任何一致性组中的复制对。', + .'关于ESSD云盘的更多信息,请参见[ESSD云盘](~~122389~~)。', 'type' => 'string', - 'required' => false, - 'example' => 'pg-****', - ], - ], - [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时的页码。', - 'description' => '分页查询时的页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - ], - ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时设置的每页行数。', - 'description' => '分页查询时设置的每页行数。'."\n" - .'取值范围1-100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', + 'required' => true, + 'example' => 'Premium', + 'enum' => ['Standard', 'Premium', 'Elastic'], ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制对所在的企业资源组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmvs******', - ], - ], - [ - 'name' => 'Name', - 'in' => 'query', - 'schema' => [ - 'title' => '复制对名称,支持模糊搜索。', - 'description' => '复制对名称,支持模糊搜索。', - 'type' => 'string', - 'required' => false, - 'example' => 'name***', - ], + 'schema' => ['title' => '专属集群所在的企业资源组ID。', 'description' => '专属块存储集群所在的企业资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs*******'], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'title' => '标签列表,最多包含20个子项', 'description' => '标签列表,最多包含20个子项。', 'type' => 'array', 'items' => [ - 'description' => '标签信息。', 'type' => 'object', 'properties' => [ - 'Value' => [ - 'title' => '异步复制对的标签值', - 'description' => '异步复制对的标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestValue', - ], - 'Key' => [ - 'title' => '异步复制对的标签键', - 'description' => '异步复制对的标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestKey', - ], + 'Key' => ['description' => '专属块存储集群的标签键。', 'type' => 'string', 'required' => true, 'example' => 'tag-key'], + 'Value' => ['description' => '专属块存储集群的标签值。', 'type' => 'string', 'required' => true, 'example' => 'tag-value'], ], 'required' => false, + 'description' => '', ], 'required' => false, - 'maxItems' => 21, - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****', - ], - 'NextToken' => [ - 'title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'description' => '本次调用返回的查询凭证(Token)。', - 'type' => 'string', - 'example' => 'AAAAAdDWBF2****', - ], - 'ReplicaPairs' => [ - 'description' => '异步复制关系的信息组成的集合。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Site' => [ - 'title' => '复制对信息的后端站点来源,production或backup。', - 'description' => '复制对和一致性复制组的站点信息来源。可能值:'."\n" - ."\n" - .'- production:生产站点。'."\n" - ."\n" - .'- backup:灾备站点。', - 'type' => 'string', - 'example' => 'production', - ], - 'DestinationDiskId' => [ - 'description' => '目标云盘(从盘)的云盘ID。', - 'type' => 'string', - 'example' => 'd-asdfjl2342kj2l3k4****', - ], - 'Description' => [ - 'description' => '异步复制关系的描述信息。', - 'type' => 'string', - 'example' => 'This is description.', - ], - 'StandbyZone' => [ - 'title' => '复制对的初始目的可用区。', - 'description' => '异步复制关系的初始目的可用区。', - 'type' => 'string', - 'example' => 'cn-shanghai-b', - ], - 'ResourceGroupId' => [ - 'title' => '异步复制对所在的企业资源组ID。', - 'description' => '异步复制对所在的企业资源组ID。', - 'type' => 'string', - 'example' => 'rg-acfmvs*****', - ], - 'DestinationRegion' => [ - 'description' => '目标云盘(从盘)所属的地域信息。', - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'ReplicaPairId' => [ - 'description' => '异步复制关系的ID。', - 'type' => 'string', - 'example' => 'pair-cn-dsa****', - ], - 'LastRecoverPoint' => [ - 'title' => '最近一次异步复制操作完成的时间。该参数以时间戳的形式提供返回值。单位为秒。', - 'description' => '异步复制关系最近一次异步复制操作完成的时间。该参数以时间戳的形式提供返回值。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1649751977', - ], - 'ReplicaGroupId' => [ - 'title' => '所属复制组id。', - 'description' => '所属的一致性复制组ID。', - 'type' => 'string', - 'example' => 'pg-xxxx****', - ], - 'SourceDiskId' => [ - 'description' => '源云盘(主盘)的云盘ID。', - 'type' => 'string', - 'example' => 'd-bp131n0q38u3a4zi****', - ], - 'RPO' => [ - 'title' => '复制对的RPO值。单位为秒。', - 'description' => '复制对的RPO值。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '900', - ], - 'PairName' => [ - 'description' => '异步复制关系的名称。', - 'type' => 'string', - 'example' => 'TestReplicaPair', - ], - 'Bandwidth' => [ - 'title' => '异步复制时使用的带宽。单位为Kbps。', - 'description' => '异步复制时使用的带宽。单位:Kbps。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10240', - ], - 'ExpiredTime' => [ - 'description' => '异步复制关系的过期时间。该参数以时间戳的形式提供返回值。单位:秒。'."\n" - ."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1649750977', - ], - 'PrimaryZone' => [ - 'title' => '复制对的初始源可用区。', - 'description' => '异步复制关系的初始源可用区。', - 'type' => 'string', - 'example' => 'cn-beijing-a', - ], - 'SourceZoneId' => [ - 'title' => '主盘所属的可用区。', - 'description' => '主盘所属的可用区。', - 'type' => 'string', - 'example' => 'cn-beijing-a', - ], - 'Tags' => [ - 'title' => '异步复制对的标签', - 'description' => '异步复制对的标签。', - 'type' => 'array', - 'items' => [ - 'description' => '标签信息。', - 'type' => 'object', - 'properties' => [ - 'TagKey' => [ - 'title' => '异步复制对的标签键', - 'description' => '异步复制对的标签键。', - 'type' => 'string', - 'example' => 'testKey', - ], - 'TagValue' => [ - 'title' => '异步复制对的标签值', - 'description' => '异步复制对的标签值。', - 'type' => 'string', - 'example' => 'testValue', - ], - ], - ], - ], - 'Status' => [ - 'title' => '异步复制关系的状态。可能值:'."\n" - ."\n" - .'- invalid:失效。该状态表示异步复制关系存在异常。'."\n" - .'- creating:创建中。'."\n" - .'- created:已创建。'."\n" - .'- create_failed:创建失败。'."\n" - .'- initial_syncing:初始同步中。异步复制在创建并启动后,主盘数据初次异步复制到从盘的过程中,将处于该状态。'."\n" - .'- syncing:同步中。主盘和从盘之间非第一次进行异步复制数据时,将处于该状态。'."\n" - .'- manual_syncing:单次同步中。单次同步,同步完成后恢复到stopped状态。如果是第一次单次同步,则同步中也显示为状态manual_syncing。'."\n" - .'- normal:正常。当异步复制的当前周期内数据复制完成时,将处于该状态。'."\n" - .'- stopping:停止中。'."\n" - .'- stopped:已停止。'."\n" - .'- stop_failed:停止失败。'."\n" - .'- failovering:故障切换中。'."\n" - .'- failovered:故障切换完成。'."\n" - .'- failover_failed:故障切换失败。'."\n" - .'- reprotecting:反向复制操作中。'."\n" - .'- reprotect_failed:反向复制失败。'."\n" - .'- deleting:删除中。'."\n" - .'- delete_failed:删除失败。'."\n" - .'- deleted:已删除。', - 'description' => '异步复制关系的状态。可能值:'."\n" - ."\n" - .'- invalid:失效。该状态表示异步复制关系存在异常。'."\n" - .'- creating:创建中。'."\n" - .'- created:已创建。'."\n" - .'- create_failed:创建失败。'."\n" - .'- initial_syncing:初始同步中。异步复制在创建并启动后,主盘数据初次异步复制到从盘的过程中,将处于该状态。'."\n" - .'- manual\\_syncing:手动同步中。手动同步,同步完成后恢复到stopped状态。如果是第一次单次同步,则同步中也显示为状态manual_syncing。'."\n" - .'- syncing:同步中。主盘和从盘之间非第一次进行异步复制数据时,将处于该状态。'."\n" - .'- normal:正常。当异步复制的当前周期内数据复制完成时,将处于该状态。'."\n" - .'- stopping:停止中。'."\n" - .'- stopped:已停止。'."\n" - .'- stop_failed:停止失败。'."\n" - .'- failovering:故障切换中。'."\n" - .'- failovered:故障切换完成。'."\n" - .'- failover_failed:故障切换失败。'."\n" - .'- reprotecting:反向复制操作中。'."\n" - .'- reprotect_failed:反向复制失败。'."\n" - .'- deleting:删除中。'."\n" - .'- delete_failed:删除失败。'."\n" - .'- deleted:已删除。', - 'type' => 'string', - 'example' => 'created', - ], - 'PrimaryRegion' => [ - 'title' => '复制对的初始源地域。', - 'description' => '异步复制关系的初始源地域。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'CreateTime' => [ - 'title' => '创建时间。1970年1月1日0点0分以来的秒数。', - 'description' => '创建时间。该参数以时间戳的形式提供返回值。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1649750977', - ], - 'SourceRegion' => [ - 'description' => '源云盘(主盘)所属的地域信息。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'StatusMessage' => [ - 'title' => '复制对的状态提示信息。比如invalid时,可能值:DeviceRemoved:主盘或者从盘被删除。DeviceKeyChanged:主盘或从盘的DeviceKey映射发生变化。', - 'description' => '异步复制关系的状态提示信息。当`Status=invalid`或`Status=create_failed`时,该参数有返回值。可能值:'."\n" - ."\n" - .'- PrePayOrderExpired:包年包月的异步复制关系已过期。'."\n" - .'- PostPayOrderCeaseService:按量付费的异步复制关系停止服务,一般是由于用户欠费引起。'."\n" - .'- DeviceRemoved:主盘或者从盘被删除。'."\n" - .'- DeviceKeyChanged:主盘或从盘的`DeviceKey`映射发生变化。'."\n" - .'- DeviceSizeChanged:主盘或从盘的`DeviceSize`发生变化。'."\n" - .'- OperationDenied.QuotaExceed:创建复制对数量超过规格。', - 'type' => 'string', - 'example' => 'PrePayOrderExpired', - ], - 'EnableRtc' => [ - 'title' => 'RTC开关。', - 'description' => '是否开启复制时间控制(RTC)。可能值:'."\n" - ."\n" - .'- false:关闭。'."\n" - .'- true:开启。'."\n" - ."\n" - .'> 若复制对已加入复制组,则与复制组的属性保持一致。', - 'type' => 'boolean', - ], - 'ChargeType' => [ - 'title' => '付费类型。PREPAY:预付费;POSTPAY:后付费。', - 'description' => '异步复制关系的付费方式。'."\n" - .'可能值:'."\n" - .'- PREPAY:包年包月。'."\n" - .'- POSTPAY:按量付费。', - 'type' => 'string', - 'example' => 'PREPAY', - ], - 'DestinationZoneId' => [ - 'title' => '从盘所属的可用区。', - 'description' => '从盘所属的可用区。', - 'type' => 'string', - 'example' => 'cn-shanghai-b', - ], - 'ReplicaGroupName' => [ - 'title' => '所属复制组名称。', - 'description' => '所属的一致性复制组名称。', - 'type' => 'string', - 'example' => 'pg-name****', - ], - 'StandbyRegion' => [ - 'title' => '复制对的初始目的地域。', - 'description' => '异步复制关系的初始目的地域。', - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - ], - ], - ], - 'PageNumber' => [ - 'title' => '参数页码。', - 'description' => '分页查询时的页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'title' => '参数页行数。', - 'description' => '分页查询时设置的每页行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'title' => '分页查询时的结果总条数。', - 'description' => '分页查询时的结果总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '60', - ], - ], - ], - ], - ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - ], - [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], - ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', - ], - ], - ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], - ], - 'responseDemo' => '[{"type":"json","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\\": true,\\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}","errorExample":""},{"type":"xml","example":"<DescribeDiskReplicaPairsResponse>\\n <RequestId>AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****</RequestId>\\n <NextToken>AAAAAdDWBF2****</NextToken>\\n <ReplicaPairs>\\n <ReplicaPairId>pair-cn-dsa****</ReplicaPairId>\\n <SourceRegion>cn-beijing</SourceRegion>\\n <SourceZoneId>cn-beijing-a</SourceZoneId>\\n <SourceDiskId>d-bp131n0q38u3a4zi****</SourceDiskId>\\n <DestinationRegion>cn-shanghai</DestinationRegion>\\n <DestinationZoneId>cn-shanghai-b</DestinationZoneId>\\n <DestinationDiskId>d-asdfjl2342kj2l3k4****</DestinationDiskId>\\n <PairName>TestReplicaPair</PairName>\\n <Description>This is description.</Description>\\n <Status>created</Status>\\n <RPO>900</RPO>\\n <Bandwidth>10240</Bandwidth>\\n <StatusMessage>PrePayOrderExpired</StatusMessage>\\n <LastRecoverPoint>1649751977</LastRecoverPoint>\\n <ReplicaGroupId>pg-xxxx****</ReplicaGroupId>\\n <CreateTime>1649750977</CreateTime>\\n <ReplicaGroupName>pg-name****</ReplicaGroupName>\\n <Site>production</Site>\\n <PrimaryRegion>cn-beijing</PrimaryRegion>\\n <StandbyRegion>cn-shanghai</StandbyRegion>\\n <PrimaryZone>cn-beijing-a</PrimaryZone>\\n <StandbyZone>cn-shanghai-b</StandbyZone>\\n <ChargeType>PREPAY</ChargeType>\\n <ExpiredTime>1649750977</ExpiredTime>\\n <ResourceGroupId>rg-acfmvs*****</ResourceGroupId>\\n <Tags>\\n <TagKey>testKey</TagKey>\\n <TagValue>testValue</TagValue>\\n </Tags>\\n </ReplicaPairs>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>60</TotalCount>\\n</DescribeDiskReplicaPairsResponse>","errorExample":""}]', - 'title' => '查询一个或多个异步复制关系', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - ."\n" - .'- 当您指定某一地域进行查询后,如果异步复制关系中主盘或者从盘属于该地域,则查询结果中将包含该异步复制关系的信息。'."\n" - ."\n" - .'- 当您需要分页查询时,请使用`MaxResults`与`NextToken`参数进行查询。具体使用说明:分页查询首页时,设置`MaxResults`以限制返回信息的条目数,返回结果中的NextToken将作为查询后续页的凭证。查询后续页时,将NextToken参数设置为上一次返回结果中获取到的NextToken作为查询凭证,并设置MaxResults限制返回条目数。', - ], - 'RemoveDiskReplicaPair' => [ - 'summary' => '移除一致性复制组中的复制对。移除复制对只是解除了复制对和一致性复制组的绑定关系,不会删除复制对。', - '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' => '一致性复制组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', + 'maxItems' => 10, ], ], [ - 'name' => 'ReplicaGroupId', + 'name' => 'Period', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组ID。'."\n" - ."\n" - .'您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-myreplica****', - ], + 'schema' => ['description' => '指定实例购买时长。取值范围:6、7、8、9、10、11、12、24、36。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12'], ], [ - 'name' => 'ReplicaPairId', + 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => [ - 'description' => '复制对ID。', + 'title' => '目前仅支持Month', + 'description' => '包年包月时长的时间单位,即参数`Period`的单位,目前仅支持Month。', 'type' => 'string', - 'required' => true, - 'example' => 'pair-cn-dsa****', + 'required' => false, + 'example' => 'Month', + 'enum' => ['Month'], ], ], [ - 'name' => 'ClientToken', + 'name' => 'DbscId', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'allowEmptyValue' => true, + 'schema' => ['description' => '该参数已废弃。', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'test1233'], ], ], 'responses' => [ @@ -2675,707 +998,204 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '20758A-585D-4A41-A9B2-28DA8F4F****'], + 'OrderId' => ['title' => 'Id of the order', 'description' => '订单ID。', 'type' => 'string', 'example' => '50155660025****'], + 'DbscId' => ['title' => 'Id of the dbsc', 'description' => '专属块存储集群ID。', 'type' => 'string', 'example' => 'dbsc-f8z4d3k4nsgg9okb****'], ], ], ], ], 'errorCodes' => [ + 400 => [ + ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => '参数错误'], + ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => '参数缺失。'], + ], 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.GroupStatusCannotRemovePair', - 'errorMessage' => 'The pair cannot be removed in group current status.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.NoPairInGroup', - 'errorMessage' => 'The operation is not allowed because no pair in the group.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupAZoneConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupStatusConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', - ], - [ - 'errorCode' => 'OperationDenied.PairInAnotherGroup', - 'errorMessage' => 'The operation is not allowed because pair is already in another group.', - ], - [ - 'errorCode' => 'OperationDenied.PairNotInGroup', - 'errorMessage' => 'The operation is not allowed because pair is not in any group.', - ], - [ - 'errorCode' => 'OperationDenied.PairStatusCannotRemoveFromGroup', - 'errorMessage' => 'The pair cannot be removed in pair current status.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => 'InvalidPayMethod', 'errorMessage' => 'The specified pay method is not valid.', 'description' => '不支持该购买方式。请检查您传入的参数chargeType是否正确。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], ], [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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' => '指定的RegionId不存在。'], + ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceIds are not found in our records.', 'description' => '指定的资源不存在,请检查参数ResourceId是否正确。'], + ['errorCode' => 'MissingParameter.ResourceType', 'errorMessage' => 'The parameter - ResourceType should not be null', 'description' => '参数ResourceType不能为空。'], + ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', '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.', - ], + ['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.', - ], + ['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":"<RemoveDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</RemoveDiskReplicaPairResponse>","errorExample":""}]', - 'title' => '移除一致性复制组中的复制对', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"20758A-585D-4A41-A9B2-28DA8F4F****\\",\\n \\"OrderId\\": \\"50155660025****\\",\\n \\"DbscId\\": \\"dbsc-f8z4d3k4nsgg9okb****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDedicatedBlockStorageClusterResponse>\\n <RequestId>20758A-585D-4A41-A9B2-28DA8F4F****</RequestId>\\n <OrderId>50155660025****</OrderId>\\n <DbscId>dbsc-f8z4d3k4nsgg9okb****</DbscId>\\n</CreateDedicatedBlockStorageClusterResponse>","errorExample":""}]', + 'gatewayOptions' => [ + 'gatewayProtocols' => [], + ], + 'title' => '创建专属块存储集群', 'description' => '## 接口说明'."\n" ."\n" - .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + .'- 专属块存储集群(Dedicated Block Storage Cluster)是与其他公共云块存储集群物理隔离、所有者可独享整个集群资源的块存储服务。<props="china">更多信息,请参见[什么是专属块存储集群](~~208883~~)。</props>'."\n" ."\n" - .'- 一致性复制组必须处于**已创建**(`created`)、**已停止**(`stopped`)或者**失效**(`invalid`)状态。', - ], - 'DescribePairDrills' => [ - 'summary' => '该接口用于查询当前地域的盘作为复制对从端时,曾经对复制对所启动的容灾演练。', - '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' => '异步复制对中主盘或从盘所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'DrillId', - 'in' => 'query', - 'schema' => [ - 'title' => '演练ID。', - 'description' => '演练ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'drill-xxxx', - ], - ], - [ - 'name' => 'PairId', - 'in' => 'query', - 'schema' => [ - 'title' => '复制对ID。', - 'description' => '复制对ID。您可以通过[DescribeDiskReplicaPairs](~~354206~~)接口查询异步复制对列表,获得复制对ID入参的值。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-xxxx', - ], - ], - [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时每页的最大条目数。取值范围:1~500'."\n" - ."\n" - .'默认值:10', - 'description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" - ."\n" - .'取值范围:1~500。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '10', - ], - ], - [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdDWBF2****', - ], - ], - [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时的页码。', - 'description' => '分页查询时的页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时设置的每页行数。', - 'description' => '分页查询时设置的每页行数。 取值范围1-100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'DescribePairDrillResponse', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'Drills' => [ - 'description' => '复制对容灾演练的信息组成的集合。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'DrillId' => [ - 'title' => '演练ID', - 'description' => '演练ID。', - 'type' => 'string', - 'example' => 'drill-xxx', - ], - 'Status' => [ - 'title' => '演练状态', - 'description' => '演练状态。可能值:'."\n" - .'- execute_failed:执行失败。'."\n" - .'- executed:已执行。'."\n" - .'- executing:执行中。'."\n" - .'- clear_failed:清理失败。'."\n" - .'- clearing:清理中。', - 'type' => 'string', - 'enumValueTitles' => [], - 'example' => 'executing', - ], - 'DrillDiskId' => [ - 'title' => '演练盘ID', - 'description' => '演练盘ID。', - 'type' => 'string', - 'example' => 'd-xxx', - ], - 'DrillDiskStatus' => [ - 'title' => '演练盘状态', - 'description' => '演练盘状态,可能值:'."\n" - .'- created:已创建。'."\n" - .'- deleted:已删除。'."\n" - .'- creating:创建中。'."\n" - .'- deleting:删除中。'."\n" - ."\n" - .'> 除演练盘状态外,还可以展示演练盘创建或删除失败的错误码详情。', - 'type' => 'string', - 'enumValueTitles' => [], - 'example' => 'created', - ], - 'StartAt' => [ - 'title' => '启动时间', - 'description' => '演练启动时间。该参数以时间戳的形式提供返回值。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1690855888', - ], - 'RecoverPoint' => [ - 'title' => '该演练对应的恢复点。', - 'description' => '该演练对应的恢复点。该参数以时间戳的形式提供返回值。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1690855931', - ], - 'StatusMessage' => [ - 'title' => '任务执行失败的错误提示信息。', - 'description' => '任务执行失败的错误提示信息。', - 'type' => 'string', - 'example' => 'PAIR_SYNCPOINT_NOT_FOUND', - ], - ], - ], - ], - 'NextToken' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '本次调用返回的查询凭证(Token)。', - 'type' => 'string', - 'example' => 'AAAAAdDWBF2****', - ], - 'PageNumber' => [ - 'title' => '分页模式查询时的页数。', - 'description' => '分页模式查询时的页数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'title' => '分页模式查询时的单页记录数量。', - 'description' => '分页模式查询时的单页记录数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'title' => '总个数', - 'description' => '分页查询时的结果总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C46FF5A8-C5F0-4024-8262-B16B6392****', - ], + .'- 专属块存储集群上创建的云盘只能挂载到同可用区的ECS实例上。您在创建专属块存储集群前,需要规划好资源所属的地域和可用区。'."\n" + ."\n" + .'- 专属块存储集群分为基础型和性能型,您在创建集群时,请根据实际需求选择适用的集群性能类型。'."\n" + ."\n" + .'- 创建专属块存储集群需要支付一定的费用。<props="china">更多信息,请参见[计费说明](~~208884~~)。</props>', + 'changeSet' => [ + ['createdAt' => '2023-06-26T09:01:29.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-05-17T03:57:02.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-04-06T09:57:07.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-31T03:01:55.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-12-08T03:24:31.000Z', 'description' => '错误码发生变更、请求参数发生变更'], + ], + '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/*'], ], ], - ], - ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - ], - 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - ], - [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], - ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', + 'additionalActions' => [ + ['action' => 'ram:CreateServiceLinkedRole', 'validationType' => 'always'], ], ], ], - '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 \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"C46FF5A8-C5F0-4024-8262-B16B6392****\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribePairDrillsResponse>\\n <Drills>\\n <DrillId>drill-xxx</DrillId>\\n <Status>executing</Status>\\n <DrillDiskId>d-xxx</DrillDiskId>\\n <DrillDiskStatus>created</DrillDiskStatus>\\n <StartAt>1690855888</StartAt>\\n <RecoverPoint>1690855931</RecoverPoint>\\n <StatusMessage>PAIR_SYNCPOINT_NOT_FOUND</StatusMessage>\\n </Drills>\\n <NextToken>AAAAAdDWBF2****</NextToken>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>1</TotalCount>\\n <RequestId>C46FF5A8-C5F0-4024-8262-B16B6392****</RequestId>\\n</DescribePairDrillsResponse>","errorExample":""}]', - 'title' => '查询复制对当前的容灾演练', ], - 'StartPairDrill' => [ - 'summary' => '您可以通过演练切换功能确保复制流程持续运行,同时将从盘最近恢复点的数据克隆至一块新的云盘,定期验证容灾站点应用的完整性和正确性。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateDiagnoseReport' => [ + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', - 'abilityTreeCode' => '186458', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'abilityTreeCode' => '227401', + 'abilityTreeNodes' => ['FEATUREdisk2F270T'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'DiagnoseType', 'in' => 'query', - 'schema' => [ - 'description' => '异步复制对中从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制对的当前从盘所属地域。'."\n" - ."\n" - .'> 必须在当前从端所属地域下启用容灾演练功能。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '诊断类型', 'description' => '诊断类型,可选的有:'."\n" + ."\n" + .'- Performance:性能诊断', 'type' => 'string', 'required' => true, 'example' => 'Performance'], ], [ - 'name' => 'PairId', + 'name' => 'ResourceId', 'in' => 'query', - 'schema' => [ - 'title' => '复制对ID。', - 'description' => '复制对ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制对列表,获得复制对ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-xxxx', - ], + 'schema' => ['title' => '资源ID', 'description' => '资源ID。', 'type' => 'string', 'required' => false, 'example' => 'd-asb1s8***'], ], [ - 'name' => 'ClientToken', + 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'StartPairDrillResponse', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'DrillId' => [ - 'title' => '演练ID。', - 'description' => '演练ID。', - 'type' => 'string', - 'example' => 'drill-xxx', - ], - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], - ], - ], - ], - ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - ], - 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.RecoverPointNotFound', - 'errorMessage' => 'Recover point is not found.', - ], - [ - 'errorCode' => 'OperationDenied.StartDrillShouldOnDestRegion', - 'errorMessage' => 'Operation should be executed on the secondary region.', - ], + 'schema' => ['title' => '资源类型', 'description' => '资源类型。当前可选的有:'."\n" + ."\n" + .'- Disk', 'type' => 'string', 'required' => false, 'example' => 'Disk'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], - ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', - ], - ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"DrillId\\": \\"drill-xxx\\",\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<StartPairDrillResponse>\\n <DrillId>drill-xxx</DrillId>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</StartPairDrillResponse>","errorExample":""}]', - 'title' => '对异步复制对的从盘启动容灾演练', - 'description' => '从盘容灾演练任务完成后,会在从盘所在可用区创建一块与从盘类型及大小相同的云盘,称之为演练盘,该云盘是按量付费模式,持有最近恢复点的数据,可用于验证应用的完整性和正确性。', - ], - 'ClearPairDrill' => [ - 'summary' => '该接口可以清理之前复制对从盘启动的容灾演练,并尝试删除自动创建出来的演练盘。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '186459', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => ['title' => '开始时间', 'description' => '开始时间。按照ISO 8601标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', 'type' => 'string', 'required' => false, 'example' => '2024-09-01T02:26:00Z'], ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'EndTime', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '结束时间', 'description' => '结束时间。按照ISO 8601标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', 'type' => 'string', 'required' => false, 'example' => '2024-09-07T16:49:25Z'], ], [ - 'name' => 'PairId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '复制对ID。', - 'description' => '复制对ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制对列表,获得复制对ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-xxxx', - ], + 'schema' => ['description' => '地域ID。您可以调用[DescribeRegions](https://help.aliyun.com/zh/ecs/developer-reference/api-ebs-2021-07-30-describeregions?spm=a2c4g.11186623.0.i7)查询块存储数据洞察支持的地域列表。', 'type' => 'string', 'required' => false, 'example' => 'cn-zhangjiakou'], ], [ - 'name' => 'DrillId', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '演练ID。', - 'description' => '演练ID。您可以通过[DescribePairDrills](~~2584480~~)接口查询当前地域下复制对的容灾演练。', - 'type' => 'string', - 'required' => true, - 'example' => 'drill-xxxx', - ], + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Response', - 'description' => 'Schema of Response', + 'title' => 'CreateDiagnoseReportResponse', + 'description' => 'CreateDiagnoseReportResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '20758A-585D-4A41-A9B2-28DA8F4F****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'ReportId' => ['description' => '诊断报告ID,资源诊断报告的唯一标志。', 'type' => 'string', 'example' => 'report-qe2s****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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":"<ClearPairDrillResponse>\\n <RequestId>20758A-585D-4A41-A9B2-28DA8F4F****</RequestId>\\n</ClearPairDrillResponse>","errorExample":""}]', - 'title' => '清理异步复制对的容灾演练', + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'title' => '创建资源诊断报告', + 'summary' => '触发诊断', + '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' => '创建一个一致性复制组。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -3387,83 +1207,43 @@ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组所属的地域ID,与生产站点所属的地域相同。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '一致性复制组所属的地域ID,与生产站点所属的地域相同。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ 'name' => 'SourceZoneId', 'in' => 'query', - 'schema' => [ - 'description' => '生产站点所属的可用区ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing-f', - ], + 'schema' => ['description' => '生产站点所属的可用区ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing-f'], ], [ 'name' => 'DestinationRegionId', 'in' => 'query', - 'schema' => [ - 'description' => '灾备站点所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '灾备站点所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ 'name' => 'DestinationZoneId', 'in' => 'query', - 'schema' => [ - 'description' => '灾备站点所属的可用区ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai-e', - ], + 'schema' => ['description' => '灾备站点所属的可用区ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai-e'], ], [ 'name' => 'GroupName', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组的名称。长度为2~128个英文或中文字符。必须以大小写字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'myreplicagrouptest', - 'maxLength' => 128, - 'minLength' => 2, - ], + 'schema' => ['description' => '一致性复制组的名称。长度为2~128个英文或中文字符。必须以大小写字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。'."\n", 'type' => 'string', 'required' => false, 'example' => 'myreplicagrouptest', 'maxLength' => 128, 'minLength' => 2], ], [ 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => '一致性组的描述信息。长度为2~256个英文或中文字符,不能以`http:/`/或`https://`开头。', - 'type' => 'string', - 'required' => false, - 'example' => 'This is description.', - ], + 'schema' => ['description' => '一致性组的描述信息。长度为2~256个英文或中文字符,不能以`http:/`/或`https://`开头。', 'type' => 'string', 'required' => false, 'example' => 'This is description.'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ 'name' => 'RPO', @@ -3473,34 +1253,20 @@ 'type' => 'integer', 'format' => 'int64', 'required' => false, - 'enumValueTitles' => [ - 900 => '900', - ], + 'enumValueTitles' => [900 => '900'], 'example' => '900', ], ], [ 'name' => 'Bandwidth', 'in' => 'query', - 'schema' => [ - 'title' => '带宽值,单位为Kbps。公共云暂不支持。', - 'description' => '带宽值,单位:Kbps。'."\n" - .'>该参数暂未开放使用。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '5', - ], + 'schema' => ['title' => '带宽值,单位为Kbps。公共云暂不支持。', 'description' => '带宽值,单位:Kbps。'."\n" + .'>该参数暂未开放使用。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '5'], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组所在的企业资源组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmvs*******', - ], + 'schema' => ['description' => '一致性复制组所在的企业资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs*******'], ], [ 'name' => 'Tag', @@ -3513,22 +1279,11 @@ 'items' => [ 'type' => 'object', 'properties' => [ - 'Value' => [ - 'title' => '异步复制对的标签值', - 'description' => '一致性复制组的标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag-value', - ], - 'Key' => [ - 'title' => '异步复制对的标签键', - 'description' => '一致性复制组的标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag-key', - ], + 'Value' => ['title' => '异步复制对的标签值', 'description' => '一致性复制组的标签值。', 'type' => 'string', 'required' => false, 'example' => 'tag-value'], + 'Key' => ['title' => '异步复制对的标签键', 'description' => '一致性复制组的标签键。', 'type' => 'string', 'required' => false, 'example' => 'tag-key'], ], 'required' => false, + 'description' => '', ], 'required' => false, 'maxItems' => 21, @@ -3537,20 +1292,14 @@ [ 'name' => 'EnableRtc', 'in' => 'query', - 'schema' => [ - 'title' => '是否开启RTC。默认关闭。', - 'description' => '是否开启复制时间控制(RTC)。取值范围:'."\n" - ."\n" - .'- false:关闭。'."\n" - .'- true:开启。'."\n" - ."\n" - .'默认值:false。'."\n" - ."\n" - .'> 如果设置为ture,表示一致性组开启复制时间控制(RTC),加入该一致性组的异步复制对均开启RTC。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['title' => '是否开启RTC。默认关闭。', 'description' => '是否开启复制时间控制(RTC)。取值范围:'."\n" + ."\n" + .'- false:关闭。'."\n" + .'- true:开启。'."\n" + ."\n" + .'默认值:false。'."\n" + ."\n" + .'> 如果设置为ture,表示一致性组开启复制时间控制(RTC),加入该一致性组的异步复制对均开启RTC。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ @@ -3560,64 +1309,29 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], - 'ReplicaGroupId' => [ - 'description' => '一致性复制组ID。', - 'type' => 'string', - 'example' => 'pg-xxxxxxx', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], + 'ReplicaGroupId' => ['description' => '一致性复制组ID。', 'type' => 'string', 'example' => 'pg-xxxxxxx'], ], ], ], ], 'errorCodes' => [ 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.QuotaExceed', - 'errorMessage' => 'The operation is not allowed due to quota exceed.', - ], - [ - 'errorCode' => 'OperationDenied.TooMuchEmptyGroup', - 'errorMessage' => 'Operation failed because of too many empty groups.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => '当前状态下该操作不允许执行。'], + ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The operation is not allowed due to quota exceed.', 'description' => '当前操作已超过使用配额。'], + ['errorCode' => 'OperationDenied.TooMuchEmptyGroup', 'errorMessage' => 'Operation failed because of too many empty groups.', '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.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ @@ -3639,145 +1353,138 @@ .'- 只有复制对与一致性复制组的数据复制方向相同(即生产地域、生产可用区、容灾地域、容灾可用区分别相同)时,才能将复制对加入到该一致性复制组中。'."\n" ."\n" .'- 将复制对加入到一致性复制组后,复制对原有的RPO(Recovery Point Object)会失效,并按照一致性复制组的RPO进行复制。', - ], - 'DescribeDiskReplicaGroups' => [ - 'summary' => '查询在指定地域下,一个或多个一致性复制组的信息。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [ + ['createdAt' => '2025-07-07T11:22:38.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-03-08T11:10:44.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-01-03T02:17:05.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-08-16T11:40:00.000Z', 'description' => '请求参数发生变更'], + ], + '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' => '创建一个云盘异步复制关系。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', + 'operationType' => 'create', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '115793', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'chargeType' => 'paid', + 'abilityTreeCode' => '42802', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '异步复制关系所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'MaxResults', + 'name' => 'SourceZoneId', 'in' => 'query', - 'schema' => [ - 'description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" - ."\n" - .'取值范围:1~500。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '源云盘(主盘)所属的可用区ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing-f'], ], [ - 'name' => 'NextToken', + 'name' => 'DiskId', 'in' => 'query', - 'schema' => [ - 'title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdDWBF2****', - ], + 'schema' => ['description' => '源云盘(主盘)的云盘ID。', 'type' => 'string', 'required' => true, 'example' => 'd-iq80sgp4d0xbk24q****'], ], [ - 'name' => 'GroupIds', + 'name' => 'DestinationRegionId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组的ID列表。您可以指定一个或多个一致性复制组的ID进行查询。多个一致性复制组的ID之间用半角逗号(,)分隔。'."\n" - ."\n" - .'默认值为空,表示查询当前地域下所有的一致性复制组。最多允许填写100个复制组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdDWBF2****', - ], + 'schema' => ['description' => '目标云盘(从盘)所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'Site', + 'name' => 'DestinationDiskId', 'in' => 'query', - 'schema' => [ - 'title' => 'production或backup,表示数据从主或备站点获取,默认为production。', - 'description' => '查询并返回指定站点的记录,主要应用于跨可用区复制对的场景。'."\n" - ."\n" - .'- 如果不指定该参数,则系统会返回生产站点的复制对记录和状态信息。'."\n" - ."\n" - .'- 如果指定该参数,则系统仅返回指定Site的复制对的记录和状态信息。取值范围:'."\n" - .' - production:生产站点。'."\n" - .' - backup:灾备站点。', - 'type' => 'string', - 'required' => false, - 'example' => 'production', - ], + 'schema' => ['description' => '目标云盘(从盘)的云盘ID。', 'type' => 'string', 'required' => true, 'example' => 'd-sa1f82p58p1tdw9g****'], ], [ - 'name' => 'PageNumber', + 'name' => 'DestinationZoneId', 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时的页码。', - 'description' => '分页查询时的页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '5', - ], + 'schema' => ['description' => '目标云盘(从盘)所属的可用区ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai-e'], ], [ - 'name' => 'PageSize', + 'name' => 'PairName', 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时设置的每页行数。', - 'description' => '分页查询时设置的每页行数。'."\n" - .'取值范围1~100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '异步复制关系的名称。长度为2~128个字符,必须以大小写字母或中文开头,不能以`http://`或`https://`开头。可以包含中文、英文、数字、半角冒号(:)、下划线(_)、半角句号(.)或者短划线(-)。', 'type' => 'string', 'required' => false, 'example' => 'TestReplicaPair'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组所在的企业资源组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-aekz*****', - ], + 'schema' => ['description' => '异步复制关系的描述信息。长度为2~256个英文或中文字符,不能以`http://`或`https://`开头。', 'type' => 'string', 'required' => false, 'example' => 'This is description.'], ], [ - 'name' => 'Name', + 'name' => 'ChargeType', 'in' => 'query', - 'schema' => [ - 'title' => '复制组名称,支持模糊搜索。', - 'description' => '复制组名称,支持模糊搜索。', - 'type' => 'string', - 'required' => false, - 'example' => 'pg-name***', - ], + 'schema' => ['description' => '异步复制关系的付费方式。取值范围:'."\n" + .'- PREPAY:包年包月。'."\n" + .'- POSTPAY:按量付费。'."\n" + ."\n" + .'默认值:POSTPAY。', 'type' => 'string', 'required' => false, 'example' => 'PREPAY'], + ], + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => ['description' => '异步复制关系的购买时长。当`ChargeType=PREPAY`时,该参数为必选参数。时长单位由`PeriodUnit`指定,取值范围:1、2、3、6、12、24、36、60。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'query', + 'schema' => ['description' => '异步复制关系购买时长的单位。当前仅支持Month。'."\n" + .'Month:月。', 'type' => 'string', 'required' => false, 'example' => 'Month'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + [ + 'name' => 'Bandwidth', + 'in' => 'query', + 'schema' => ['description' => '云盘之间异步复制数据时的带宽。单位为Kbps。取值范围:'."\n" + ."\n" + .'- 10240'."\n" + .'- 20480'."\n" + .'- 51200'."\n" + .'- 102400'."\n" + ."\n" + .'默认值:10240。'."\n" + .'当ChargeType取值为POSTPAY时,不能指定本参数值,系统取值为0,表示云盘异步复制时根据数据写入变化动态分配。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10240'], + ], + [ + 'name' => 'RPO', + 'in' => 'query', + 'schema' => ['description' => '云盘异步复制关系设定的RPO值,单位:秒。当前仅支持900秒。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '900'], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => ['description' => '异步复制对所在的企业资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs****'], ], [ 'name' => 'Tag', @@ -3791,20 +1498,8 @@ 'description' => '标签信息。', 'type' => 'object', 'properties' => [ - 'Value' => [ - 'title' => '复制组的标签值', - 'description' => '一致性复制组的标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag-value', - ], - 'Key' => [ - 'title' => '复制组的标签键', - 'description' => '一致性复制组的标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag-key', - ], + 'Value' => ['title' => '异步复制对的标签值', 'description' => '异步复制对的标签值。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'], + 'Key' => ['title' => '异步复制对的标签键', 'description' => '异步复制对的标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], ], 'required' => false, ], @@ -3812,6 +1507,18 @@ 'maxItems' => 21, ], ], + [ + 'name' => 'EnableRtc', + 'in' => 'query', + 'schema' => ['title' => '是否开启RTC。默认关闭。', 'description' => '是否开启复制时间控制(RTC)。取值范围:'."\n" + ."\n" + .'- false:关闭。'."\n" + .'- true:开启。'."\n" + ."\n" + .'默认值:false。'."\n" + ."\n" + .'> 若复制对加入复制组,则与复制组的属性保持一致。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], ], 'responses' => [ 200 => [ @@ -3820,637 +1527,424 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****', - ], - 'NextToken' => [ - 'title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'description' => '本次调用返回的查询凭证(Token)。', - 'type' => 'string', - 'example' => 'AAAAAdDWBF2****', - ], - 'ReplicaGroups' => [ - 'description' => '一致性复制组的信息组成的集合。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'GroupName' => [ - 'description' => '一致性复制组名称。', - 'type' => 'string', - 'example' => 'myreplicagrouptest', - ], - 'Site' => [ - 'title' => 'pair信息的后端站点来源,production或backup', - 'description' => '复制对和一致性复制组的站点信息来源。可能值:'."\n" - .'- production:生产站点。'."\n" - .'- backup:灾备站点。', - 'type' => 'string', - 'example' => 'production', - ], - 'Description' => [ - 'description' => '一致性复制组的描述信息。', - 'type' => 'string', - 'example' => 'This is description.', - ], - 'StandbyZone' => [ - 'title' => '复制组的初始目的可用区。', - 'description' => '复制组的初始目的可用区。', - 'type' => 'string', - 'example' => 'cn-shanghai-e', - ], - 'ResourceGroupId' => [ - 'title' => '复制组所在的企业资源组ID。', - 'description' => '复制组所在的企业资源组ID。', - 'type' => 'string', - 'example' => 'rg-aek2a*******', - ], - 'LastRecoverPoint' => [ - 'description' => '一致性复制组的最近一次异步复制操作完成的时间。该参数以时间戳的形式提供返回值。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1637835114', - ], - 'ReplicaGroupId' => [ - 'description' => '一致性复制组ID。', - 'type' => 'string', - 'example' => 'pg-myreplica****', - ], - 'RPO' => [ - 'description' => '一致性复制组的RPO值。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '180', - ], - 'SourceRegionId' => [ - 'description' => '生产站点所属的地域ID。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'DestinationRegionId' => [ - 'description' => '灾备站点所属的地域ID。', - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'Bandwidth' => [ - 'title' => '带宽值,单位为Kbps。公共云暂不支持。', - 'description' => '带宽值,单位为Kbps。该参数暂未开放使用,返回值由系统预设。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'PrimaryZone' => [ - 'title' => '复制组的初始源可用区。', - 'description' => '复制组的初始源可用区。', - 'type' => 'string', - 'example' => 'cn-beijing-h', - ], - 'SourceZoneId' => [ - 'description' => '生产站点所属的可用区ID。', - 'type' => 'string', - 'example' => 'cn-beijing-f', - ], - 'Tags' => [ - 'title' => '复制组的标签', - 'description' => '复制组的标签。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'TagKey' => [ - 'title' => '复制组的标签键', - 'description' => '复制组的标签键。', - 'type' => 'string', - 'example' => 'testKey', - ], - 'TagValue' => [ - 'title' => '复制组的标签值', - 'description' => '复制组的标签值。', - 'type' => 'string', - 'example' => 'testValue', - ], - ], - ], - ], - 'Status' => [ - 'description' => '一致性复制组的状态。可能值:'."\n" - .'- invalid:失效。该状态表示一致性复制组中复制对存在异常。'."\n" - .'- creating:创建中。'."\n" - .'- created:已创建。'."\n" - .'- create_failed:创建失败。'."\n" - .'- manual_syncing:单次同步中。如果是第一次单次同步,则同步中也显示为该状态。'."\n" - .'- syncing:同步中。主盘和从盘之间非第一次进行异步复制数据时,将处于该状态。'."\n" - .'- normal:正常。当异步复制的当前周期内数据复制完成时,将处于该状态。'."\n" - .'- stopping:停止中。'."\n" - .'- stopped:已停止。'."\n" - .'- stop_failed:停止失败。'."\n" - .'- failovering:故障切换中。'."\n" - .'- failovered:故障切换完成。'."\n" - .'- failover_failed:故障切换失败。'."\n" - .'- reprotecting:反向复制操作中。'."\n" - .'- reprotect_failed:反向复制失败。'."\n" - .'- deleting:删除中。'."\n" - .'- delete_failed:删除失败。'."\n" - .'- deleted:已删除。', - 'type' => 'string', - 'example' => 'created', - ], - 'PairNumber' => [ - 'title' => '复制组中的复制对个数', - 'description' => '一致性复制组中包含的复制对个数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2', - ], - 'PrimaryRegion' => [ - 'title' => '复制组的初始源地域。', - 'description' => '复制组的初始源地域。', - 'type' => 'string', - 'example' => 'cn-beijing', - ], - 'PairIds' => [ - 'description' => '一致性复制组中包含的复制对ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '一致性复制组中包含的复制对ID列表。', - 'type' => 'string', - 'format' => 'byte', - 'example' => 'pair-cn-dsa****,pair-cn-asd****', - ], - ], - 'EnableRtc' => [ - 'title' => 'RTC开关。', - 'description' => '是否开启复制时间控制(RTC)。可能值:'."\n" - ."\n" - .'- false:关闭。'."\n" - .'- true:开启。'."\n" - ."\n" - .'> 如果为ture,表示一致性组开启复制时间控制(RTC),加入该一致性组的异步复制对均开启RTC。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'DestinationZoneId' => [ - 'description' => '灾备站点所属的可用区ID。', - 'type' => 'string', - 'example' => 'cn-shanghai-e', - ], - 'StandbyRegion' => [ - 'title' => '复制组的初始目的地域。', - 'description' => '复制组的初始目的地域。', - 'type' => 'string', - 'example' => 'cn-shanghai'."\n", - ], - ], - ], - ], - 'PageNumber' => [ - 'title' => '参数页码。', - 'description' => '分页查询时的页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'title' => '参数页行数。', - 'description' => '分页查询时设置的每页行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'title' => '分页查询时的结果总条数。', - 'description' => '分页查询时的结果总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '60', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], + 'ReplicaPairId' => ['description' => '异步复制关系ID。', 'type' => 'string', 'example' => 'pair-cn-dsa****'], + 'OrderId' => ['description' => '订单ID。', 'type' => 'string', 'example' => '123456****'], ], ], ], ], 'errorCodes' => [ + 400 => [ + ['errorCode' => 'IdempotentParameterMismatch', 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', 'description' => '如果您提供了一个已经使用过的ClientToken,但其他请求参数有变化。'], + ], 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => '当前状态下该操作不允许执行。'], + ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The operation is not allowed due to quota exceed.', 'description' => '当前操作已超过使用配额。'], + ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', '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.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","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}","errorExample":""},{"type":"xml","example":"<DescribeDiskReplicaGroupsResponse>\\n <RequestId>AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****</RequestId>\\n <NextToken>AAAAAdDWBF2****</NextToken>\\n <ReplicaGroups>\\n <ReplicaGroupId>pg-myreplica****</ReplicaGroupId>\\n <SourceRegionId>cn-beijing</SourceRegionId>\\n <SourceZoneId>cn-beijing-f</SourceZoneId>\\n <DestinationRegionId>cn-shanghai</DestinationRegionId>\\n <DestinationZoneId>cn-shanghai-e</DestinationZoneId>\\n <GroupName>myreplicagrouptest</GroupName>\\n <Description>This is description.</Description>\\n <Status>created</Status>\\n <RPO>180</RPO>\\n <LastRecoverPoint>1637835114</LastRecoverPoint>\\n <Site>production</Site>\\n <PairIds>pair-cn-dsa****,pair-cn-asd****</PairIds>\\n <PairNumber>2</PairNumber>\\n </ReplicaGroups>\\n</DescribeDiskReplicaGroupsResponse>","errorExample":""}]', - 'title' => '查询一个或多个异步复制组', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\",\\n \\"ReplicaPairId\\": \\"pair-cn-dsa****\\",\\n \\"OrderId\\": \\"123456****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n <ReplicaPairId>pair-cn-dsa****</ReplicaPairId>\\n <OrderId>123456****</OrderId>\\n</CreateDiskReplicaPairResponse>","errorExample":""}]', + 'title' => '创建云盘异步复制关系', 'description' => '## 接口说明'."\n" - .'当您需要分页查询时,请使用MaxResults与NextToken参数进行查询。'."\n" ."\n" - .'分页查询首页时,设置`MaxResults`以限制返回信息的条目数,返回结果中的`NextToken`将作为查询后续页的凭证。查询后续页时,将`NextToken`参数设置为上一次返回结果中获取到的`NextToken`作为查询凭证,并设置MaxResults限制返回条目数。', - ], - 'ModifyDiskReplicaGroup' => [ - 'summary' => '修改一致性复制组的名称、描述信息或者RPO。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .'<props="china">云盘异步复制是一种基于块存储数据复制能力实现跨地域数据保护的功能。该功能可以将某一块云盘的数据,异步复制到其他地域内的另一块云盘中,实现存储数据的跨地域容灾备份。您可以通过该功能建立关键业务的容灾能力,保护数据库数据的同时提升业务的连续性。关于功能注意事项以及计费的更多信息,请参见[云盘异步复制概述](~~314563~~)。同时,异步复制功能以包年包月的计费方式收取带宽费用,也支持以后付费方式收取流量费用。</props>'."\n" + ."\n" + .'<props="intl">云盘异步复制是一种基于块存储数据复制能力实现跨地域数据保护的功能。该功能可以将某一块云盘的数据,异步复制到其他地域内的另一块云盘中,实现存储数据的跨地域容灾备份。您可以通过该功能建立关键业务的容灾能力,保护数据库数据的同时提升业务的连续性。同时,异步复制功能以包年包月的计费方式收取带宽费用。</props>'."\n" + ."\n" + .'目前异步复制功能仅支持ESSD云盘,且云盘功能会受到一定的限制。'."\n" + ."\n" + .'在创建异步复制关系前,您需要注意:'."\n" + ."\n" + .'- 已准备好需要容灾的源云盘(异步复制关系中的主盘)以及已创建好的目标云盘(异步复制关系中的从盘)。您可以调用[CreateDisk](~~25513~~)创建云盘。'."\n" + ."\n" + .'- 创建的从盘所属的地域不能与主盘相同,当前异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + ."\n" + .'- 调用该接口只是创建主盘和从盘之间的异步复制关系,创建完成后,您还需要调用[StartDiskReplicaPair](~~354205~~)激活异步复制功能,以实现周期性地将主盘数据跨地域异步复制到从盘。', + 'changeSet' => [ + ['createdAt' => '2025-07-07T11:22:38.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-03-29T08:24:47.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2023-03-08T11:10:44.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-01-03T02:17:05.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-12-13T03:44:43.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2022-08-29T07:13:41.000Z', 'description' => '错误码发生变更'], + ], + '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' => '调用CreateEnterpriseSnapshotPolicy创建企业级快照策略。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '115799', - 'abilityTreeNodes' => [ - 'FEATUREdiskPPYCY9', - ], + 'abilityTreeCode' => '159104', + 'abilityTreeNodes' => ['FEATUREdisk493RYF'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['title' => '地域ID', 'description' => '地域ID。您可以调用DescribeRegions查询异步复制功能支持的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ReplicaGroupId', + 'name' => 'Name', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组ID。您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-myreplica****', - ], + 'schema' => ['title' => '名称', 'description' => '快照策略名称。', 'type' => 'string', 'required' => true, 'example' => 'xx'], ], [ - 'name' => 'GroupName', + 'name' => 'TargetType', 'in' => 'query', 'schema' => [ - 'description' => '一致性复制组名称。长度为2~128个英文或中文字符。必须以大小写字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。', + 'title' => '类型', + 'description' => '类型。取值范围:'."\n" + ."\n" + .'- DISK', 'type' => 'string', - 'required' => false, - 'example' => 'myreplicagrouptest', + 'required' => true, + 'enumValueTitles' => ['DISK' => 'DISK'], + 'example' => 'DISK', ], ], [ - 'name' => 'Description', + 'name' => 'State', 'in' => 'query', 'schema' => [ - 'description' => '一致性组的描述信息。长度为2~256个英文或中文字符,不能以`http://`或`https://`开头。', + 'title' => '状态', + 'description' => '状态。取值范围:'."\n" + ."\n" + .'- DISABLED'."\n" + .'- ENABLED', 'type' => 'string', 'required' => false, - 'example' => 'This is description.', + 'enumValueTitles' => ['DISABLED' => 'DISABLED', 'ENABLED' => 'ENABLED'], + 'example' => 'ENABLED', ], ], [ - 'name' => 'RPO', + 'name' => 'Desc', 'in' => 'query', - 'schema' => [ - 'description' => '一致性组设定的RPO值,单位:秒。当前仅支持900秒。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '900', - ], + 'schema' => ['title' => '描述信息', 'description' => '描述信息。', 'type' => 'string', 'required' => false, 'example' => 'xxx'], ], [ - 'name' => 'ClientToken', + 'name' => 'Schedule', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', + 'title' => '调度规则', + 'description' => '调度规则。', + 'type' => 'object', + 'properties' => [ + 'CronExpression' => ['title' => 'cron tab 表达式', 'description' => '策略执行的周期和时间。使用cron表达式。'."\n" + ."\n" + .'例如:0 0 4 1/1 * ?表示从每月第一天上午4时开始,每天的上午4时执行快照操作。', 'type' => 'string', 'required' => true, 'example' => '0 0 */24 * * *'], + ], + 'required' => true, ], ], [ - 'name' => 'Bandwidth', + 'name' => 'RetainRule', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'title' => '带宽值,单位kbps。公共云暂不支持。', - 'description' => '带宽值,单位Kbps。'."\n" - .'>该参数暂未开放使用。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => 'null', + 'title' => '保留规则', + 'description' => '保留规则。', + 'type' => 'object', + 'properties' => [ + 'Number' => ['title' => '保留个数', 'description' => '个数。取值范围 [1, 256]。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + 'TimeInterval' => ['title' => '保留时间值', 'description' => '保留规则的时间间隔,单位通过参数TimeUnit指定,取值范围大于 1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '14'], + 'TimeUnit' => [ + 'title' => '保留时间单位', + 'description' => '保留时间单位。取值范围:'."\n" + ."\n" + .'- DAYS'."\n" + .'- WEEKS', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['WEEKS' => 'WEEKS', 'DAYS' => 'DAYS'], + 'example' => 'DAYS', + ], + ], + 'required' => true, ], ], [ - 'name' => 'EnableRtc', + 'name' => 'StorageRule', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'title' => '是否开启RTC。', - 'description' => '是否开启复制时间控制(RTC)。取值范围:'."\n" - ."\n" - .'- false:关闭。'."\n" - .'- true:开启。'."\n" - ."\n" - .'> 如果设置为ture,表示一致性组开启复制时间控制(RTC),加入该一致性组的异步复制对均开启RTC。', - 'type' => 'boolean', + 'title' => '策略存储规则', + 'description' => '高级快照特性。', + 'type' => 'object', + 'properties' => [ + 'EnableImmediateAccess' => [ + 'title' => '是否启动快照极速可用', + 'description' => '是否启动快照极速可用。取值范围:'."\n" + ."\n" + .'- true'."\n" + .'- false', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], + 'example' => 'false', + ], + ], 'required' => false, - 'example' => 'true', ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'CrossRegionCopyInfo', + 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => '快照复制信息', + 'description' => '快照复制信息。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', + 'Enabled' => [ + 'title' => '是否启用跨地域复制', + 'description' => '是否启用跨地域复制。取值范围:'."\n" + ."\n" + .'- true'."\n" + .'- false', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], + 'example' => 'false', + ], + 'Regions' => [ + 'title' => '目的地域信息', + 'description' => '目的地域信息。', + 'type' => 'array', + 'items' => [ + 'description' => '复制目标地域信息,可选。', + 'type' => 'object', + 'properties' => [ + 'RegionId' => ['title' => '快照复制目的地', 'description' => '快照复制目的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], + 'RetainDays' => ['title' => '目的地快照保留天数', 'description' => '目的地快照保留天数。取值范围大于1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '7'], + ], + 'required' => false, + ], + 'required' => false, ], ], + 'required' => false, ], ], - ], - 'errorCodes' => [ - 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.GroupHasPair', - 'errorMessage' => 'The group cannot be deleted due to not empty.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', - 'errorMessage' => 'Operation is not allowed on the primary site.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForStandby', - 'errorMessage' => 'Operation is not allowed on the secondary site.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - ], - [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], - ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', - ], - ], - ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ModifyDiskReplicaGroupResponse>","errorExample":""}]', - 'title' => '修改异步复制组', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - ."\n" - .'- 一致性复制组必须处于**已创建**(`created`)或者**已停止**(`stopped`)状态。', - ], - 'StartDiskReplicaGroup' => [ - 'summary' => '启动一致性复制组中复制对的异步复制功能。首次同步时,系统会先进行一次全量同步,之后会按照保证RPO(Recovery Point Object)的时间周期内进行增量同步。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - ], - 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'Tag', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '一致性复制组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', + 'title' => '标签键值对。n的取值范围为 [1, 20]', + 'description' => '标签键值对。n的取值范围为 [1, 20]。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['title' => '资源的标签键', 'description' => '资源的标签键。', 'type' => 'string', 'required' => true, 'example' => 'tag-key'], + 'Value' => ['title' => '资源的标签值', 'description' => '资源的标签值。', 'type' => 'string', 'required' => true, 'example' => 'tag-value'], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 10, ], ], [ - 'name' => 'ReplicaGroupId', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-myreplica****', - ], + 'schema' => ['title' => '资源组ID', 'description' => '资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'xxx'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'OneShot', + 'name' => 'SpecialRetainRules', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '是否立刻进行一次同步。取值范围:'."\n" - ."\n" - .'- true:立刻开始数据同步。'."\n" - ."\n" - .'- false:在RPO时间周期之后才开始数据同步。'."\n" - ."\n\n" - .'默认值:false。', - 'type' => 'boolean', + 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', + 'description' => '特殊保留规则。', + 'type' => 'object', + 'properties' => [ + 'Enabled' => [ + 'title' => '是否启用特殊保留时间', + 'description' => '是否启用特殊保留。取值范围:'."\n" + ."\n" + .'- true'."\n" + .'- false', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], + 'example' => 'true', + ], + 'Rules' => [ + 'title' => '特殊保留规则', + 'description' => '特殊保留规则列表。', + 'type' => 'array', + 'items' => [ + 'description' => '特殊保留规则。', + 'type' => 'object', + 'properties' => [ + 'SpecialPeriodUnit' => [ + 'title' => '特殊周期单位', + 'description' => '特殊保留的快照的周期单位,如果配置成WEEKS,则为每周的第一个快照提供特殊保留,保留的时间由TimeUnit,TimeInterval决定。取值范围为:'."\n" + ."\n" + .'- WEEKS'."\n" + .'- MONTHS'."\n" + .'- YEARS', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['MONTHS' => 'MONTHS', 'YEARS' => 'YEARS', 'WEEKS' => 'WEEKS'], + 'example' => 'WEEKS', + ], + 'TimeInterval' => ['title' => '保留时间值', 'description' => '保留规则的时间间隔,单位通过参数TimeUnit指定,取值范围大于 1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '14'], + 'TimeUnit' => [ + 'title' => '保留时间单位', + 'description' => '特殊快照的保留时间单位。取值范围:'."\n" + ."\n" + .'- DAYS'."\n" + .'- WEEKS', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['WEEKS' => 'WEEKS', 'DAYS' => 'DAYS'], + 'example' => 'WEEKS', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], 'required' => false, - 'example' => 'false', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => 'CreateSnapshotPolicyResponse', + 'description' => '应答', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'PolicyId' => ['title' => '策略ID', 'description' => '快照策略ID', 'type' => 'string', 'example' => 'esp-xxx'], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID', 'type' => 'string', 'example' => 'F13483A9-17E2-5085-9B2E-2155B0487FF7'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'OperationDenied.StandbyDeviceAttached', - 'errorMessage' => 'The secondary disk is attached.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => '参数缺失。'], ], 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.ManualSyncLimit', - 'errorMessage' => 'One shot start manual syncing too frequently, please try again later.', - ], - [ - 'errorCode' => 'OperationDenied.NoPairInGroup', - 'errorMessage' => 'The operation is not allowed because no pair in the group.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupStatusConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupAZoneConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', - ], - [ - 'errorCode' => 'OperationDenied.PairNotInGroup', - 'errorMessage' => 'The operation is not allowed because pair is not in any group.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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":"<StartDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</StartDiskReplicaGroupResponse>","errorExample":""}]', - 'title' => '开始异步复制组', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - .'- 当使用自动同步(即设置`OneShot`为`false`)时,一致性复制组必须处于**已创建**(`created`)、**同步中**(`syncing`)、**正常**(`normal`)或者**已停止**(`stopped`)状态。'."\n" - ."\n" - .'- 当使用单次同步(即设置`OneShot`为`true`)时,一致性复制组必须处于**已创建**(`created`)、**单次同步中**(`manual_syncing`)或者**已停止**(`stopped`)状态。两次单次同步操作的时间间隔需要大于RPO/2时间。'."\n" - ."\n" - .'- 一致性复制组被启动后,系统会自动进行第一次异步复制操作,此时一致性复制组会处于**初始同步中**(`initial_syncing`)的状态,该次操作会把主盘的全量数据复制到从盘。', - ], - 'StopDiskReplicaGroup' => [ - 'summary' => '停止一致性复制组中复制对的异步复制功能。', - 'methods' => [ - 'get', - 'post', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PolicyId\\": \\"esp-xxx\\",\\n \\"RequestId\\": \\"F13483A9-17E2-5085-9B2E-2155B0487FF7\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateEnterpriseSnapshotPolicyResponse>\\n <PolicyId>esp-xxx</PolicyId>\\n <RequestId>xxx</RequestId>\\n</CreateEnterpriseSnapshotPolicyResponse>","errorExample":""}]', + 'gatewayOptions' => [ + 'gatewayProtocols' => [], + ], + 'title' => '创建企业级快照策略', + 'changeSet' => [ + ['createdAt' => '2024-10-08T07:16:45.000Z', 'description' => '响应参数发生变更'], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEnterpriseSnapshotPolicy'], + ], + 'product' => ['code' => 'disk', 'title' => '块存储'], ], - 'schemes' => [ - 'http', - 'https', + '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' => '中心化角色:删除App', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -4459,122 +1953,104 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '115796', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '193443', + 'abilityTreeNodes' => ['FEATUREdisk7F2R1Z'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ReplicaGroupId', + 'name' => 'Owner', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组ID。您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-myreplica****', - ], + 'schema' => ['description' => '应用责任人。', 'type' => 'string', 'required' => false, 'example' => 'anchashi'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => 'app-xxx'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => 'LensResponse', + 'description' => 'LensResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '1F58EB6E-7B7A-5437-9612-F14D50822A61'], ], ], ], ], '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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => '参数缺失。'], + ], 403 => [ - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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":"<StopDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</StopDiskReplicaGroupResponse>","errorExample":""}]', - 'title' => '停止异步复制组', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - .'- 一致性复制组必须处于**单次同步中**(`manual_syncing`)、**同步中**(`syncing`)、**正常**(`normal`)、**停止中**(`stopping`)、**停止失败**(`stop_failed`)或者**已停止**(`stopped`)状态。'."\n" - .'- 异步复制停止后,一致性复制组将处于**已停止**(`stopped`)状态。如果停止失败,则一致性复制组的状态不会改变或者状态为**停止失败**(`stop_failed`),请稍后重试。', - ], - 'FailoverDiskReplicaGroup' => [ - 'summary' => '启用一致性复制组中复制对的故障切换功能。当一致性复制组中某些复制对的主盘出现故障时,可以调用该接口恢复从盘的读写权限。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '删除App', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + 'product' => ['code' => 'disk', 'title' => '块存储'], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ebs:DeleteApp', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1F58EB6E-7B7A-5437-9612-F14D50822A61\\"\\n}","type":"json"}]', + ], + 'DeleteDiskReplicaGroup' => [ + 'summary' => '删除一致性复制组。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -4583,42 +2059,25 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '115797', - 'abilityTreeNodes' => [ - 'FEATUREdiskPPYCY9', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '115800', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组中容灾站点所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '一致性复制组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'group-myreplica****', - ], + 'schema' => ['description' => '一致性复制组ID。您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ @@ -4628,104 +2087,59 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.NoPairInGroup', - 'errorMessage' => 'The operation is not allowed because no pair in the group.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupStatusConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', - ], - [ - 'errorCode' => 'OperationDenied.PairGroupAZoneConflict', - 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', - ], - [ - 'errorCode' => 'OperationDenied.PairInAnotherGroup', - 'errorMessage' => 'The operation is not allowed because pair is already in another group.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', - 'errorMessage' => 'Operation is not allowed on the primary site.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForStandby', - 'errorMessage' => 'Operation is not allowed on the secondary site.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.GroupHasPair', 'errorMessage' => 'The group cannot be deleted due to not empty.', 'description' => '当前一致性组中包含有复制对,不能被删除。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', '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.', - ], + ['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.', - ], + ['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.', - ], + ['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":"<FailoverDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</FailoverDiskReplicaGroupResponse>","errorExample":""}]', - 'title' => '启用异步复制组故障切换', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</DeleteDiskReplicaGroupResponse>","errorExample":""}]', + 'title' => '删除异步复制组', 'description' => '## 接口说明'."\n" ."\n" .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - ."\n" - .'- 一致性复制组必须处于**单次同步中**(`manual_syncing`)、**同步中**(`syncing`)、**正常**(`normal`)、**停止中**(`stopping`)、**停止失败**(`stop_failed`)、**已停止**(`stopped`)、**故障切换中**(`failovering`)、**故障切换失败**(`failover_failed`)或者**故障切换完成**(`failovered`)状态。'."\n" - ."\n" - .'- 故障切换完成后,一致性复制组处于**故障切换完成**(`failovered`)状态。'."\n" - ."\n" - .'- 要进行故障切换,请确保生产站点到灾备站点之间已完成首次数据同步。', - ], - 'ReprotectDiskReplicaGroup' => [ - 'summary' => '启用一致性复制组中复制对的反向复制功能。启用反向复制功能后,可以将原灾备站点的云盘数据复制到原生产站点的云盘当中。反向复制数据时,一致性复制组中原有的站点信息不变,主从关系颠倒。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .'- 删除一致性复制组前,请确保已移除一致性复制组中的复制对。'."\n" + .'- 一致性复制组必须处于**已创建**(`created`)、**创建失败**(`create_failed`)、**已停止**(`stopped`)、**故障切换完成**(`failovered`)、**删除中**(`deleting`)、**删除失败**(`delete_failed`)或者**失效**(`invalid`)状态。', + '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' => [ + 'summary' => '删除一个异步复制关系。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -4734,53 +2148,25 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '115794', - 'abilityTreeNodes' => [ - 'FEATUREdiskAQUAFH', - 'FEATUREdiskVW208V', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '48744', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组中容灾站点所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '异步复制关系中主盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'ReplicaGroupId', + 'name' => 'ReplicaPairId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组ID。您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-myreplica****', - ], + 'schema' => ['description' => '异步复制关系的ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], - ], - [ - 'name' => 'ReverseReplicate', - 'in' => 'query', - 'schema' => [ - 'description' => '反向复制开关:false代表恢复原方向,true代表反向复制。默认值是true。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ @@ -4790,219 +2176,151 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。xxx', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****'], ], ], ], ], 'errorCodes' => [ 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'OperationDenied.NoPairInGroup', - 'errorMessage' => 'The operation is not allowed because no pair in the group.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', - 'errorMessage' => 'Operation is not allowed on the primary site.', - ], - [ - 'errorCode' => 'OperationDenied.OperateNotAllowedForStandby', - 'errorMessage' => 'Operation is not allowed on the secondary site.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', '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.', - ], + ['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.', - ], + ['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.', - ], + ['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":"<ReprotectDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ReprotectDiskReplicaGroupResponse>","errorExample":""}]', - 'title' => '启用异步复制组反向复制', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDiskReplicaPairResponse>\\n <RequestId>A37597A6-BB99-19B3-85EA-4C2B91F0****</RequestId>\\n</DeleteDiskReplicaPairResponse>","errorExample":""}]', + 'title' => '删除云盘异步复制关系', 'description' => '## 接口说明'."\n" - .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - .'- 一致性复制组必须处于**故障切换完成**(`failovered`)状态。您可以调用`FailoverDiskReplicaPair`启用故障切换功能。'."\n" ."\n" - .'- 反向复制前,生产站点中的主盘必须从所属的ECS实例上卸载,即处于未挂载的状态。您可以调用[DetachDisk](~~25516~~)卸载云盘。'."\n" + .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" ."\n" - .'- 启用反向复制功能后,您还需要重新调用`StartDiskReplicaGroup`启动异步复制功能,才可以将原灾备站点的云盘数据复制到原生产站点的云盘当中。'."\n" - .'- 通过设置ReverseReplicate参数为false,您可以进行取消**故障切换完成**(`failovered`)状态,恢复原来的复制方向。', - ], - 'DeleteDiskReplicaGroup' => [ - 'summary' => '删除一致性复制组。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .'- 当异步复制关系处于**已停止**(`stopped`)、**失效**(`invalid`)或者**故障切换完成**(`failovered`)状态时支持删除。删除异步复制时仅删除复制关系,主盘与从盘对应的云盘资源保留。'."\n" + ."\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' => [ + 'summary' => '调用DeleteEnterpriseSnapshotPolicy删除企业级快照策略。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', - 'abilityTreeCode' => '115800', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'abilityTreeCode' => '159101', + 'abilityTreeNodes' => ['FEATUREdiskAAH44P'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['title' => '地域ID', 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ReplicaGroupId', + 'name' => 'PolicyId', 'in' => 'query', - 'schema' => [ - 'description' => '一致性复制组ID。您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-myreplica****', - ], + 'schema' => ['title' => 'the id of the snapshot policy', 'description' => '要删除的策略ID。', 'type' => 'string', 'required' => true, 'example' => 'esp-xxx'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => 'xxx'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => 'Response', + 'description' => 'Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => '请求ID', 'description' => '请求ID', 'type' => 'string', 'example' => 'xxx'], ], ], ], ], '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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => '参数缺失。'], + ], 403 => [ - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.GroupHasPair', - 'errorMessage' => 'The group cannot be deleted due to not empty.', - ], - [ - 'errorCode' => 'OperationDenied.InvalidStatus', - 'errorMessage' => 'The operation is not allowed in current status.', - ], - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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":"<DeleteDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</DeleteDiskReplicaGroupResponse>","errorExample":""}]', - 'title' => '删除异步复制组', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" - .'- 删除一致性复制组前,请确保已移除一致性复制组中的复制对。'."\n" - .'- 一致性复制组必须处于**已创建**(`created`)、**创建失败**(`create_failed`)、**已停止**(`stopped`)、**故障切换完成**(`failovered`)、**删除中**(`deleting`)、**删除失败**(`delete_failed`)或者**失效**(`invalid`)状态。', - ], - 'DescribeReplicaGroupDrills' => [ - 'summary' => '该接口用于查询当前地域的盘作为复制组从端时,曾经对复制组所启动的容灾演练。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"xxx\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteEnterpriseSnapshotPolicyResponse>\\n <RequestId>xxx</RequestId>\\n</DeleteEnterpriseSnapshotPolicyResponse>","errorExample":""}]', + 'title' => '删除企业级快照策略', + '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' => [], @@ -5012,799 +2330,211 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', - 'abilityTreeCode' => '189140', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '193441', + 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], ], 'parameters' => [ [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'title' => '地域ID。', - 'description' => '异步复制组中主盘或从盘所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'title' => '复制组ID。', - 'description' => '复制组ID。您可以通过[DescribeDiskReplicaGroups](~~426614~~)接口查询异步复制组列表,获得复制组ID入参的值。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-xxxx', - ], - ], - [ - 'name' => 'DrillId', + 'name' => 'AppNames', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => '演练ID。', - 'description' => '演练ID。', - 'type' => 'string', + 'title' => '要查询的App列表,空值则查询所有App信息', + 'description' => '要查询的App列表,空值则查询所有App信息', + 'type' => 'array', + 'items' => ['description' => '应用名。', 'type' => 'string', 'required' => false, 'example' => 'default'], 'required' => false, - 'example' => 'pg-drill-xxxx', + 'example' => 'App1,App2', + 'maxItems' => 100, ], ], [ - 'name' => 'NextToken', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdDWBF2****', - ], + 'schema' => ['description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询块存储数据洞察支持的地域列表。', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai'], ], [ - 'name' => 'MaxResults', + 'name' => 'Owner', 'in' => 'query', - 'schema' => [ - 'title' => 'Token方式最大个数。', - 'description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" - ."\n" - .'取值范围:1~500。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '用户Uid', 'type' => 'string', 'required' => false, 'example' => '1485558146415628'], ], [ - 'name' => 'PageSize', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时设置的每页行数。', - 'description' => '分页查询时设置的每页行数。 取值范围1-100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'PageNumber', + 'name' => 'AppIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => '分页模式查询时的页数。', - 'description' => '分页查询时的页码。', - 'type' => 'integer', - 'format' => 'int32', + 'description' => '指定要操作的app编号,一个带有格式的 JSON 数组,最多支持 100 个 AppId,用半角逗号(,)隔开。', + 'type' => 'array', + 'items' => ['description' => '指定要操作的app编号,一个带有格式的 JSON 数组,最多支持 100 个 AppId,用半角逗号(,)隔开。', 'type' => 'string', 'required' => false, 'example' => 'app-25603551'], 'required' => false, - 'example' => '5', + 'maxItems' => 100, ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribePairGroupDrillsResponse', - 'description' => 'Schema of Response', + 'title' => 'DescribeAppsResponse', + 'description' => 'DescribeAppsResponse', 'type' => 'object', 'properties' => [ - 'Drills' => [ - 'description' => '复制组容灾演练的信息组成的集合。', + 'AppInfos' => [ + 'title' => 'App信息。', + 'description' => 'App信息。', 'type' => 'array', 'items' => [ + 'description' => '应用的详细信息。', 'type' => 'object', 'properties' => [ - 'DrillId' => [ - 'title' => '演练ID。', - 'description' => '演练ID。', - 'type' => 'string', - 'example' => 'pg-drill-xxx', - ], - 'GroupId' => [ - 'title' => '复制组ID。', - 'description' => '复制组ID。', - 'type' => 'string', - 'example' => 'pg-xxx', - ], - 'Status' => [ - 'title' => '执行状态。', - 'description' => '演练状态。可能值:'."\n" - .'- execute_failed:执行失败。'."\n" - .'- executed:已执行。'."\n" - .'- executing:执行中。'."\n" - .'- clear_failed:清理失败。'."\n" - .'- clearing:清理中。', - 'type' => 'string', - 'enumValueTitles' => [ - 'execute_failed' => 'execute_failed', - 'executed' => 'executed', - 'executing' => 'executing', - 'clear_failed' => 'clear_failed', - 'clearing' => 'clearing', - ], - 'example' => 'executed', - ], - 'PairsInfo' => [ - 'title' => '复制对信息。', - 'description' => '复制对信息。', + 'AppName' => ['description' => '可选值,只在ReportType=present时AppName才会生效', 'type' => 'string', 'example' => 'app1'], + 'AppTags' => [ + 'title' => '用户自定义标签,多个标签用', + 'description' => '用户App所包含的标签', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'PairId' => [ - 'title' => '复制对ID。', - 'description' => '复制对ID。', - 'type' => 'string', - 'example' => 'pair-xxx', - ], - 'DrillDiskId' => [ - 'title' => '演练盘ID。', - 'description' => '演练盘ID。', - 'type' => 'string', - 'example' => 'd-xxx', - ], - 'DrillDiskStatus' => [ - 'title' => '演练盘状态。', - 'description' => '演练盘状态。可能值:'."\n" - .'- created:已创建。'."\n" - .'- deleted:已删除。'."\n" - .'- creating:创建中。'."\n" - .'- deleting:删除中。'."\n" - ."\n" - .'> 除演练盘状态外,还可以展示演练盘创建或删除失败的错误码详情。', - 'type' => 'string', - 'example' => 'created', - ], + 'TagKey' => ['description' => '标签键。', 'type' => 'string', 'example' => 'ebs'], + 'TagValue' => ['description' => '标签值。', 'type' => 'string', 'example' => 'test'], ], + 'description' => '', ], + 'example' => 'default', ], - 'StartAt' => [ - 'title' => '演练启动时间。该参数以时间戳的形式提供返回值。单位:秒。', - 'description' => '演练启动时间。该参数以时间戳的形式提供返回值。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1649750977', - ], - 'RecoverPoint' => [ - 'title' => '该演练对应的恢复点。', - 'description' => '该演练对应的恢复点。该参数以时间戳的形式提供返回值。单位:秒。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1691114995', - ], - 'StatusMessage' => [ - 'title' => '任务执行失败的错误提示信息。', - 'description' => '任务执行失败的错误提示信息。', - 'type' => 'string', - 'example' => 'GROUP_SYNCPOINT_NOT_FOUND', - ], + 'SubscribeStatus' => ['description' => '订阅状态。取值:'."\n" + .'- Subscribe:订阅'."\n" + .'- UnSubscribe:未订阅', 'type' => 'string', 'example' => 'Subscribe'], + 'SubscribePeriod' => ['description' => '报告订阅周期。', 'type' => 'string', 'example' => 'Weekly'], + 'Description' => ['description' => '事件描述。', 'type' => 'string', 'example' => '这个app用于统计云盘全网用量'], + 'ReportSendEnabled' => ['description' => '是否发送报告标志位', 'type' => 'boolean', 'example' => 'true'], + 'SlsSendEnabled' => ['description' => '是否投递Sls标志位', 'type' => 'boolean'], + 'EventBridgeSendEnabled' => ['description' => '是否投递EventBridge标志位', 'type' => 'boolean'], + 'MonitorSendEnabled' => ['description' => '是否投递Monitor标志位', 'type' => 'boolean'], + 'ModifyTime' => ['description' => '修改时间(UTC 时间)', 'type' => 'integer', 'format' => 'int64', 'example' => '2025-11-14T02:11:32Z'], + 'Default' => ['description' => '默认时区。', 'type' => 'boolean', 'example' => 'true'], + 'AppId' => ['description' => '应用ID。', 'type' => 'string', 'example' => 'app-bd5e3533'], ], ], ], - 'NextToken' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '本次调用返回的查询凭证(Token)。', - 'type' => 'string', - 'example' => 'AAAAAdDWBF2****'."\n", - ], - 'PageNumber' => [ - 'title' => '分页模式查询时的页数。', - 'description' => '分页查询时的页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'title' => '分页模式查询时的单页记录数量。', - 'description' => '分页查询时设置的每页行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'title' => '总个数', - 'description' => '分页查询时的结果总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'A1C00637-AC84-5EFD-89B5-D5CE39F0F2B1'], + 'Code' => ['description' => '内部错误码。', 'type' => 'string', 'example' => 'OK'], + 'UserCode' => ['description' => '用户错误码', 'type' => 'string', 'example' => 'OK'], + 'Message' => ['description' => '消息。', 'type' => 'string', 'example' => 'success'], + 'Success' => ['description' => '请求成功与否标识。', 'type' => 'boolean', 'example' => 'True'], + 'HttpStatusCode' => ['description' => 'HTTP状态码', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], + 'DynamicCode' => ['description' => '动态错误码', 'type' => 'string', 'example' => 'OK'], + 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数ErrMessage错误信息中的%s。', 'type' => 'string', 'example' => '-'], + 'AccessDeniedDetail' => ['description' => '访问被拒绝的详细原因。', 'type' => 'string', 'example' => 'None'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - ], - [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], - ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please 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":"<DescribeReplicaGroupDrillsResponse>\\n <Drills>\\n <DrillId>pg-drill-xxx</DrillId>\\n <GroupId>pg-xxx</GroupId>\\n <Status>executed</Status>\\n <PairsInfo>\\n <PairId>pair-xxx</PairId>\\n <DrillDiskId>d-xxx</DrillDiskId>\\n <DrillDiskStatus>created</DrillDiskStatus>\\n </PairsInfo>\\n <StartAt>1649750977</StartAt>\\n <RecoverPoint>1691114995</RecoverPoint>\\n <StatusMessage>GROUP_SYNCPOINT_NOT_FOUND</StatusMessage>\\n </Drills>\\n <NextToken>AAAAAdDWBF2****\\n</NextToken>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>1</TotalCount>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</DescribeReplicaGroupDrillsResponse>","errorExample":""}]', - 'title' => '查询复制组当前的容灾演练', - ], - 'StartReplicaGroupDrill' => [ - 'summary' => '您可以通过演练切换功能确保复制流程持续运行,同时将从盘最近恢复点的数据克隆至一块新的云盘,定期验证容灾站点应用的完整性和正确性。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], - ], - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '189135', - 'abilityTreeNodes' => [ - 'FEATUREdiskVW208V', - 'FEATUREdiskAQUAFH', - ], - ], - 'parameters' => [ [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'title' => '地域ID。', - 'description' => '异步复制组的当前从端所属地域ID。您可以通过[DescribeDiskReplicaGroups](~~426614~~)接口查询异步复制组的当前从端地域。'."\n" - .'> 必须在当前从端所属地域下启用容灾演练功能。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'title' => '复制组ID。', - 'description' => '复制组ID。您可以通过[DescribeDiskReplicaGroups](~~426614~~)接口查询异步复制组列表,获得复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-xxxx', - ], + ['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' => '指定的资源不存在。'], ], - [ - 'name' => 'ClientToken', - 'in' => 'query', - 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'StartPairGroupDrillResponse', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'DrillId' => [ - 'title' => '演练ID。', - 'description' => '演练ID。', - 'type' => 'string', - 'example' => 'pg-drill-xxxx', - ], - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], - ], - ], - ], - ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - ], - 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'OperationDenied.RecoverPointNotFound', - 'errorMessage' => 'Recover point is not found.', - ], - [ - 'errorCode' => 'OperationDenied.StartDrillShouldOnDestRegion', - 'errorMessage' => 'Operation should be executed on the secondary region.', - ], - ], - [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => '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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"DrillId\\": \\"pg-drill-xxxx\\",\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<StartReplicaGroupDrillResponse>\\n <DrillId>pg-drill-xxxx</DrillId>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</StartReplicaGroupDrillResponse>","errorExample":""}]', - 'title' => '对异步复制组的从盘启动容灾演练', - 'description' => '从盘容灾演练任务完成后,会给每个复制对在从盘所在可用区创建一块与从盘类型及大小相同的云盘,称之为演练盘,该云盘是按量付费模式,持有最近恢复点的数据,可用于验证应用的完整性和正确性。', - ], - 'ClearReplicaGroupDrill' => [ - 'summary' => '该接口可以清理之前复制组从盘启动的容灾演练,并尝试删除自动创建出来的演练盘。', - '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' => '地域ID。', - 'description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'GroupId', - 'in' => 'query', - 'schema' => [ - 'title' => '复制组ID。', - 'description' => '复制组ID。您可以通过[DescribeDiskReplicaGroups](~~426614~~)接口查询异步复制组列表,获得复制组ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-xxxx', - ], - ], - [ - 'name' => 'DrillId', - 'in' => 'query', - 'schema' => [ - 'title' => '演练ID。', - 'description' => '演练ID。您可以通过[DescribeReplicaGroupDrills](~~2584481~~)接口查询当前地域下复制对的容灾演练。', - 'type' => 'string', - 'required' => true, - 'example' => 'pg-drill-xxxx', - ], - ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'title' => '查询应用详情', + 'summary' => '中心化角色:查询App信息', + 'description' => '## 接口说明'."\n" + ."\n" + .'查询用户定义的App所包含的云盘和快照的标签键值,可通过filterTagKey缩小查询范围。', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + 'product' => ['code' => 'disk', 'title' => '块存储'], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:DescribeApps', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - ], - 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - ], - [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], - ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', - ], - ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<ClearReplicaGroupDrillResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ClearReplicaGroupDrillResponse>","errorExample":""}]', - 'title' => '清理异步复制组的容灾演练', + '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\\": true,\\n \\"EventBridgeSendEnabled\\": true,\\n \\"MonitorSendEnabled\\": true,\\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"}]', ], - 'CreateDedicatedBlockStorageCluster' => [ - 'summary' => '调用CreateDedicatedBlockStorageCluster接口,并指定Azone、Capacity、Type、PeriodUnit等参数,创建专属块存储集群。', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeDedicatedBlockStorageClusterDisks' => [ + 'summary' => '查询一块或多块您已经创建的专属块存储集群的云盘信息。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '116777', - 'abilityTreeNodes' => [ - 'FEATUREdisk1O4P8E', - ], - 'autoTest' => true, - 'tenantRelevance' => 'publicInformation', + 'operationType' => 'get', + 'abilityTreeCode' => '124946', + 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '专属块存储集群所在的地域ID。您可以调用DescribeRegions'."\n" - .'查看最新的阿里云地域列表。', - 'description' => '专属块存储集群所属地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-heyuan', - ], + 'schema' => ['title' => '专属块存储集群所在的地域ID。您可以调用DescribeRegions'."\n" + .'查看最新的阿里云地域列表。', 'description' => '专属块存储集群所在的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan'], ], [ - 'name' => 'Azone', - 'in' => 'query', - 'schema' => [ - 'title' => '专属块存储集群所在的可用区ID。您可以调用DescribeZones'."\n" - .'查看阿里云地域下的可用区。', - 'description' => '专属块存储集群所属可用区ID。您可以调用[DescribeZones](~~25610~~)获取可用区列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-heyuan-b', - ], - ], - [ - 'name' => 'DbscName', - 'in' => 'query', - 'schema' => [ - 'title' => '专属集群名称', - 'description' => '专属块存储集群名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'myDBSCCluster', - ], - ], - [ - 'name' => 'Capacity', - 'in' => 'query', - 'schema' => [ - 'title' => '专属集群容量,单位为GiB,范围为[61440, 2334720],最小递增步长为12288GiB', - 'description' => '专属块存储集群的容量。取值范围为61440~2334720GiB(2280 TiB),最小递增步长为12288 GiB。'."\n" - ."\n" - .'> 当专属块存储集群的容量小于576 TiB时,每TiB支持的最大吞吐量性能不超过52 MB/s。当专属块存储集群的容量大于576 TiB时,每TiB支持的最大吞吐量性能不超过26 MB/s。'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'maximum' => '2334720', - 'minimum' => '61440', - 'example' => '61440', - ], - ], - [ - 'name' => 'Type', - 'in' => 'query', - 'schema' => [ - 'title' => '专属块存储集群性能类型。可能值:'."\n" - .'Standard:基础型。该类型的专属块存储集群中可创建ESSD PL0云盘。'."\n" - .'Premium:性能型。该类型的专属块存储集群中可创建ESSD PL1云盘。', - 'description' => '专属块存储集群性能类型。取值范围:'."\n" - ."\n" - .'- Standard:基础型。该类型的专属块存储集群中可创建ESSD PL0云盘。'."\n" - .'- Premium:性能型。该类型的专属块存储集群中可创建ESSD PL1云盘。'."\n" - ."\n" - .'默认值:Premium。'."\n" - ."\n" - .'关于ESSD云盘的更多信息,请参见[ESSD云盘](~~122389~~)。', - 'type' => 'string', - 'required' => true, - 'example' => 'Premium', - 'enum' => [ - 'Standard', - 'Premium', - 'Elastic', - ], - ], - ], - [ - 'name' => 'ResourceGroupId', - 'in' => 'query', - 'schema' => [ - 'title' => '专属集群所在的企业资源组ID。', - 'description' => '专属块存储集群所在的企业资源组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmvs*******', - ], - ], - [ - 'name' => 'Tag', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '标签列表,最多包含20个子项。', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '专属块存储集群的标签键。', - 'type' => 'string', - 'required' => true, - 'example' => 'tag-key', - ], - 'Value' => [ - 'description' => '专属块存储集群的标签值。', - 'type' => 'string', - 'required' => true, - 'example' => 'tag-value', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 10, - ], - ], - [ - 'name' => 'Period', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'description' => '指定实例购买时长。取值范围:6、7、8、9、10、11、12、24、36。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '12', - ], + 'schema' => ['title' => '分页查询时每页的最大条目数。最大值为500。'."\n" + ."\n" + .'默认值:10', 'description' => '分页查询时每页的最大条目数。最大值为500。'."\n" + ."\n" + .'默认值:10', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10'], ], [ - 'name' => 'PeriodUnit', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'title' => '目前仅支持Month', - 'description' => '包年包月时长的时间单位,即参数`Period`的单位,目前仅支持Month。', - 'type' => 'string', - 'required' => false, - 'example' => 'Month', - 'enum' => [ - 'Month', - ], - ], + 'schema' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。', 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2'], ], [ 'name' => 'DbscId', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'description' => '该参数已废弃。', - 'type' => 'string', - 'deprecated' => true, - 'required' => false, - 'example' => 'test1233', - ], + 'schema' => ['title' => '专属块存储集群ID', 'description' => '专属块存储集群ID。', 'type' => 'string', 'required' => true, 'example' => 'dbsc-cn-od43bf****'], ], ], 'responses' => [ @@ -5814,126 +2544,184 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '20758A-585D-4A41-A9B2-28DA8F4F****', - ], - 'OrderId' => [ - 'title' => 'Id of the order', - 'description' => '订单ID。', - 'type' => 'string', - 'example' => '50155660025****', - ], - 'DbscId' => [ - 'title' => 'Id of the dbsc', - 'description' => '专属块存储集群ID。', - 'type' => 'string', - 'example' => 'dbsc-f8z4d3k4nsgg9okb****', + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****'], + 'NextToken' => ['title' => '本次调用返回的查询凭证值。', 'description' => '本次调用返回的查询凭证值。', 'type' => 'string', 'example' => 'AAAAAdDWBF2'], + 'Disks' => [ + 'description' => '云盘信息组成的集合。', + 'type' => 'object', + 'properties' => [ + 'Disk' => [ + 'title' => '参考ECS DescribeDisks接口的返回结果'."\n" + .'https://help.aliyun.com/document_detail/25514.html', + 'description' => '云盘信息组成的集合。', + 'type' => 'array', + 'items' => [ + 'description' => '云盘信息组成的集合。', + 'type' => 'object', + 'properties' => [ + 'DiskId' => ['description' => '云盘ID。', 'type' => 'string', 'example' => 'd-bp67acfmxazb4p****'], + 'DiskName' => ['description' => '云盘名称。', 'type' => 'string', 'example' => 'testDiskName'], + 'Status' => ['description' => '云盘状态。更多信息,请参见[云盘状态](~~25689~~)。可能值:'."\n" + ."\n" + .'- In_use。'."\n" + .'- Available。'."\n" + .'- Attaching。'."\n" + .'- Detaching。'."\n" + .'- Creating。'."\n" + .'- ReIniting。', 'type' => 'string', 'example' => 'In_use'], + 'Type' => ['description' => '要查询的云盘类型。可能值:'."\n" + ."\n" + .'- system:系统盘。'."\n" + .'- data:数据盘。', 'type' => 'string', 'example' => 'system'], + 'PerformanceLevel' => ['description' => 'ESSD云盘的性能等级。可能值:'."\n" + ."\n" + .'- PL0:单盘最高随机读写IOPS 1万。'."\n" + .'- PL1:单盘最高随机读写IOPS 5万。'."\n" + .'- PL2:单盘最高随机读写IOPS 10万。'."\n" + .'- PL3:单盘最高随机读写IOPS 100万。', 'type' => 'string', 'example' => 'PL0'], + 'BdfId' => ['description' => '该参数正在邀测中,暂未开放使用。', 'type' => 'string', 'example' => 'null'], + 'EnableAutoSnapshot' => ['description' => '云盘是否启用自动快照策略功能。'."\n" + ."\n" + .'>该参数已弃用。创建后的云盘默认启用自动快照策略功能,您只需要为云盘绑定自动快照策略即可正常使用。', 'type' => 'boolean', 'example' => 'false'], + 'StorageSetId' => ['description' => '存储集ID。', 'type' => 'string', 'example' => 'ss-i-bp1j4i2jdf3owlhe****'], + 'StorageSetPartitionNumber' => ['description' => '存储集中的最大分区数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '11'], + 'DeleteAutoSnapshot' => ['description' => '是否同时删除自动快照。可能值:'."\n" + ."\n" + .'- true:删除云盘上的快照。'."\n" + .'- false:保留云盘上的快照。'."\n" + ."\n" + .'通过[CreateSnapshot](~~25524~~)或者在控制台创建的快照,不受这个参数的影响,会始终保留。', 'type' => 'boolean', 'example' => 'false'], + 'StorageClusterId' => ['description' => '云盘所属的专属块存储集群ID。如果您的云盘在公共云块存储集群中,则该返回值为空。', 'type' => 'string', 'example' => 'dbsc-j5e1sf2vaf5he8m2****'], + 'Encrypted' => ['description' => '是否为加密云盘。', 'type' => 'boolean', 'example' => 'false'], + 'MountInstanceNum' => ['description' => '共享存储挂载的实例数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'Description' => ['description' => '云盘描述信息。', 'type' => 'string', 'example' => 'testDescription'], + 'Device' => ['description' => '云盘挂载的实例的设备名,例如/dev/xvdb。您需要注意:'."\n" + ."\n" + .'- 该参数仅在`Status`参数值为`In_use`时才有值,其他状态时为空。'."\n" + ."\n" + .'- 对于开启多重挂载特性的云盘,该值始终为空。您可以通过返回的`Attachment`对象组成的列表,查看云盘所涉及的所有挂载信息。'."\n" + ."\n" + .'> 该参数即将停止使用,为提高代码兼容性,建议您尽量不要使用该参数。', 'type' => 'string', 'example' => '/dev/xvdb'], + 'Portable' => ['description' => '云盘是否可卸载。', 'type' => 'boolean', 'example' => 'false'], + 'ImageId' => ['description' => '创建ECS实例时使用的镜像ID,只有通过镜像创建的云盘才有值,否则为空。这个值在云盘的生命周期内始终不变。', 'type' => 'string', 'example' => 'm-bp13aqm171qynt3u***'], + 'KMSKeyId' => ['description' => '云盘使用的KMS密钥ID。', 'type' => 'string', 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****'], + 'DeleteWithInstance' => ['description' => '是否随实例释放。可能值:'."\n" + ."\n" + .'- true:释放实例时,这块云盘随实例一起释放。'."\n" + .'- false:释放实例时,这块云盘保留不释放。', 'type' => 'boolean', 'example' => 'true'], + 'DetachedTime' => ['description' => '该云盘最后一次卸载时间。', 'type' => 'string', 'example' => '2021-06-07T21:01:22Z'], + 'SourceSnapshotId' => ['description' => '创建云盘使用的快照ID。'."\n" + ."\n" + .'如果创建云盘时,没有指定快照,则该参数值为空。该参数值在云盘的生命周期内始终不变。', 'type' => 'string', 'example' => 's-bp67acfmxazb4p****'], + 'InstanceId' => ['description' => '云盘挂载的实例ID。您需要注意:'."\n" + ."\n" + .'- 该参数值仅在`Status`参数值为`In_use`时才有值,其他状态时为空。'."\n" + ."\n" + .'- 对于开启多重挂载特性的云盘,该值始终为空。您可以通过返回的`Attachment`对象组成的列表,查看云盘所涉及的所有挂载信息。', 'type' => 'string', 'example' => 'i-bp67acfmxazb4q****'], + 'Size' => ['description' => '云盘大小,单位为GiB。', 'type' => 'integer', 'format' => 'int32', 'example' => '60'], + 'RegionId' => ['description' => '云盘所属的地域ID。', 'type' => 'string', 'example' => 'cn-heyuan'], + 'ZoneId' => ['description' => '云盘所属的可用区ID。', 'type' => 'string', 'example' => 'cn-heyuan-i'], + 'AttachedTime' => ['description' => '该云盘最后一次挂载的时间。按照[ISO 8601](~~25696~~)标准表示,使用UTC+0时间。格式为:yyyy-MM-ddThh:mmZ。', 'type' => 'string', 'example' => '2021-06-07T06:08:56Z'], + 'Category' => ['description' => '云盘或本地盘种类为cloud_essd,表示ESSD云盘。', 'type' => 'string', 'example' => 'cloud_essd'], + 'MultiAttach' => ['description' => '云盘是否开启了多重挂载特性。', 'type' => 'string', 'example' => 'Disabled'], + 'Tags' => [ + 'description' => '云盘的标签集合。', + 'type' => 'array', + 'items' => [ + 'description' => '云盘的标签集合。', + 'type' => 'object', + 'properties' => [ + 'TagValue' => ['description' => '标签值。', 'type' => 'string', 'example' => 'TestValue'], + 'TagKey' => ['description' => '标签键。', 'type' => 'string', 'example' => 'TestKey'], + ], + ], + ], + 'DiskChargeType' => ['description' => '云盘的计费方式。可能值:'."\n" + ."\n" + .'- PrePaid:包年包月。'."\n" + .'- PostPaid:按量付费。', 'type' => 'string', 'example' => 'PrePaid'], + 'IOPS' => ['description' => '每秒读写(I/O)操作的次数上限,单位:次/s。', 'type' => 'integer', 'format' => 'int64', 'example' => '4000'], + 'Throughput' => ['description' => '单位时间内可以成功传输的数据数量,单位:MB/s。', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], + 'ProvisionedIops' => ['description' => 'ESSD AutoPL云盘预配置的读写IOPS。可能值:0~min{50000, 1000*容量-基准性能}。'."\n" + ."\n" + .'基准性能=min{1,800+50*容量, 50,000}。'."\n" + ."\n" + .'当`DiskCategory`取值为`cloud_auto`时才支持设置该参数。更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', 'type' => 'integer', 'format' => 'int64', 'example' => '40000'], + 'BurstingEnabled' => ['description' => '是否开启Burst(性能突发)。可能值:'."\n" + ."\n" + .'- true:是。'."\n" + .'- false:否。'."\n" + ."\n" + .'当`DiskCategory`取值为`cloud_auto`时才支持设置该参数。更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', 'type' => 'boolean', 'example' => 'false'], + ], + ], + ], + ], ], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'InvalidPayMethod', - 'errorMessage' => 'The specified pay method is not valid.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], + ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => '当前用户无权限对当前资源执行任何操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => '当前用户无权限执行该操作。请检查您的账号权限或者咨询您的主账号管理员。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'InvalidRegionId.NotFound', - 'errorMessage' => 'The specified RegionId does not exist.', - ], - [ - 'errorCode' => 'InvalidResourceId.NotFound', - 'errorMessage' => 'The specified ResourceIds are not found in our records.', - ], - [ - 'errorCode' => 'MissingParameter.ResourceType', - 'errorMessage' => 'The parameter - ResourceType should not be null', - ], - [ - 'errorCode' => 'InvalidResourceGroup.NotFound', - 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"20758A-585D-4A41-A9B2-28DA8F4F****\\",\\n \\"OrderId\\": \\"50155660025****\\",\\n \\"DbscId\\": \\"dbsc-f8z4d3k4nsgg9okb****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDedicatedBlockStorageClusterResponse>\\n <RequestId>20758A-585D-4A41-A9B2-28DA8F4F****</RequestId>\\n <OrderId>50155660025****</OrderId>\\n <DbscId>dbsc-f8z4d3k4nsgg9okb****</DbscId>\\n</CreateDedicatedBlockStorageClusterResponse>","errorExample":""}]', - 'title' => '创建专属块存储集群', - 'description' => '## 接口说明'."\n" - ."\n" - .'- 专属块存储集群(Dedicated Block Storage Cluster)是与其他公共云块存储集群物理隔离、所有者可独享整个集群资源的块存储服务。<props="china">更多信息,请参见[什么是专属块存储集群](~~208883~~)。</props>'."\n" + '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' => '查询专属块存储集群中的云盘列表', + 'description' => '- 支持以下两种方式查看返回数据:'."\n" + .' - 方式一:通过`NextToken`设置查询凭证(Token),其取值是上一次调用DescribeDisks返回的`NextToken`参数值,再通过`MaxResults`设置单页查询的最大条目数。'."\n" + .' - 方式二:通过`PageSize`设置单页返回的条目数,再通过`PageNumber`设置页码。'."\n" ."\n" - .'- 专属块存储集群上创建的云盘只能挂载到同可用区的ECS实例上。您在创建专属块存储集群前,需要规划好资源所属的地域和可用区。'."\n" + .' 以上两种方式只能任选其中之一。当返回的条目数较多时,推荐使用方式一。如果设置了`NextToken`,则请求参数`PageSize`和`PageNumber`将失效,且返回数据中的`TotalCount`无效。'."\n" ."\n" - .'- 专属块存储集群分为基础型和性能型,您在创建集群时,请根据实际需求选择适用的集群性能类型。'."\n" + .'- 开启多重挂载特性的云盘可以挂载到多个实例上,您可以根据返回结果的`Attachment`列表查看云盘涉及的所有挂载信息。'."\n" ."\n" - .'- 创建专属块存储集群需要支付一定的费用。<props="china">更多信息,请参见[计费说明](~~208884~~)。</props>', + .'通过阿里云CLI调用API时,不同数据类型的请求参数取值必须遵循格式要求。更多信息,请参见[CLI参数格式说明](~~110340~~)。', + 'changeSet' => [ + ['createdAt' => '2023-04-06T09:57:07.000Z', 'description' => '响应参数发生变更'], + ], + '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' => [ 'summary' => '查询专属集群OpenApi', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -5944,30 +2732,18 @@ 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '104950', - 'abilityTreeNodes' => [ - 'FEATUREdisk1O4P8E', - ], + 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'formData', - 'schema' => [ - 'description' => '地域ID。您可以调用[DescribeRegions](~~2680071~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-heyuan', - ], + 'schema' => ['description' => '地域ID。您可以调用[DescribeRegions](~~2680071~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan'], ], [ 'name' => 'AzoneId', 'in' => 'formData', - 'schema' => [ - 'description' => '可用区ID,您可以调用[DescribeZones](~~25610~~)获取可用区列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-heyuan-b', - ], + 'schema' => ['description' => '可用区ID,您可以调用[DescribeZones](~~25610~~)获取可用区列表。', 'type' => 'string', 'required' => false, 'example' => 'cn-heyuan-b'], ], [ 'name' => 'DedicatedBlockStorageClusterId', @@ -5976,12 +2752,7 @@ 'schema' => [ 'description' => '由一个或多个专属块存储集群id组成的数组格式', 'type' => 'array', - 'items' => [ - 'description' => '专属块存储集群id', - 'type' => 'string', - 'required' => false, - 'example' => 'dbsc-cn-jaj3cli530g', - ], + 'items' => ['description' => '专属块存储集群id', 'type' => 'string', 'required' => false, 'example' => 'dbsc-cn-jaj3cli530g'], 'required' => false, 'maxItems' => 10, ], @@ -6001,41 +2772,25 @@ ."\n" .'可同时设置多个状态,取值范围为1~4。', 'type' => 'array', - 'items' => [ - 'description' => '专属块存储集群的状态。取值范围:'."\n" - ."\n" - .'- Preparing:待交付。'."\n" - .'- Running:运行中。'."\n" - .'- Expired:集群到期。'."\n" - .'- Offline:下线。'."\n" - ."\n" - .'N表示可同时设置多个状态,N的取值范围为1~4。', - 'type' => 'string', - 'required' => false, - 'example' => 'Running', - ], + 'items' => ['description' => '专属块存储集群的状态。取值范围:'."\n" + ."\n" + .'- Preparing:待交付。'."\n" + .'- Running:运行中。'."\n" + .'- Expired:集群到期。'."\n" + .'- Offline:下线。'."\n" + ."\n" + .'N表示可同时设置多个状态,N的取值范围为1~4。', 'type' => 'string', 'required' => false, 'example' => 'Running'], 'required' => false, - 'enumValueTitles' => [ - 'Running' => 'Running', - 'Offline' => 'Offline', - 'Expired' => 'Expired', - 'Preparing' => 'Preparing', - ], + 'enumValueTitles' => ['Running' => 'Running', 'Offline' => 'Offline', 'Expired' => 'Expired', 'Preparing' => 'Preparing'], 'maxItems' => 10, ], ], [ 'name' => 'Category', 'in' => 'formData', - 'schema' => [ - 'title' => '专属支持创建的云盘类型 (ephemeral: 本地 sata xen, ephemeral_hio: 本地 ssd xen, cloud: 普通云盘, cloud_ssd: 目前公共云没有io5了?, local_ssd: 预配置ssd 本地ssd kvm, cloud_efficiency: 高效云盘, instance_storage_ssd: instance_storage_ssd 容量随规格绑定售卖, spool, local_ssd_pro: 实例存储的IO密集型,设计上瑶池标记为io10,后羿实际为io9, local_hdd_pro: 实例存储吞吐密集型,实例存储不用填数据盘大小范围, cloud_essd: ESSD, cloud_gt: 通用型云盘 集团大促使用, cloud_xssd: 性能型云盘 集团大促使用, cloud_pperf: 专有云环境高级性能云盘, cloud_sperf: 专有云环境标准性能云盘, cloud_auto: auto pl 磁盘size为40GB起卖, cloud_plx: pl-x)', - 'description' => '专属块存储集群可创建的云盘类型。'."\n" - ."\n" - .'取值仅支持cloud_essd,即ESSD云盘。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_essd', - ], + 'schema' => ['title' => '专属支持创建的云盘类型 (ephemeral: 本地 sata xen, ephemeral_hio: 本地 ssd xen, cloud: 普通云盘, cloud_ssd: 目前公共云没有io5了?, local_ssd: 预配置ssd 本地ssd kvm, cloud_efficiency: 高效云盘, instance_storage_ssd: instance_storage_ssd 容量随规格绑定售卖, spool, local_ssd_pro: 实例存储的IO密集型,设计上瑶池标记为io10,后羿实际为io9, local_hdd_pro: 实例存储吞吐密集型,实例存储不用填数据盘大小范围, cloud_essd: ESSD, cloud_gt: 通用型云盘 集团大促使用, cloud_xssd: 性能型云盘 集团大促使用, cloud_pperf: 专有云环境高级性能云盘, cloud_sperf: 专有云环境标准性能云盘, cloud_auto: auto pl 磁盘size为40GB起卖, cloud_plx: pl-x)', 'description' => '专属块存储集群可创建的云盘类型。'."\n" + ."\n" + .'取值仅支持cloud_essd,即ESSD云盘。', 'type' => 'string', 'required' => false, 'example' => 'cloud_essd'], ], [ 'name' => 'Tag', @@ -6049,20 +2804,8 @@ 'description' => '标签信息。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'title' => '资源的标签键', - 'description' => '专属集群的标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestKey', - ], - 'Value' => [ - 'title' => '资源的标签值', - 'description' => '专属集群的标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestValue', - ], + 'Key' => ['title' => '资源的标签键', 'description' => '专属集群的标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], + 'Value' => ['title' => '资源的标签值', 'description' => '专属集群的标签值。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'], ], 'required' => false, ], @@ -6073,72 +2816,33 @@ [ 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'title' => '资源组ID', - 'description' => '专属集群所在的企业资源组ID。您可以调用[ListResourceGroups](~~158855~~)查询资源组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmvs4****', - ], + 'schema' => ['title' => '资源组ID', 'description' => '专属集群所在的企业资源组ID。您可以调用[ListResourceGroups](~~158855~~)查询资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs4****'], ], [ 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'type' => 'string', - 'required' => false, - 'example' => '2c4d848a9628fb5e', - ], + 'schema' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'type' => 'string', 'required' => false, 'example' => '2c4d848a9628fb5e'], ], [ 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'title' => 'Token方式最大个数。', - 'description' => 'Token方式最大个数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['title' => 'Token方式最大个数。', 'description' => 'Token方式最大个数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时设置的每页行数。', - 'description' => '分页查询时设置的每页行数。'."\n" - .'取值范围1-100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['title' => '分页查询时设置的每页行数。', 'description' => '分页查询时设置的每页行数。'."\n" + .'取值范围1-100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'title' => '分页模式查询时的页数。', - 'description' => '分页查询时的页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['title' => '分页模式查询时的页数。', 'description' => '分页查询时的页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-426655440000', - ], + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000'], ], ], 'responses' => [ @@ -6155,194 +2859,55 @@ 'description' => '由一个或多个专属块存储集群信息组成的数组。', 'type' => 'object', 'properties' => [ - 'DedicatedBlockStorageClusterId' => [ - 'description' => '专属块存储集群ID。', - 'type' => 'string', - 'example' => 'dbsc-f8z4d3k4nsgg9okb****', - ], - 'DedicatedBlockStorageClusterName' => [ - 'description' => '专属块存储集群名称。', - 'type' => 'string', - 'example' => 'myDBSCCluster', - ], - 'Description' => [ - 'description' => '专属块存储集群的描述信息。', - 'type' => 'string', - 'example' => 'This is description.', - ], - 'RegionId' => [ - 'description' => '专属块存储集群所在地域ID。', - 'type' => 'string', - 'example' => 'cn-heyuan', - ], - 'ZoneId' => [ - 'description' => '专属块存储集群所属的可用区ID。', - 'type' => 'string', - 'example' => 'cn-heyuan-b', - ], - 'Status' => [ - 'title' => 'Unknown: 未知状态, Init: 初始化, Preparing: 待交付, Running: 运行中, Expired: 集群到期, Offline: 下线, Deleted: 删除', - 'description' => '专属块存储集群的状态。可能值:'."\n" - ."\n" - .'- Preparing:待交付。'."\n" - .'- Running:运行中。'."\n" - .'- Expired:集群到期。'."\n" - .'- Offline:下线。', - 'type' => 'string', - 'example' => 'Running', - ], - 'Category' => [ - 'description' => '专属块存储集群可创建的云盘类型。', - 'type' => 'string', - 'example' => 'cloud_essd', - ], - 'Type' => [ - 'description' => '专属块存储集群性能类型。可能值:'."\n" - ."\n" - .'- Standard:基础型。该类型的专属块存储集群中可创建ESSD PL0云盘。'."\n" - .'- Premium:性能型。该类型的专属块存储集群中可创建ESSD PL1云盘。', - 'type' => 'string', - 'example' => 'Standard', - ], - 'PerformanceLevel' => [ - 'title' => 'DEFAULT: DEFAULT, PL0: PL0, PL1: PL1, PL2: PL2, PL3: PL3, NULL: PL null。NULL有两种含义:1.ECS中的DEFAULT存储为NULL,适配ECS 2.真实的NULL', - 'description' => '云盘性能等级,可能值:'."\n" - ."\n" - .'- PL0 。'."\n" - .'- PL1 。'."\n" - .'- PL2 。'."\n" - .'- PL3。'."\n" - ."\n" - .'> 仅在SupportedCategory=cloud_essd有效。', - 'type' => 'string', - 'example' => 'PL0', - ], - 'SupportedCategory' => [ - 'description' => '暂未支持该参数。', - 'type' => 'string', - 'example' => 'cloud_essd', - ], - 'CreateTime' => [ - 'description' => '专属块存储集群创建时间,格式为Unix时间戳,单位为秒。', - 'type' => 'string', - 'example' => '1657113211', - ], - 'ExpiredTime' => [ - 'description' => '专属块存储集群到期时间,格式为Unix时间戳,单位为秒。', - 'type' => 'string', - 'example' => '1673020800', - ], + 'DedicatedBlockStorageClusterId' => ['description' => '专属块存储集群ID。', 'type' => 'string', 'example' => 'dbsc-f8z4d3k4nsgg9okb****'], + 'DedicatedBlockStorageClusterName' => ['description' => '专属块存储集群名称。', 'type' => 'string', 'example' => 'myDBSCCluster'], + 'Description' => ['description' => '专属块存储集群的描述信息。', 'type' => 'string', 'example' => 'This is description.'], + 'RegionId' => ['description' => '专属块存储集群所在地域ID。', 'type' => 'string', 'example' => 'cn-heyuan'], + 'ZoneId' => ['description' => '专属块存储集群所属的可用区ID。', 'type' => 'string', 'example' => 'cn-heyuan-b'], + 'Status' => ['title' => 'Unknown: 未知状态, Init: 初始化, Preparing: 待交付, Running: 运行中, Expired: 集群到期, Offline: 下线, Deleted: 删除', 'description' => '专属块存储集群的状态。可能值:'."\n" + ."\n" + .'- Preparing:待交付。'."\n" + .'- Running:运行中。'."\n" + .'- Expired:集群到期。'."\n" + .'- Offline:下线。', 'type' => 'string', 'example' => 'Running'], + 'Category' => ['description' => '专属块存储集群可创建的云盘类型。', 'type' => 'string', 'example' => 'cloud_essd'], + 'Type' => ['description' => '专属块存储集群性能类型。可能值:'."\n" + ."\n" + .'- Standard:基础型。该类型的专属块存储集群中可创建ESSD PL0云盘。'."\n" + .'- Premium:性能型。该类型的专属块存储集群中可创建ESSD PL1云盘。', 'type' => 'string', 'example' => 'Standard'], + 'PerformanceLevel' => ['title' => 'DEFAULT: DEFAULT, PL0: PL0, PL1: PL1, PL2: PL2, PL3: PL3, NULL: PL null。NULL有两种含义:1.ECS中的DEFAULT存储为NULL,适配ECS 2.真实的NULL', 'description' => '云盘性能等级,可能值:'."\n" + ."\n" + .'- PL0 。'."\n" + .'- PL1 。'."\n" + .'- PL2 。'."\n" + .'- PL3。'."\n" + ."\n" + .'> 仅在SupportedCategory=cloud_essd有效。', 'type' => 'string', 'example' => 'PL0'], + 'SupportedCategory' => ['description' => '暂未支持该参数。', 'type' => 'string', 'example' => 'cloud_essd'], + 'CreateTime' => ['description' => '专属块存储集群创建时间,格式为Unix时间戳,单位为秒。', 'type' => 'string', 'example' => '1657113211'], + 'ExpiredTime' => ['description' => '专属块存储集群到期时间,格式为Unix时间戳,单位为秒。', 'type' => 'string', 'example' => '1673020800'], 'DedicatedBlockStorageClusterCapacity' => [ 'description' => '专属块存储集群的存储容量信息。', 'type' => 'object', 'properties' => [ - 'AvailableCapacity' => [ - 'title' => '当前集群可用的容量,单位为GB', - 'description' => '专属块存储集群的可用容量,单位为GiB。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '61440', - ], - 'TotalCapacity' => [ - 'title' => '当前集群总容量,单位为GB', - 'description' => '专属块存储集群的总容量,单位为GiB。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '61440', - ], - 'DeliveryCapacity' => [ - 'title' => '待交付容量,单位为GB', - 'description' => '待交付容量,单位为GiB。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'UsedCapacity' => [ - 'title' => '已使用容量,单位为GB', - 'description' => '当前集群的已使用(已创盘)容量,单位为GiB。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1440', - ], - 'ClusterDeliveryCapacity' => [ - 'title' => '待交付专属集群订单容量,单位为GB', - 'description' => '待交付专属集群订单容量,单位为GB', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'ClusterAvailableCapacity' => [ - 'title' => '已交付专属集群订单容量,单位为GB', - 'description' => '已交付专属集群订单容量,单位为GB', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '61440', - ], - 'AvailableDeviceCapacity' => [ - 'title' => '当前集群允许创盘总容量(已交付订单容量),单位为GB', - 'description' => '当前集群允许创盘总容量(已交付订单容量),单位为GB', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '61440', - ], - 'TotalDeviceCapacity' => [ - 'title' => '当前集群总创盘容量(已下单订单容量),单位为GB', - 'description' => '当前集群总创盘容量(已下单订单容量),单位为GB', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '61440', - ], - 'UsedDeviceCapacity' => [ - 'title' => '实际创盘容量,单位为GB', - 'description' => '实际创盘容量,单位为GB', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '32000', - ], - 'AvailableSpaceCapacity' => [ - 'title' => '开启精简配置后显示', - 'description' => '开启精简配置后显示', - 'type' => 'number', - 'format' => 'double', - 'example' => '40000.3', - ], - 'TotalSpaceCapacity' => [ - 'title' => '开启精简配置后显示', - 'description' => '开启精简配置后显示', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '73728', - ], - 'UsedSpaceCapacity' => [ - 'title' => '开启精简配置后显示', - 'description' => '开启精简配置后显示', - 'type' => 'number', - 'format' => 'double', - 'example' => '33727.7', - ], + 'AvailableCapacity' => ['title' => '当前集群可用的容量,单位为GB', 'description' => '专属块存储集群的可用容量,单位为GiB。', 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], + 'TotalCapacity' => ['title' => '当前集群总容量,单位为GB', 'description' => '专属块存储集群的总容量,单位为GiB。', 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], + 'DeliveryCapacity' => ['title' => '待交付容量,单位为GB', 'description' => '待交付容量,单位为GiB。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'UsedCapacity' => ['title' => '已使用容量,单位为GB', 'description' => '当前集群的已使用(已创盘)容量,单位为GiB。', 'type' => 'integer', 'format' => 'int64', 'example' => '1440'], + 'ClusterDeliveryCapacity' => ['title' => '待交付专属集群订单容量,单位为GB', 'description' => '待交付专属集群订单容量,单位为GB', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'ClusterAvailableCapacity' => ['title' => '已交付专属集群订单容量,单位为GB', 'description' => '已交付专属集群订单容量,单位为GB', 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], + 'AvailableDeviceCapacity' => ['title' => '当前集群允许创盘总容量(已交付订单容量),单位为GB', 'description' => '当前集群允许创盘总容量(已交付订单容量),单位为GB', 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], + 'TotalDeviceCapacity' => ['title' => '当前集群总创盘容量(已下单订单容量),单位为GB', 'description' => '当前集群总创盘容量(已下单订单容量),单位为GB', 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], + 'UsedDeviceCapacity' => ['title' => '实际创盘容量,单位为GB', 'description' => '实际创盘容量,单位为GB', 'type' => 'integer', 'format' => 'int64', 'example' => '32000'], + 'AvailableSpaceCapacity' => ['title' => '开启精简配置后显示', 'description' => '开启精简配置后显示', 'type' => 'number', 'format' => 'double', 'example' => '40000.3'], + 'TotalSpaceCapacity' => ['title' => '开启精简配置后显示', 'description' => '开启精简配置后显示', 'type' => 'integer', 'format' => 'int64', 'example' => '73728'], + 'UsedSpaceCapacity' => ['title' => '开启精简配置后显示', 'description' => '开启精简配置后显示', 'type' => 'number', 'format' => 'double', 'example' => '33727.7'], ], ], - 'AliUid' => [ - 'description' => '用户id', - 'type' => 'string', - 'example' => '1234560123456****', - ], - 'StorageDomain' => [ - 'description' => 'StorageDomain', - 'type' => 'string', - 'example' => 'StorageDomain', - ], - 'EnableThinProvision' => [ - 'description' => '开启精简配置', - 'type' => 'boolean', - 'example' => 'true', - ], - 'SizeOverSoldRatio' => [ - 'description' => '容量超卖系数', - 'type' => 'number', - 'format' => 'double', - 'example' => '1.2', - ], + 'AliUid' => ['description' => '用户id', 'type' => 'string', 'example' => '1234560123456****'], + 'StorageDomain' => ['description' => 'StorageDomain', 'type' => 'string', 'example' => 'StorageDomain'], + 'EnableThinProvision' => ['description' => '开启精简配置', 'type' => 'boolean', 'example' => 'true'], + 'SizeOverSoldRatio' => ['description' => '容量超卖系数', 'type' => 'number', 'format' => 'double', 'example' => '1.2'], 'Tags' => [ 'title' => 'the dbsc tags', 'description' => '专属集群的标签。', @@ -6351,129 +2916,47 @@ 'description' => '标签信息。', 'type' => 'object', 'properties' => [ - 'TagKey' => [ - 'title' => '资源的标签键', - 'description' => '专属集群的标签键。', - 'type' => 'string', - 'example' => 'testKey', - ], - 'TagValue' => [ - 'title' => '资源的标签值', - 'description' => '专属集群的标签值。', - 'type' => 'string', - 'example' => 'testValue', - ], + 'TagKey' => ['title' => '资源的标签键', 'description' => '专属集群的标签键。', 'type' => 'string', 'example' => 'testKey'], + 'TagValue' => ['title' => '资源的标签值', 'description' => '专属集群的标签值。', 'type' => 'string', 'example' => 'testValue'], ], ], ], - 'ResourceGroupId' => [ - 'title' => 'the resource group id', - 'description' => '专属集群所在的企业资源组ID。您可以调用[ListResourceGroups](~~158855~~)查询资源组ID。', - 'type' => 'string', - 'example' => 'rg-aekzsoux****', - ], + 'ResourceGroupId' => ['title' => 'the resource group id', 'description' => '专属集群所在的企业资源组ID。您可以调用[ListResourceGroups](~~158855~~)查询资源组ID。', 'type' => 'string', 'example' => 'rg-aekzsoux****'], ], ], ], - 'NextToken' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '本次调用返回的查询凭证值。', - 'type' => 'string', - 'example' => 'AAAAAdDWBF2', - ], - 'PageNumber' => [ - 'title' => '分页模式查询时的页数。', - 'description' => '参数页码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'title' => '分页模式查询时的单页记录数量。', - 'description' => '参数页行数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'title' => '总个数', - 'description' => '分页查询时的结果总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '20', - ], - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****', - ], + 'NextToken' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '本次调用返回的查询凭证值。', 'type' => 'string', 'example' => 'AAAAAdDWBF2'], + 'PageNumber' => ['title' => '分页模式查询时的页数。', 'description' => '参数页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['title' => '分页模式查询时的单页记录数量。', 'description' => '参数页行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['title' => '总个数', 'description' => '分页查询时的结果总条数。', 'type' => 'integer', 'format' => 'int64', 'example' => '20'], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', '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.', - ], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidDiskCategory.NotSupported', - 'errorMessage' => 'The specified disk category is not supported.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], + ['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.', - ], - [ - 'errorCode' => 'InvalidRegionId.NotFound', - 'errorMessage' => 'The specified RegionId does not exist.', - ], - [ - 'errorCode' => 'InvalidResourceId.NotFound', - 'errorMessage' => 'The specified ResourceIds are not found in our records.', - ], - [ - 'errorCode' => 'InvalidResourceType.NotFound', - 'errorMessage' => 'The ResourceType provided does not exist in our records.', - ], - [ - 'errorCode' => 'InvalidZoneId.NotFound', - 'errorMessage' => 'The specified ZoneId does not exist.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ @@ -6488,99 +2971,200 @@ ."\n" .'- 请求参数的作用类似于一个过滤器,过滤器为逻辑与(AND)关系。如果某一参数为空,则过滤器不起作用。'."\n" .'- 在分页查询时,推荐您使用MaxResults与NextToken参数进行查询。具体使用说明:分页查询首页时,仅需设置MaxResults以限制返回信息的条目数,返回结果中的NextToken将作为查询后续页的凭证。查询后续页时,将NextToken参数设置为上一次返回结果中获取到的NextToken作为查询凭证,并设置MaxResults限制返回条目数。', - ], - 'ModifyDedicatedBlockStorageClusterAttribute' => [ - 'summary' => '修改专属块存储集群的信息。', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', + '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' => '查询诊断报告', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '138430', - 'abilityTreeNodes' => [ - 'FEATUREdisk1O4P8E', - ], + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '227402', + 'abilityTreeNodes' => ['FEATUREdisk2F270T'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'DiagnoseType', 'in' => 'query', - 'schema' => [ - 'title' => '专属块存储集群所在的地域ID。您可以调用DescribeRegions'."\n" - .'查看最新的阿里云地域列表。', - 'description' => '专属块存储集群所属地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-heyuan', - ], + 'schema' => ['title' => '诊断类型', 'description' => '诊断类型。可选的有:'."\n" + ."\n" + .'- Performance:性能诊断', 'type' => 'string', 'required' => false, 'example' => 'Performance'], ], [ - 'name' => 'DbscId', + 'name' => 'ResourceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => '专属集群ID', - 'description' => '专属块存储集群ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'dbsc-cn-od43bf****', + 'title' => '资源id', + 'description' => '资源ID。', + 'type' => 'array', + 'items' => ['description' => '资源ID列表。', 'type' => 'string', 'required' => false, 'example' => 'd-bp14d1obw9qijunh8div'], + 'required' => false, + 'example' => 'd-asb1s8***', + 'maxItems' => 100, ], ], [ - 'name' => 'DbscName', + 'name' => 'ReportIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => '修改后的专属集群名称,不为空', - 'description' => '修改后的专属块存储集群的名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'my-test-dbsc', + 'title' => '诊断报告id', + 'description' => '诊断报告ID。', + 'type' => 'array', + 'items' => ['description' => '诊断报告列表。', 'type' => 'string', 'required' => false, 'example' => 'report-da21a****'], + 'required' => false, + 'example' => 'report-asb1s8***', + 'maxItems' => 100, ], ], [ - 'name' => 'Description', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'title' => '修改后的专属集群描述信息', - 'description' => '描述信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'schema' => ['description' => '资源诊断的起始时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', 'type' => 'string', 'required' => false, 'example' => '2024-08-26T01:00:00Z'], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => ['description' => '资源诊断的结束时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', 'type' => 'string', 'required' => false, 'example' => '2024-08-26T02:06:00Z'], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => ['description' => '诊断报告状态。可选的值:'."\n" + .'- Running'."\n" + .'- Success'."\n" + .'- TimeOut'."\n" + .'- Fail', 'type' => 'string', 'required' => false, 'example' => 'Running'], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询块存储数据洞察支持的地域列表。', 'type' => 'string', 'required' => false, 'example' => 'cn-zhangjiakou'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '客户端幂等token', - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。'."\n" - ."\n" - .'ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => '分页查询时每页的最大条目数。取值范围:1~30。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '1', 'example' => '10', 'default' => '10'], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => '用来标记当前开始读取的位置。置空表示从头开始。', 'type' => 'string', 'required' => false, 'example' => 'adf8a2534f1c0a23e0b5e8707e68181f'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => '请求ID。', + 'title' => 'DescribeDiagnoseReportResponse', + 'description' => 'DescribeDiagnoseReportResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****', + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****'."\n"], + 'TotalCount' => ['description' => '查询结果总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'NextToken' => ['description' => '本次调用返回的查询凭证值。', 'type' => 'string', 'example' => 'f07b150eadfa1d7a'], + 'Reports' => [ + 'description' => '诊断报告列表。', + 'type' => 'array', + 'items' => [ + 'description' => '诊断报告列表。', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => '诊断报告状态。可能的值:'."\n" + .'- Running'."\n" + .'- Success'."\n" + .'- TimeOut'."\n" + .'- Fail'."\n" + ."\n" + .'当Status为Success的时候,Severity和Events字段有效。', 'type' => 'string', 'example' => 'Success'], + 'ReportId' => ['description' => '诊断报告ID。', 'type' => 'string', 'example' => 'report-sag8d****'], + 'ResourceType' => ['description' => '资源类型。当前可能的值有:'."\n" + ."\n" + .'- Disk', 'type' => 'string', 'example' => 'Disk'], + 'Severity' => ['description' => '诊断严重等级。严重等级由轻到重如下:'."\n" + ."\n" + .'- Info:有关联信息,可能与异常相关。'."\n" + .'- Warn:有关联信息,可能导致异常。'."\n" + .'- Critical:有关键异常。', 'type' => 'string', 'example' => 'Warn'], + 'FinishedTime' => ['description' => '诊断报告结束时间,Unix/POSIX 秒级时间戳。', 'type' => 'integer', 'format' => 'int64', 'example' => '1727239295'], + 'DiagnoseStartTime' => ['description' => '资源诊断的起始时间戳。', 'type' => 'integer', 'format' => 'int64', 'example' => '1727229294'], + 'ResourceId' => ['description' => '资源ID。', 'type' => 'string', 'example' => 'd-wz95ycu****'], + 'Events' => [ + 'description' => '诊断出的问题列表。', + 'type' => 'array', + 'items' => [ + 'description' => '诊断出的问题列表。', + 'type' => 'object', + 'properties' => [ + 'RecommendParams' => ['description' => '事件发生后的推荐操作的参数。', 'type' => 'string', 'example' => '4096'], + 'Description' => ['description' => '事件描述。', 'type' => 'string', 'example' => 'test'], + 'RecommendAction' => ['description' => '事件发生后的推荐操作。可能值:'."\n" + ."\n" + .'- ModifyDiskSpec:变配'."\n" + .'- CreateSnapshot:打快照'."\n" + .'- ResizeDisk:扩容'."\n" + .'- AdjustProvision:调节预配置等'."\n" + .'- ModifyInstanceSpec:实例变配', 'type' => 'string', 'example' => 'ResizeDisk'], + 'StartTime' => ['description' => '事件开始时间戳(毫秒级)。', 'type' => 'integer', 'format' => 'int64', 'example' => '1755756214000'], + 'Severity' => ['description' => '诊断问题严重程度,严重等级由轻到重如下:'."\n" + ."\n" + .'- Info:有关联信息,可能与异常相关。'."\n" + .'- Warn:有关联信息,可能导致异常。'."\n" + .'- Critical:有关键异常。', 'type' => 'string', 'example' => 'Warn'], + 'EventName' => ['description' => '问题名称。可能值:'."\n" + ."\n" + .'- NoSnapshot:数据保护'."\n" + .'- BurstIOTriggered:突发 IO'."\n" + .'- CostOptimizationNeeded:成本优化'."\n" + .'- DiskSpecNotMatchedWithInstance:实例与磁盘规格不匹配'."\n" + .'- DiskIONo4kAligned:非 4K 对齐读写'."\n" + .'- DiskIOHang:磁盘有 IOHang 发生'."\n" + .'- InstanceIOPSExceedInstanceMaxLimit:实例 IOPS 到达上限'."\n" + .'- InstanceBPSExceedInstanceMaxLimit:实例 BPS 到达上限'."\n" + .'- DiskIOPSExceedInstanceMaxLimit:磁盘 IOPS 到达实例上限'."\n" + .'- DiskBPSExceedInstanceMaxLimit:磁盘 BPS 到达实例上限'."\n" + .'- DiskIOPSExceedDiskMaxLimit:磁盘 IOPS 到达磁盘上限'."\n" + .'- DiskBPSExceedDiskMaxLimit:磁盘 BPS 到达磁盘上限', 'type' => 'string', 'example' => 'DiskIOPSExceedDiskMaxLimit'], + ], + ], + ], + 'DiagnoseEndTime' => ['description' => '资源诊断的结束时间戳。', 'type' => 'integer', 'format' => 'int64', 'example' => '1727239294'], + 'CreationTime' => ['description' => '诊断报告创建时间,Unix/POSIX 秒级时间戳。', 'type' => 'integer', 'format' => 'int64', 'example' => '1727239294'], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-zhangjiakou'], + 'DiagnoseType' => ['description' => '诊断类型。', 'type' => 'string', 'example' => 'Performance'], + 'AliUid' => ['description' => '用户ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '196380451****'], + ], + ], ], ], ], @@ -6588,87 +3172,66 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'InvalidRegionId.NotFound', - 'errorMessage' => 'The specified RegionId does not exist.', - ], - [ - 'errorCode' => 'InvalidResourceId.NotFound', - 'errorMessage' => 'The specified ResourceIds are not found in our records.', - ], - [ - 'errorCode' => 'InvalidResourceType.NotFound', - 'errorMessage' => 'The ResourceType provided does not exist in our records.', - ], - [ - 'errorCode' => 'MissingParameter.ResourceType', - 'errorMessage' => 'The parameter - ResourceType should not be null', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], + 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D0****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDedicatedBlockStorageClusterAttributeResponse>\\n <RequestId>11B55F58-D3A4-4A9B-9596-342420D0****</RequestId>\\n</ModifyDedicatedBlockStorageClusterAttributeResponse>","errorExample":""}]', - 'title' => '修改专属块存储集群属性', - 'description' => '## 接口说明'."\n" - .'您可以修改专属块存储集群的名称、描述信息等信息。', - ], - 'DescribeDedicatedBlockStorageClusterDisks' => [ - 'summary' => '查询一块或多块您已经创建的专属块存储集群的云盘信息。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + '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' => '查询资源诊断报告', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + 'product' => ['code' => 'disk', 'title' => '块存储'], + ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:DescribeDiagnoseReport', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeDiskMonitorData' => [ + 'summary' => '查询单个云盘的秒级监控数据。', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -6678,61 +3241,48 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'abilityTreeCode' => '124946', - 'abilityTreeNodes' => [ - 'FEATUREdisk1O4P8E', - ], + 'abilityTreeCode' => '138275', + 'abilityTreeNodes' => ['FEATUREdiskLP80G7'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '专属块存储集群所在的地域ID。您可以调用DescribeRegions'."\n" - .'查看最新的阿里云地域列表。', - 'description' => '专属块存储集群所在的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-heyuan', - ], + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'MaxResults', + 'name' => 'DiskId', 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时每页的最大条目数。最大值为500。'."\n" - ."\n" - .'默认值:10', - 'description' => '分页查询时每页的最大条目数。最大值为500。'."\n" - ."\n" - .'默认值:10', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '云盘ID。', 'type' => 'string', 'required' => true, 'example' => 'd-bp67acfmxazb4p****'], ], [ - 'name' => 'NextToken', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。', - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdDWBF2', - ], + 'schema' => ['description' => '获取云盘的秒级监控数据的起始时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC +0时间,格式为`yyyy-MM-ddTHH:mm:ssZ`。', 'type' => 'string', 'required' => true, 'example' => '2022-06-01T03:00:00Z'], ], [ - 'name' => 'DbscId', + 'name' => 'EndTime', 'in' => 'query', - 'schema' => [ - 'title' => '专属块存储集群ID', - 'description' => '专属块存储集群ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'dbsc-cn-od43bf****', - ], + 'schema' => ['description' => '获取云盘的秒级监控数据的结束时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC+0时间,格式为`yyyy-MM-ddTHH:mm:ssZ`。', 'type' => 'string', 'required' => true, 'example' => '2022-06-01T05:00:00Z'], + ], + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => ['description' => '获取云盘的秒级监控数据的间隔时间。单位:秒。取值范围:'."\n" + ."\n" + .'- 5。'."\n" + .'- 60。'."\n" + ."\n" + .'默认值:5。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '5'], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => ['description' => '磁盘监控数据类型。取值范围:'."\n" + ."\n" + .'- basic:基础性能数据。'."\n" + ."\n" + .'- pro:包含Burst IO数据。', 'type' => 'string', 'required' => false, 'example' => 'basic'], ], ], 'responses' => [ @@ -6742,273 +3292,28 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****', - ], - 'NextToken' => [ - 'title' => '本次调用返回的查询凭证值。', - 'description' => '本次调用返回的查询凭证值。', - 'type' => 'string', - 'example' => 'AAAAAdDWBF2', - ], - 'Disks' => [ - 'description' => '云盘信息组成的集合。', - 'type' => 'object', - 'properties' => [ - 'Disk' => [ - 'title' => '参考ECS DescribeDisks接口的返回结果'."\n" - .'https://help.aliyun.com/document_detail/25514.html', - 'description' => '云盘信息组成的集合。', - 'type' => 'array', - 'items' => [ - 'description' => '云盘信息组成的集合。', - 'type' => 'object', - 'properties' => [ - 'DiskId' => [ - 'description' => '云盘ID。', - 'type' => 'string', - 'example' => 'd-bp67acfmxazb4p****', - ], - 'DiskName' => [ - 'description' => '云盘名称。', - 'type' => 'string', - 'example' => 'testDiskName', - ], - 'Status' => [ - 'description' => '云盘状态。更多信息,请参见[云盘状态](~~25689~~)。可能值:'."\n" - ."\n" - .'- In_use。'."\n" - .'- Available。'."\n" - .'- Attaching。'."\n" - .'- Detaching。'."\n" - .'- Creating。'."\n" - .'- ReIniting。', - 'type' => 'string', - 'example' => 'In_use', - ], - 'Type' => [ - 'description' => '要查询的云盘类型。可能值:'."\n" - ."\n" - .'- system:系统盘。'."\n" - .'- data:数据盘。', - 'type' => 'string', - 'example' => 'system', - ], - 'PerformanceLevel' => [ - 'description' => 'ESSD云盘的性能等级。可能值:'."\n" - ."\n" - .'- PL0:单盘最高随机读写IOPS 1万。'."\n" - .'- PL1:单盘最高随机读写IOPS 5万。'."\n" - .'- PL2:单盘最高随机读写IOPS 10万。'."\n" - .'- PL3:单盘最高随机读写IOPS 100万。', - 'type' => 'string', - 'example' => 'PL0', - ], - 'BdfId' => [ - 'description' => '该参数正在邀测中,暂未开放使用。', - 'type' => 'string', - 'example' => 'null', - ], - 'EnableAutoSnapshot' => [ - 'description' => '云盘是否启用自动快照策略功能。'."\n" - ."\n" - .'>该参数已弃用。创建后的云盘默认启用自动快照策略功能,您只需要为云盘绑定自动快照策略即可正常使用。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'StorageSetId' => [ - 'description' => '存储集ID。', - 'type' => 'string', - 'example' => 'ss-i-bp1j4i2jdf3owlhe****', - ], - 'StorageSetPartitionNumber' => [ - 'description' => '存储集中的最大分区数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '11', - ], - 'DeleteAutoSnapshot' => [ - 'description' => '是否同时删除自动快照。可能值:'."\n" - ."\n" - .'- true:删除云盘上的快照。'."\n" - .'- false:保留云盘上的快照。'."\n" - ."\n" - .'通过[CreateSnapshot](~~25524~~)或者在控制台创建的快照,不受这个参数的影响,会始终保留。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'StorageClusterId' => [ - 'description' => '云盘所属的专属块存储集群ID。如果您的云盘在公共云块存储集群中,则该返回值为空。', - 'type' => 'string', - 'example' => 'dbsc-j5e1sf2vaf5he8m2****', - ], - 'Encrypted' => [ - 'description' => '是否为加密云盘。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'MountInstanceNum' => [ - 'description' => '共享存储挂载的实例数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Description' => [ - 'description' => '云盘描述信息。', - 'type' => 'string', - 'example' => 'testDescription', - ], - 'Device' => [ - 'description' => '云盘挂载的实例的设备名,例如/dev/xvdb。您需要注意:'."\n" - ."\n" - .'- 该参数仅在`Status`参数值为`In_use`时才有值,其他状态时为空。'."\n" - ."\n" - .'- 对于开启多重挂载特性的云盘,该值始终为空。您可以通过返回的`Attachment`对象组成的列表,查看云盘所涉及的所有挂载信息。'."\n" - ."\n" - .'> 该参数即将停止使用,为提高代码兼容性,建议您尽量不要使用该参数。', - 'type' => 'string', - 'example' => '/dev/xvdb', - ], - 'Portable' => [ - 'description' => '云盘是否可卸载。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'ImageId' => [ - 'description' => '创建ECS实例时使用的镜像ID,只有通过镜像创建的云盘才有值,否则为空。这个值在云盘的生命周期内始终不变。', - 'type' => 'string', - 'example' => 'm-bp13aqm171qynt3u***', - ], - 'KMSKeyId' => [ - 'description' => '云盘使用的KMS密钥ID。', - 'type' => 'string', - 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', - ], - 'DeleteWithInstance' => [ - 'description' => '是否随实例释放。可能值:'."\n" - ."\n" - .'- true:释放实例时,这块云盘随实例一起释放。'."\n" - .'- false:释放实例时,这块云盘保留不释放。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'DetachedTime' => [ - 'description' => '该云盘最后一次卸载时间。', - 'type' => 'string', - 'example' => '2021-06-07T21:01:22Z', - ], - 'SourceSnapshotId' => [ - 'description' => '创建云盘使用的快照ID。'."\n" - ."\n" - .'如果创建云盘时,没有指定快照,则该参数值为空。该参数值在云盘的生命周期内始终不变。', - 'type' => 'string', - 'example' => 's-bp67acfmxazb4p****', - ], - 'InstanceId' => [ - 'description' => '云盘挂载的实例ID。您需要注意:'."\n" - ."\n" - .'- 该参数值仅在`Status`参数值为`In_use`时才有值,其他状态时为空。'."\n" - ."\n" - .'- 对于开启多重挂载特性的云盘,该值始终为空。您可以通过返回的`Attachment`对象组成的列表,查看云盘所涉及的所有挂载信息。', - 'type' => 'string', - 'example' => 'i-bp67acfmxazb4q****', - ], - 'Size' => [ - 'description' => '云盘大小,单位为GiB。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '60', - ], - 'RegionId' => [ - 'description' => '云盘所属的地域ID。', - 'type' => 'string', - 'example' => 'cn-heyuan', - ], - 'ZoneId' => [ - 'description' => '云盘所属的可用区ID。', - 'type' => 'string', - 'example' => 'cn-heyuan-i', - ], - 'AttachedTime' => [ - 'description' => '该云盘最后一次挂载的时间。按照[ISO 8601](~~25696~~)标准表示,使用UTC+0时间。格式为:yyyy-MM-ddThh:mmZ。', - 'type' => 'string', - 'example' => '2021-06-07T06:08:56Z', - ], - 'Category' => [ - 'description' => '云盘或本地盘种类为cloud_essd,表示ESSD云盘。', - 'type' => 'string', - 'example' => 'cloud_essd', - ], - 'MultiAttach' => [ - 'description' => '云盘是否开启了多重挂载特性。', - 'type' => 'string', - 'example' => 'Disabled', - ], - 'Tags' => [ - 'description' => '云盘的标签集合。', - 'type' => 'array', - 'items' => [ - 'description' => '云盘的标签集合。', - 'type' => 'object', - 'properties' => [ - 'TagValue' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'TestValue', - ], - 'TagKey' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'TestKey', - ], - ], - ], - ], - 'DiskChargeType' => [ - 'description' => '云盘的计费方式。可能值:'."\n" - ."\n" - .'- PrePaid:包年包月。'."\n" - .'- PostPaid:按量付费。', - 'type' => 'string', - 'example' => 'PrePaid', - ], - 'IOPS' => [ - 'description' => '每秒读写(I/O)操作的次数上限,单位:次/s。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '4000', - ], - 'Throughput' => [ - 'description' => '单位时间内可以成功传输的数据数量,单位:MB/s。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'ProvisionedIops' => [ - 'description' => 'ESSD AutoPL云盘预配置的读写IOPS。可能值:0~min{50000, 1000*容量-基准性能}。'."\n" - ."\n" - .'基准性能=min{1,800+50*容量, 50,000}。'."\n" - ."\n" - .'当`DiskCategory`取值为`cloud_auto`时才支持设置该参数。更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '40000', - ], - 'BurstingEnabled' => [ - 'description' => '是否开启Burst(性能突发)。可能值:'."\n" - ."\n" - .'- true:是。'."\n" - .'- false:否。'."\n" - ."\n" - .'当`DiskCategory`取值为`cloud_auto`时才支持设置该参数。更多信息,请参见[ESSD AutoPL云盘](~~368372~~)。', - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'TotalCount' => ['description' => '查询结果总条数。', 'type' => 'integer', 'format' => 'int64', 'example' => '15'], + 'MonitorData' => [ + 'description' => '云盘的秒级监控数据集合。', + 'type' => 'array', + 'items' => [ + 'description' => '云盘的秒级监控数据集合。', + 'type' => 'object', + 'properties' => [ + 'ReadBPS' => ['description' => '云盘读带宽,单位:MBps。', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], + 'WriteBPS' => ['description' => '云盘写带宽,单位:MBps。', 'type' => 'integer', 'format' => 'int64', 'example' => '204'], + 'DiskId' => ['description' => '云盘ID。', 'type' => 'string', 'example' => 'd-bp1bq5g3dxxo1x4o****'], + 'ReadIOPS' => ['description' => '每秒读操作的次数上限,单位:次/s。', 'type' => 'integer', 'format' => 'int64', 'example' => '2000'], + 'WriteIOPS' => ['description' => '每秒写操作的次数上限,单位:次/s。', 'type' => 'integer', 'format' => 'int64', 'example' => '2000'], + 'IOPSPercent' => ['description' => '云盘IOPS水位占比。', 'type' => 'integer', 'format' => 'int64', 'example' => '80(%)'], + 'BPSPercent' => ['description' => '云盘BPS水位占比。', 'type' => 'integer', 'format' => 'int64', 'example' => '80(%)'], + 'Timestamp' => ['description' => '查询云盘的秒级监控数据的时间戳。按照[ISO 8601](~~25696~~)标准表示,并使用UTC +0时间,格式为`yyyy-MM-ddTHH:mm:ssZ`。', 'type' => 'string', 'example' => '2022-06-01T08:00:00Z'], + 'BurstIOCount' => ['description' => '云盘Burst IO数量。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'ReadBlockSize' => ['description' => '读IO块大小,单位:Bytes', 'type' => 'integer', 'format' => 'int64', 'example' => '4096'], + 'WriteBlockSize' => ['description' => '写IO块大小,单位:Bytes', 'type' => 'integer', 'format' => 'int64', 'example' => '4096'], + 'ReadLatency' => ['description' => '读延迟,单位:微秒', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], + 'WriteLatency' => ['description' => '写延迟,单位:微秒', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], ], ], ], @@ -7018,60 +3323,49 @@ ], 'errorCodes' => [ 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], '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"}]', - 'title' => '查询专属块存储集群中的云盘列表', - 'description' => '- 支持以下两种方式查看返回数据:'."\n" - .' - 方式一:通过`NextToken`设置查询凭证(Token),其取值是上一次调用DescribeDisks返回的`NextToken`参数值,再通过`MaxResults`设置单页查询的最大条目数。'."\n" - .' - 方式二:通过`PageSize`设置单页返回的条目数,再通过`PageNumber`设置页码。'."\n" - ."\n" - .' 以上两种方式只能任选其中之一。当返回的条目数较多时,推荐使用方式一。如果设置了`NextToken`,则请求参数`PageSize`和`PageNumber`将失效,且返回数据中的`TotalCount`无效。'."\n" + '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":"<DescribeDiskMonitorDataResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <TotalCount>15</TotalCount>\\n <MonitorData>\\n <ReadBPS>10</ReadBPS>\\n <WriteBPS>204</WriteBPS>\\n <DiskId>d-bp1bq5g3dxxo1x4o****</DiskId>\\n <ReadIOPS>2000</ReadIOPS>\\n <WriteIOPS>2000</WriteIOPS>\\n <Timestamp>2022-06-01T08:00:00Z</Timestamp>\\n <BurstIOCount>0</BurstIOCount>\\n </MonitorData>\\n</DescribeDiskMonitorDataResponse>","errorExample":""}]', + 'title' => '查询云盘监控(API下线中)', + 'description' => '## 接口说明'."\n" ."\n" - .'- 开启多重挂载特性的云盘可以挂载到多个实例上,您可以根据返回结果的`Attachment`列表查看云盘涉及的所有挂载信息。'."\n" + .'- 查询结果一次最多返回400条数据,即指定的`(EndTime-StartTime)/Period`不能超过400。'."\n" ."\n" - .'通过阿里云CLI调用API时,不同数据类型的请求参数取值必须遵循格式要求。更多信息,请参见[CLI参数格式说明](~~110340~~)。', - ], - 'QueryDedicatedBlockStorageClusterInventoryData' => [ - 'summary' => '调用QueryDedicatedBlockStorageClusterInventoryData查询指定时间范围下,专属块存储集群容量趋势数据,包括可用容量和总容量。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .'- 查询结果一次最多能查询近3天内的监控信息,即`StartTime`指定的时间与当前时间相差不能超过3天。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ebs:DescribeDiskMonitorData', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeDiskReplicaGroups' => [ + 'summary' => '查询在指定地域下,一个或多个一致性复制组的信息。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -7080,708 +3374,620 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '149411', - 'abilityTreeNodes' => [ - 'FEATUREdisk1O4P8E', - ], + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '115793', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ - 'name' => 'DbscId', - 'in' => 'formData', - 'schema' => [ - 'title' => '专属块存储集群Id', - 'description' => '专属块存储集群Id。', - 'type' => 'string', - 'required' => true, - 'example' => 'dbsc-xxx', - ], + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '一致性复制组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'Period', - 'in' => 'formData', - 'schema' => [ - 'title' => '数据返回点的间隔时间(秒)', - 'description' => '数据返回点的间隔时间(秒)。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'enumValueTitles' => [ - 60 => '60', - 3600 => '3600', - 86400 => '86400', - ], - 'example' => '60', - ], + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" + ."\n" + .'取值范围:1~500。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10'], ], [ - 'name' => 'StartTime', - 'in' => 'formData', - 'schema' => [ - 'title' => '查询开始秒级时间戳', - 'description' => '查询开始秒级时间戳。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1606303800', - ], + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ - 'name' => 'EndTime', - 'in' => 'formData', - 'schema' => [ - 'title' => '查询结束秒级时间戳', - 'description' => '查询结束秒级时间戳。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1606403800', - ], + 'name' => 'GroupIds', + 'in' => 'query', + 'schema' => ['description' => '一致性复制组的ID列表。您可以指定一个或多个一致性复制组的ID进行查询。多个一致性复制组的ID之间用半角逗号(,)分隔。'."\n" + ."\n" + .'默认值为空,表示查询当前地域下所有的一致性复制组。最多允许填写100个复制组ID。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ - 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'description' => '专属块存储集群所属地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shenzhen', - ], + 'name' => 'Site', + 'in' => 'query', + 'schema' => ['title' => 'production或backup,表示数据从主或备站点获取,默认为production。', 'description' => '查询并返回指定站点的记录,主要应用于跨可用区复制对的场景。'."\n" + ."\n" + .'- 如果不指定该参数,则系统会返回生产站点的复制对记录和状态信息。'."\n" + ."\n" + .'- 如果指定该参数,则系统仅返回指定Site的复制对的记录和状态信息。取值范围:'."\n" + .' - production:生产站点。'."\n" + .' - backup:灾备站点。', 'type' => 'string', 'required' => false, 'example' => 'production'], ], [ - 'name' => 'ClientToken', + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['title' => '分页查询时的页码。', 'description' => '分页查询时的页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['title' => '分页查询时设置的每页行数。', 'description' => '分页查询时设置的每页行数。'."\n" + .'取值范围1~100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => ['description' => '一致性复制组所在的企业资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz*****'], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => ['title' => '复制组名称,支持模糊搜索。', 'description' => '复制组名称,支持模糊搜索。', 'type' => 'string', 'required' => false, 'example' => 'pg-name***'], + ], + [ + 'name' => 'Tag', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', + 'title' => '标签列表,最多包含20个子项', + 'description' => '标签列表,最多包含20个子项。', + 'type' => 'array', + 'items' => [ + 'description' => '标签信息。', + 'type' => 'object', + 'properties' => [ + 'Value' => ['title' => '复制组的标签值', 'description' => '一致性复制组的标签值。', 'type' => 'string', 'required' => false, 'example' => 'tag-value'], + 'Key' => ['title' => '复制组的标签键', 'description' => '一致性复制组的标签键。', 'type' => 'string', 'required' => false, 'example' => 'tag-key'], + ], + 'required' => false, + ], 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', + 'maxItems' => 21, ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribeDbscInventoryDataResponse', - 'description' => 'DescribeDbscInventoryDataResponse', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'DbscId' => [ - 'title' => '专属块存储集群Id', - 'description' => '专属块存储集群Id。', - 'type' => 'string', - 'example' => 'dbsc-xxx', - ], - 'DbscName' => [ - 'title' => '专属块存储集群名', - 'description' => '专属块存储集群名。', - 'type' => 'string', - 'example' => 'myDBSCCluster', - ], - 'DiskCategory' => [ - 'title' => 'IO类型', - 'description' => 'IO类型。', - 'type' => 'string', - 'example' => 'cloud_essd', - ], - 'TotalCount' => [ - 'title' => '查询到的数据总数', - 'description' => '查询到的数据总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '60', - ], - 'Data' => [ - 'title' => '云盘的监控数据集合', - 'description' => '云盘的监控数据集合。', + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****'], + 'NextToken' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => '本次调用返回的查询凭证(Token)。', 'type' => 'string', 'example' => 'AAAAAdDWBF2****'], + 'ReplicaGroups' => [ + 'description' => '一致性复制组的信息组成的集合。', 'type' => 'array', 'items' => [ - 'description' => '某时刻完整监控数据对象。', 'type' => 'object', 'properties' => [ - 'MonitorItems' => [ - 'description' => '监控项数值集合。', - 'type' => 'object', - 'properties' => [ - 'AvailableSize' => [ - 'description' => '专属块存储集群可用容量GiB。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '61360', - ], - 'TotalSize' => [ - 'description' => '专属块存储集群总容量GiB。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '61440', + 'GroupName' => ['description' => '一致性复制组名称。', 'type' => 'string', 'example' => 'myreplicagrouptest'], + 'Site' => ['title' => 'pair信息的后端站点来源,production或backup', 'description' => '复制对和一致性复制组的站点信息来源。可能值:'."\n" + .'- production:生产站点。'."\n" + .'- backup:灾备站点。', 'type' => 'string', 'example' => 'production'], + 'Description' => ['description' => '一致性复制组的描述信息。', 'type' => 'string', 'example' => 'This is description.'], + 'StandbyZone' => ['title' => '复制组的初始目的可用区。', 'description' => '复制组的初始目的可用区。', 'type' => 'string', 'example' => 'cn-shanghai-e'], + 'ResourceGroupId' => ['title' => '复制组所在的企业资源组ID。', 'description' => '复制组所在的企业资源组ID。', 'type' => 'string', 'example' => 'rg-aek2a*******'], + 'LastRecoverPoint' => ['description' => '一致性复制组的最近一次异步复制操作完成的时间。该参数以时间戳的形式提供返回值。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1637835114'], + 'ReplicaGroupId' => ['description' => '一致性复制组ID。', 'type' => 'string', 'example' => 'pg-myreplica****'], + 'RPO' => ['description' => '一致性复制组的RPO值。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '180'], + 'SourceRegionId' => ['description' => '生产站点所属的地域ID。', 'type' => 'string', 'example' => 'cn-beijing'], + 'DestinationRegionId' => ['description' => '灾备站点所属的地域ID。', 'type' => 'string', 'example' => 'cn-shanghai'], + 'Bandwidth' => ['title' => '带宽值,单位为Kbps。公共云暂不支持。', 'description' => '带宽值,单位为Kbps。该参数暂未开放使用,返回值由系统预设。', 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'PrimaryZone' => ['title' => '复制组的初始源可用区。', 'description' => '复制组的初始源可用区。', 'type' => 'string', 'example' => 'cn-beijing-h'], + 'SourceZoneId' => ['description' => '生产站点所属的可用区ID。', 'type' => 'string', 'example' => 'cn-beijing-f'], + 'Tags' => [ + 'title' => '复制组的标签', + 'description' => '复制组的标签。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TagKey' => ['title' => '复制组的标签键', 'description' => '复制组的标签键。', 'type' => 'string', 'example' => 'testKey'], + 'TagValue' => ['title' => '复制组的标签值', 'description' => '复制组的标签值。', 'type' => 'string', 'example' => 'testValue'], ], + 'description' => '', ], ], - 'Timestamp' => [ - 'title' => '查询监控信息的时间戳', - 'description' => '查询监控信息的时间戳。', - 'type' => 'string', - 'example' => '1606403800', - ], - 'ResourceId' => [ - 'title' => '资源Id', - 'description' => '资源Id。', - 'type' => 'string', - 'example' => 'dbsc-xxx', - ], + 'Status' => ['description' => '一致性复制组的状态。可能值:'."\n" + .'- invalid:失效。该状态表示一致性复制组中复制对存在异常。'."\n" + .'- creating:创建中。'."\n" + .'- created:已创建。'."\n" + .'- create_failed:创建失败。'."\n" + .'- manual_syncing:单次同步中。如果是第一次单次同步,则同步中也显示为该状态。'."\n" + .'- syncing:同步中。主盘和从盘之间非第一次进行异步复制数据时,将处于该状态。'."\n" + .'- normal:正常。当异步复制的当前周期内数据复制完成时,将处于该状态。'."\n" + .'- stopping:停止中。'."\n" + .'- stopped:已停止。'."\n" + .'- stop_failed:停止失败。'."\n" + .'- failovering:故障切换中。'."\n" + .'- failovered:故障切换完成。'."\n" + .'- failover_failed:故障切换失败。'."\n" + .'- reprotecting:反向复制操作中。'."\n" + .'- reprotect_failed:反向复制失败。'."\n" + .'- deleting:删除中。'."\n" + .'- delete_failed:删除失败。'."\n" + .'- deleted:已删除。', 'type' => 'string', 'example' => 'created'], + 'PairNumber' => ['title' => '复制组中的复制对个数', 'description' => '一致性复制组中包含的复制对个数。', 'type' => 'integer', 'format' => 'int64', 'example' => '2'], + 'PrimaryRegion' => ['title' => '复制组的初始源地域。', 'description' => '复制组的初始源地域。', 'type' => 'string', 'example' => 'cn-beijing'], + 'PairIds' => [ + 'description' => '一致性复制组中包含的复制对ID列表。', + 'type' => 'array', + 'items' => ['description' => '一致性复制组中包含的复制对ID列表。', 'type' => 'string', 'format' => 'byte', 'example' => 'pair-cn-dsa****,pair-cn-asd****'], + ], + 'EnableRtc' => ['title' => 'RTC开关。', 'description' => '是否开启复制时间控制(RTC)。可能值:'."\n" + ."\n" + .'- false:关闭。'."\n" + .'- true:开启。'."\n" + ."\n" + .'> 如果为ture,表示一致性组开启复制时间控制(RTC),加入该一致性组的异步复制对均开启RTC。', 'type' => 'boolean', 'example' => 'true'], + 'DestinationZoneId' => ['description' => '灾备站点所属的可用区ID。', 'type' => 'string', 'example' => 'cn-shanghai-e'], + 'StandbyRegion' => ['title' => '复制组的初始目的地域。', 'description' => '复制组的初始目的地域。', 'type' => 'string', 'example' => 'cn-shanghai'."\n"], ], + 'description' => '', ], ], - 'RequestId' => [ - 'title' => '请求ID', - 'description' => '请求id。', - 'type' => 'string', - 'example' => 'F1A4258A-0C8C-5329-B495-BC5AD7AD****', - ], + 'PageNumber' => ['title' => '参数页码。', 'description' => '分页查询时的页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['title' => '参数页行数。', 'description' => '分页查询时设置的每页行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['title' => '分页查询时的结果总条数。', 'description' => '分页查询时的结果总条数。', 'type' => 'integer', 'format' => 'int64', 'example' => '60'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidTime.Malformed', - 'errorMessage' => 'The specified parameter StartTime or EndTime is not valid.', - ], - [ - 'errorCode' => 'InvalidParameter.EndTime', - 'errorMessage' => 'The specified parameter EndTime is earlier than StartTime.', - ], - [ - 'errorCode' => 'InvalidPeriod.ValueNotSupported', - 'errorMessage' => 'The specified parameter Period is not valid', + 403 => [ + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', '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\\": \\"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}","errorExample":""},{"type":"xml","example":"<DescribeDiskReplicaGroupsResponse>\\n <RequestId>AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****</RequestId>\\n <NextToken>AAAAAdDWBF2****</NextToken>\\n <ReplicaGroups>\\n <ReplicaGroupId>pg-myreplica****</ReplicaGroupId>\\n <SourceRegionId>cn-beijing</SourceRegionId>\\n <SourceZoneId>cn-beijing-f</SourceZoneId>\\n <DestinationRegionId>cn-shanghai</DestinationRegionId>\\n <DestinationZoneId>cn-shanghai-e</DestinationZoneId>\\n <GroupName>myreplicagrouptest</GroupName>\\n <Description>This is description.</Description>\\n <Status>created</Status>\\n <RPO>180</RPO>\\n <LastRecoverPoint>1637835114</LastRecoverPoint>\\n <Site>production</Site>\\n <PairIds>pair-cn-dsa****,pair-cn-asd****</PairIds>\\n <PairNumber>2</PairNumber>\\n </ReplicaGroups>\\n</DescribeDiskReplicaGroupsResponse>","errorExample":""}]', + 'title' => '查询一个或多个异步复制组', + 'description' => '## 接口说明'."\n" + .'当您需要分页查询时,请使用MaxResults与NextToken参数进行查询。'."\n" + ."\n" + .'分页查询首页时,设置`MaxResults`以限制返回信息的条目数,返回结果中的`NextToken`将作为查询后续页的凭证。查询后续页时,将`NextToken`参数设置为上一次返回结果中获取到的`NextToken`作为查询凭证,并设置MaxResults限制返回条目数。', + 'changeSet' => [ + ['createdAt' => '2025-07-07T11:22:39.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-08-14T06:34:59.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-07-19T12:22:55.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-01-03T02:17:05.000Z', 'description' => '请求参数发生变更、响应参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-10-28T08:41:19.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-08-16T11:40:00.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2022-06-06T02:07:57.000Z', 'description' => '响应参数发生变更'], + ], + '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}'], + ], ], - [ - 'errorCode' => 'InvalidParameter.TooManyDataQueried', - 'errorMessage' => 'Too many data queried.', + ], + ], + ], + 'DescribeDiskReplicaPairProgress' => [ + 'summary' => '查询复制对的同步进度。', + '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' => '复制对ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询已创建的复制对ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-tl32ribst0z'], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '复制对所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'DescribeReplicaPairProgressResponse', + 'description' => 'DescribeReplicaPairProgressResponse', + 'type' => 'object', + 'properties' => [ + 'Progress' => ['title' => '同步进度', 'description' => '同步进度。', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], + 'RecoverPoint' => ['title' => '最近一次恢复点的时间戳。有条件返回,复制对start后,才会返回该字段。', 'description' => '最近一次恢复点的时间戳。有条件返回,复制对start后,才会返回该字段。', 'type' => 'integer', 'format' => 'int64', 'example' => '1661917424'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****'."\n"], + ], ], ], + ], + 'errorCodes' => [ 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', '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.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], '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' => '查询专属块存储集群创盘容量趋势数据', - 'description' => 'Period为数据返回点的间隔时间。'."\n" - .'设置为60(分钟间隔)下最多返回数据点个数1440;设置为3600(小时间隔)级精度下最多返回数据点个数744;设置为86400(天间隔)下最多返回数据点个数366。', - ], - 'CreateEnterpriseSnapshotPolicy' => [ - 'summary' => '调用CreateEnterpriseSnapshotPolicy创建企业级快照策略。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Progress\\": 100,\\n \\"RecoverPoint\\": 1661917424,\\n \\"RequestId\\": \\"AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****\\\\n\\"\\n}","type":"json"}]', + 'title' => '查询复制对的同步进度', + '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' => '查询指定地域下,一个或多个异步复制关系的信息。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '159104', - 'abilityTreeNodes' => [ - 'FEATUREdisk493RYF', - ], + 'abilityTreeCode' => '42727', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '地域ID', - 'description' => '地域ID。您可以调用DescribeRegions查询异步复制功能支持的地域信息。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '异步复制关系中主盘或从盘所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'Name', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'title' => '名称', - 'description' => '快照策略名称。', - 'type' => 'string', - 'required' => true, - 'example' => 'xx', - ], + 'schema' => ['title' => '分页查询时每页的最大条目数。取值范围:1~500'."\n" + ."\n" + .'默认值:10', 'description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" + ."\n" + .'取值范围:1~500。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'], ], [ - 'name' => 'TargetType', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'title' => '类型', - 'description' => '类型。取值范围:'."\n" - ."\n" - .'- DISK', - 'type' => 'string', - 'required' => true, - 'enumValueTitles' => [ - 'DISK' => 'DISK', - ], - 'example' => 'DISK', - ], + 'schema' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ - 'name' => 'State', + 'name' => 'PairIds', 'in' => 'query', - 'schema' => [ - 'title' => '状态', - 'description' => '状态。取值范围:'."\n" - ."\n" - .'- DISABLED'."\n" - .'- ENABLED', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'DISABLED' => 'DISABLED', - 'ENABLED' => 'ENABLED', - ], - 'example' => 'ENABLED', - ], + 'schema' => ['title' => '异步复制关系ID列表。您可以指定一个或多个异步复制关系ID进行查询。格式为:pair-cn-dsa****,pair-cn-asd****。'."\n" + ."\n" + .'默认值为空,表示查询当前地域下所有的异步复制关系。', 'description' => '异步复制关系ID列表。您可以指定一个或多个异步复制关系ID进行查询。格式为:`pair-cn-dsa****,pair-cn-asd****`。'."\n" + ."\n" + .'默认值为空,表示查询当前地域下所有的异步复制关系。最多允许填写100个复制关系ID。', 'type' => 'string', 'required' => false, 'example' => 'pair-cn-dsa****'], ], [ - 'name' => 'Desc', + 'name' => 'Site', 'in' => 'query', - 'schema' => [ - 'title' => '描述信息', - 'description' => '描述信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxx', - ], + 'schema' => ['title' => 'production或backup,表示获取本地为生产站点或灾备站点的复制对数据,默认为production。', 'description' => '获取本Region为生产站点或灾备站点的复制对数据。取值范围:'."\n" + ."\n" + .'- production:生产站点。'."\n" + ."\n" + .'- backup:灾备站点。'."\n" + ."\n" + .'默认值:production。', 'type' => 'string', 'required' => false, 'example' => 'production'], ], [ - 'name' => 'Schedule', + 'name' => 'ReplicaGroupId', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'title' => '调度规则', - 'description' => '调度规则。', - 'type' => 'object', - 'properties' => [ - 'CronExpression' => [ - 'title' => 'cron tab 表达式', - 'description' => '策略执行的周期和时间。使用cron表达式。'."\n" - ."\n" - .'例如:0 0 4 1/1 * ?表示从每月第一天上午4时开始,每天的上午4时执行快照操作。', - 'type' => 'string', - 'required' => true, - 'example' => '0 0 */24 * * *', - ], - ], - 'required' => true, - ], + 'schema' => ['title' => '所属复制组id。', 'description' => '一致性复制组ID,您可以指定一个一致性复制组ID来查询组内的复制对。格式为:`pg-****`。'."\n" + ."\n" + .'默认值为空,表示查询当前地域下所有的异步复制关系。'."\n" + ."\n" + .'> 当该参数为`-`时,返回不在任何一致性组中的复制对。', 'type' => 'string', 'required' => false, 'example' => 'pg-****'], ], [ - 'name' => 'RetainRule', + 'name' => 'PageNumber', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'title' => '保留规则', - 'description' => '保留规则。', - 'type' => 'object', - 'properties' => [ - 'Number' => [ - 'title' => '保留个数', - 'description' => '个数。取值范围 [1, 256]。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], - 'TimeInterval' => [ - 'title' => '保留时间值', - 'description' => '保留时间值.取值范围大于1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '14', - ], - 'TimeUnit' => [ - 'title' => '保留时间单位', - 'description' => '保留时间单位。取值范围:'."\n" - ."\n" - .'- DAYS'."\n" - .'- WEEKS', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'WEEKS' => 'WEEKS', - 'DAYS' => 'DAYS', - ], - 'example' => 'DAYS', - ], - ], - 'required' => true, - ], + 'schema' => ['title' => '分页查询时的页码。', 'description' => '分页查询时的页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], ], [ - 'name' => 'StorageRule', + 'name' => 'PageSize', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'title' => '策略存储规则', - 'description' => '高级快照特性。', - 'type' => 'object', - 'properties' => [ - 'EnableImmediateAccess' => [ - 'title' => '是否启动快照极速可用', - 'description' => '是否启动快照极速可用。取值范围:'."\n" - ."\n" - .'- true'."\n" - .'- false', - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => 'true', - 'false' => 'false', - ], - 'example' => 'false', - ], - ], - 'required' => false, - ], + 'schema' => ['title' => '分页查询时设置的每页行数。', 'description' => '分页查询时设置的每页行数。'."\n" + .'取值范围1-100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'CrossRegionCopyInfo', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'title' => '快照复制信息', - 'description' => '快照复制信息。', - 'type' => 'object', - 'properties' => [ - 'Enabled' => [ - 'title' => '是否启用跨地域复制', - 'description' => '是否启用跨地域复制。取值范围:'."\n" - ."\n" - .'- true'."\n" - .'- false', - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => 'true', - 'false' => 'false', - ], - 'example' => 'false', - ], - 'Regions' => [ - 'title' => '目的地域信息', - 'description' => '目的地域信息。', - 'type' => 'array', - 'items' => [ - 'description' => '复制目标地域信息,可选。', - 'type' => 'object', - 'properties' => [ - 'RegionId' => [ - 'title' => '快照复制目的地', - 'description' => '快照复制目的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], - 'RetainDays' => [ - 'title' => '目的地快照保留天数', - 'description' => '目的地快照保留天数。取值范围大于1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '7', - ], - ], - 'required' => false, - ], - 'required' => false, - ], - ], - 'required' => false, - ], + 'schema' => ['description' => '异步复制对所在的企业资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs******'], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => ['title' => '复制对名称,支持模糊搜索。', 'description' => '复制对名称,支持模糊搜索。', 'type' => 'string', 'required' => false, 'example' => 'name***'], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'title' => '标签键值对。n的取值范围为 [1, 20]', - 'description' => '标签键值对。n的取值范围为 [1, 20]。', + 'title' => '标签列表,最多包含20个子项', + 'description' => '标签列表,最多包含20个子项。', 'type' => 'array', 'items' => [ - 'description' => '标签。', + 'description' => '标签信息。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'title' => '资源的标签键', - 'description' => '资源的标签键。', - 'type' => 'string', - 'required' => true, - 'example' => 'tag-key', - ], - 'Value' => [ - 'title' => '资源的标签值', - 'description' => '资源的标签值。', - 'type' => 'string', - 'required' => true, - 'example' => 'tag-value', - ], + 'Value' => ['title' => '异步复制对的标签值', 'description' => '异步复制对的标签值。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'], + 'Key' => ['title' => '异步复制对的标签键', 'description' => '异步复制对的标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], ], 'required' => false, ], 'required' => false, - 'maxItems' => 10, - ], - ], - [ - 'name' => 'ResourceGroupId', - 'in' => 'query', - 'schema' => [ - 'title' => '资源组ID', - 'description' => '资源组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxx', - ], - ], - [ - 'name' => 'ClientToken', - 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', + 'maxItems' => 21, ], ], - [ - 'name' => 'SpecialRetainRules', - 'in' => 'query', - 'style' => 'json', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '特殊保留规则。', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'Enabled' => [ - 'title' => '是否启用特殊保留时间', - 'description' => '是否启用特殊保留。取值范围:'."\n" - ."\n" - .'- true'."\n" - .'- false', - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => 'true', - 'false' => 'false', - ], - 'example' => 'true', - ], - 'Rules' => [ - 'title' => '特殊保留规则', - 'description' => '特殊保留规则列表。', + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****'], + 'NextToken' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => '本次调用返回的查询凭证(Token)。', 'type' => 'string', 'example' => 'AAAAAdDWBF2****'], + 'ReplicaPairs' => [ + 'description' => '异步复制关系的信息组成的集合。', 'type' => 'array', 'items' => [ - 'description' => '特殊保留规则。', 'type' => 'object', 'properties' => [ - 'SpecialPeriodUnit' => [ - 'title' => '特殊周期单位', - 'description' => '特殊保留的快照的周期单位,如果配置成WEEKS,则为每周的第一个快照提供特殊保留,保留的时间由TimeUnit,TimeInterval决定。取值范围为:'."\n" - ."\n" - .'- WEEKS'."\n" - .'- MONTHS'."\n" - .'- YEARS', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'MONTHS' => 'MONTHS', - 'YEARS' => 'YEARS', - 'WEEKS' => 'WEEKS', - ], - 'example' => 'WEEKS', - ], - 'TimeInterval' => [ - 'title' => '保留时间值', - 'description' => '保留时间值。取值范围大于1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '14', - ], - 'TimeUnit' => [ - 'title' => '保留时间单位', - 'description' => '特殊快照的保留时间单位。取值范围:'."\n" - ."\n" - .'- DAYS'."\n" - .'- WEEKS', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'WEEKS' => 'WEEKS', - 'DAYS' => 'DAYS', + 'Site' => ['title' => '复制对信息的后端站点来源,production或backup。', 'description' => '复制对和一致性复制组的站点信息来源。可能值:'."\n" + ."\n" + .'- production:生产站点。'."\n" + ."\n" + .'- backup:灾备站点。', 'type' => 'string', 'example' => 'production'], + 'DestinationDiskId' => ['description' => '目标云盘(从盘)的云盘ID。', 'type' => 'string', 'example' => 'd-asdfjl2342kj2l3k4****'], + 'Description' => ['description' => '异步复制关系的描述信息。', 'type' => 'string', 'example' => 'This is description.'], + 'StandbyZone' => ['title' => '复制对的初始目的可用区。', 'description' => '异步复制关系的初始目的可用区。', 'type' => 'string', 'example' => 'cn-shanghai-b'], + 'ResourceGroupId' => ['title' => '异步复制对所在的企业资源组ID。', 'description' => '异步复制对所在的企业资源组ID。', 'type' => 'string', 'example' => 'rg-acfmvs*****'], + 'DestinationRegion' => ['description' => '目标云盘(从盘)所属的地域信息。', 'type' => 'string', 'example' => 'cn-shanghai'], + 'ReplicaPairId' => ['description' => '异步复制关系的ID。', 'type' => 'string', 'example' => 'pair-cn-dsa****'], + 'LastRecoverPoint' => ['title' => '最近一次异步复制操作完成的时间。该参数以时间戳的形式提供返回值。单位为秒。', 'description' => '异步复制关系最近一次异步复制操作完成的时间。该参数以时间戳的形式提供返回值。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649751977'], + 'ReplicaGroupId' => ['title' => '所属复制组id。', 'description' => '所属的一致性复制组ID。', 'type' => 'string', 'example' => 'pg-xxxx****'], + 'SourceDiskId' => ['description' => '源云盘(主盘)的云盘ID。', 'type' => 'string', 'example' => 'd-bp131n0q38u3a4zi****'], + 'RPO' => ['title' => '复制对的RPO值。单位为秒。', 'description' => '复制对的RPO值。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '900'], + 'PairName' => ['description' => '异步复制关系的名称。', 'type' => 'string', 'example' => 'TestReplicaPair'], + 'Bandwidth' => ['title' => '异步复制时使用的带宽。单位为Kbps。', 'description' => '异步复制时使用的带宽。单位:Kbps。', 'type' => 'integer', 'format' => 'int64', 'example' => '10240'], + 'ExpiredTime' => ['description' => '异步复制关系的过期时间。该参数以时间戳的形式提供返回值。单位:秒。'."\n" + ."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1649750977'], + 'PrimaryZone' => ['title' => '复制对的初始源可用区。', 'description' => '异步复制关系的初始源可用区。', 'type' => 'string', 'example' => 'cn-beijing-a'], + 'SourceZoneId' => ['title' => '主盘所属的可用区。', 'description' => '主盘所属的可用区。', 'type' => 'string', 'example' => 'cn-beijing-a'], + 'Tags' => [ + 'title' => '异步复制对的标签', + 'description' => '异步复制对的标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签信息。', + 'type' => 'object', + 'properties' => [ + 'TagKey' => ['title' => '异步复制对的标签键', 'description' => '异步复制对的标签键。', 'type' => 'string', 'example' => 'testKey'], + 'TagValue' => ['title' => '异步复制对的标签值', 'description' => '异步复制对的标签值。', 'type' => 'string', 'example' => 'testValue'], + ], ], - 'example' => 'WEEKS', ], + 'Status' => ['title' => '异步复制关系的状态。可能值:'."\n" + ."\n" + .'- invalid:失效。该状态表示异步复制关系存在异常。'."\n" + .'- creating:创建中。'."\n" + .'- created:已创建。'."\n" + .'- create_failed:创建失败。'."\n" + .'- initial_syncing:初始同步中。异步复制在创建并启动后,主盘数据初次异步复制到从盘的过程中,将处于该状态。'."\n" + .'- syncing:同步中。主盘和从盘之间非第一次进行异步复制数据时,将处于该状态。'."\n" + .'- manual_syncing:单次同步中。单次同步,同步完成后恢复到stopped状态。如果是第一次单次同步,则同步中也显示为状态manual_syncing。'."\n" + .'- normal:正常。当异步复制的当前周期内数据复制完成时,将处于该状态。'."\n" + .'- stopping:停止中。'."\n" + .'- stopped:已停止。'."\n" + .'- stop_failed:停止失败。'."\n" + .'- failovering:故障切换中。'."\n" + .'- failovered:故障切换完成。'."\n" + .'- failover_failed:故障切换失败。'."\n" + .'- reprotecting:反向复制操作中。'."\n" + .'- reprotect_failed:反向复制失败。'."\n" + .'- deleting:删除中。'."\n" + .'- delete_failed:删除失败。'."\n" + .'- deleted:已删除。', 'description' => '异步复制关系的状态。可能值:'."\n" + ."\n" + .'- invalid:失效。该状态表示异步复制关系存在异常。'."\n" + .'- creating:创建中。'."\n" + .'- created:已创建。'."\n" + .'- create_failed:创建失败。'."\n" + .'- initial_syncing:初始同步中。异步复制在创建并启动后,主盘数据初次异步复制到从盘的过程中,将处于该状态。'."\n" + .'- manual\\_syncing:手动同步中。手动同步,同步完成后恢复到stopped状态。如果是第一次单次同步,则同步中也显示为状态manual_syncing。'."\n" + .'- syncing:同步中。主盘和从盘之间非第一次进行异步复制数据时,将处于该状态。'."\n" + .'- normal:正常。当异步复制的当前周期内数据复制完成时,将处于该状态。'."\n" + .'- stopping:停止中。'."\n" + .'- stopped:已停止。'."\n" + .'- stop_failed:停止失败。'."\n" + .'- failovering:故障切换中。'."\n" + .'- failovered:故障切换完成。'."\n" + .'- failover_failed:故障切换失败。'."\n" + .'- reprotecting:反向复制操作中。'."\n" + .'- reprotect_failed:反向复制失败。'."\n" + .'- deleting:删除中。'."\n" + .'- delete_failed:删除失败。'."\n" + .'- deleted:已删除。', 'type' => 'string', 'example' => 'created'], + 'PrimaryRegion' => ['title' => '复制对的初始源地域。', 'description' => '异步复制关系的初始源地域。', 'type' => 'string', 'example' => 'cn-beijing'], + 'CreateTime' => ['title' => '创建时间。1970年1月1日0点0分以来的秒数。', 'description' => '创建时间。该参数以时间戳的形式提供返回值。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649750977'], + 'SourceRegion' => ['description' => '源云盘(主盘)所属的地域信息。', 'type' => 'string', 'example' => 'cn-beijing'], + 'StatusMessage' => ['title' => '复制对的状态提示信息。比如invalid时,可能值:DeviceRemoved:主盘或者从盘被删除。DeviceKeyChanged:主盘或从盘的DeviceKey映射发生变化。', 'description' => '异步复制关系的状态提示信息。当`Status=invalid`或`Status=create_failed`时,该参数有返回值。可能值:'."\n" + ."\n" + .'- PrePayOrderExpired:包年包月的异步复制关系已过期。'."\n" + .'- PostPayOrderCeaseService:按量付费的异步复制关系停止服务,一般是由于用户欠费引起。'."\n" + .'- DeviceRemoved:主盘或者从盘被删除。'."\n" + .'- DeviceKeyChanged:主盘或从盘的`DeviceKey`映射发生变化。'."\n" + .'- DeviceSizeChanged:主盘或从盘的`DeviceSize`发生变化。'."\n" + .'- OperationDenied.QuotaExceed:创建复制对数量超过规格。', 'type' => 'string', 'example' => 'PrePayOrderExpired'], + 'EnableRtc' => ['title' => 'RTC开关。', 'description' => '是否开启复制时间控制(RTC)。可能值:'."\n" + ."\n" + .'- false:关闭。'."\n" + .'- true:开启。'."\n" + ."\n" + .'> 若复制对已加入复制组,则与复制组的属性保持一致。', 'type' => 'boolean'], + 'ChargeType' => ['title' => '付费类型。PREPAY:预付费;POSTPAY:后付费。', 'description' => '异步复制关系的付费方式。'."\n" + .'可能值:'."\n" + .'- PREPAY:包年包月。'."\n" + .'- POSTPAY:按量付费。', 'type' => 'string', 'example' => 'PREPAY'], + 'DestinationZoneId' => ['title' => '从盘所属的可用区。', 'description' => '从盘所属的可用区。', 'type' => 'string', 'example' => 'cn-shanghai-b'], + 'ReplicaGroupName' => ['title' => '所属复制组名称。', 'description' => '所属的一致性复制组名称。', 'type' => 'string', 'example' => 'pg-name****'], + 'StandbyRegion' => ['title' => '复制对的初始目的地域。', 'description' => '异步复制关系的初始目的地域。', 'type' => 'string', 'example' => 'cn-shanghai'], ], - 'required' => false, + 'description' => '', ], - 'required' => false, - ], - ], - 'required' => false, - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'CreateSnapshotPolicyResponse', - 'description' => '应答', - 'type' => 'object', - 'properties' => [ - 'PolicyId' => [ - 'title' => '策略ID', - 'description' => '快照策略ID', - 'type' => 'string', - 'example' => 'esp-xxx', - ], - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID', - 'type' => 'string', - 'example' => 'F13483A9-17E2-5085-9B2E-2155B0487FF7', ], + 'PageNumber' => ['title' => '参数页码。', 'description' => '分页查询时的页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['title' => '参数页行数。', 'description' => '分页查询时设置的每页行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['title' => '分页查询时的结果总条数。', 'description' => '分页查询时的结果总条数。', 'type' => 'integer', 'format' => 'int64', 'example' => '60'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', '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' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"PolicyId\\": \\"esp-xxx\\",\\n \\"RequestId\\": \\"F13483A9-17E2-5085-9B2E-2155B0487FF7\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateEnterpriseSnapshotPolicyResponse>\\n <PolicyId>esp-xxx</PolicyId>\\n <RequestId>xxx</RequestId>\\n</CreateEnterpriseSnapshotPolicyResponse>","errorExample":""}]', - 'title' => '创建企业级快照策略', + 'responseDemo' => '[{"type":"json","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\\": true,\\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}","errorExample":""},{"type":"xml","example":"<DescribeDiskReplicaPairsResponse>\\n <RequestId>AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****</RequestId>\\n <NextToken>AAAAAdDWBF2****</NextToken>\\n <ReplicaPairs>\\n <ReplicaPairId>pair-cn-dsa****</ReplicaPairId>\\n <SourceRegion>cn-beijing</SourceRegion>\\n <SourceZoneId>cn-beijing-a</SourceZoneId>\\n <SourceDiskId>d-bp131n0q38u3a4zi****</SourceDiskId>\\n <DestinationRegion>cn-shanghai</DestinationRegion>\\n <DestinationZoneId>cn-shanghai-b</DestinationZoneId>\\n <DestinationDiskId>d-asdfjl2342kj2l3k4****</DestinationDiskId>\\n <PairName>TestReplicaPair</PairName>\\n <Description>This is description.</Description>\\n <Status>created</Status>\\n <RPO>900</RPO>\\n <Bandwidth>10240</Bandwidth>\\n <StatusMessage>PrePayOrderExpired</StatusMessage>\\n <LastRecoverPoint>1649751977</LastRecoverPoint>\\n <ReplicaGroupId>pg-xxxx****</ReplicaGroupId>\\n <CreateTime>1649750977</CreateTime>\\n <ReplicaGroupName>pg-name****</ReplicaGroupName>\\n <Site>production</Site>\\n <PrimaryRegion>cn-beijing</PrimaryRegion>\\n <StandbyRegion>cn-shanghai</StandbyRegion>\\n <PrimaryZone>cn-beijing-a</PrimaryZone>\\n <StandbyZone>cn-shanghai-b</StandbyZone>\\n <ChargeType>PREPAY</ChargeType>\\n <ExpiredTime>1649750977</ExpiredTime>\\n <ResourceGroupId>rg-acfmvs*****</ResourceGroupId>\\n <Tags>\\n <TagKey>testKey</TagKey>\\n <TagValue>testValue</TagValue>\\n </Tags>\\n </ReplicaPairs>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>60</TotalCount>\\n</DescribeDiskReplicaPairsResponse>","errorExample":""}]', + 'title' => '查询一个或多个异步复制关系', + 'description' => '## 接口说明'."\n" + ."\n" + .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + ."\n" + .'- 当您指定某一地域进行查询后,如果异步复制关系中主盘或者从盘属于该地域,则查询结果中将包含该异步复制关系的信息。'."\n" + ."\n" + .'- 当您需要分页查询时,请使用`MaxResults`与`NextToken`参数进行查询。具体使用说明:分页查询首页时,设置`MaxResults`以限制返回信息的条目数,返回结果中的NextToken将作为查询后续页的凭证。查询后续页时,将NextToken参数设置为上一次返回结果中获取到的NextToken作为查询凭证,并设置MaxResults限制返回条目数。', + 'changeSet' => [ + ['createdAt' => '2025-07-07T11:22:39.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-08-14T06:34:59.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2024-06-17T08:54:58.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2023-01-03T02:17:05.000Z', 'description' => '请求参数发生变更、响应参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-12-13T03:44:44.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2022-07-18T03:50:13.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2021-11-03T14:00:38.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2021-11-03T14:00:38.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ], + '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' => '调用DescribeEnterpriseSnapshotPolicy接口,并可以指定PolicyIds、ResourceGroupId、Tag等参数,查找企业级快照策略。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -7792,21 +3998,13 @@ 'systemTags' => [ 'operationType' => 'list', 'abilityTreeCode' => '159098', - 'abilityTreeNodes' => [ - 'FEATUREdiskHAF1DK', - ], + 'abilityTreeNodes' => ['FEATUREdiskHAF1DK'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '地域ID', - 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '地域ID', 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'PolicyIds', @@ -7816,12 +4014,7 @@ 'title' => '策略ID列表', 'description' => '指定快照策略ID列表。', 'type' => 'array', - 'items' => [ - 'description' => '策略ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'esp-xxx', - ], + 'items' => ['description' => '策略ID。', 'type' => 'string', 'required' => false, 'example' => 'esp-xxx'], 'required' => false, 'maxItems' => 10, ], @@ -7834,12 +4027,7 @@ 'title' => '磁盘ID列表', 'description' => '磁盘ID列表', 'type' => 'array', - 'items' => [ - 'description' => '磁盘ID。', - 'type' => 'string', - 'required' => false, - 'example' => '"d-bp67acfmxazb4p****"', - ], + 'items' => ['description' => '磁盘ID。', 'type' => 'string', 'required' => false, 'example' => '"d-bp67acfmxazb4p****"'], 'required' => false, 'maxItems' => 10, ], @@ -7847,75 +4035,36 @@ [ 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'title' => '资源组ID', - 'description' => '资源组ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmvs****', - ], + 'schema' => ['title' => '资源组ID', 'description' => '资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs****'], ], [ 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdDWBF2****', - ], + 'schema' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'title' => 'Token方式最大个数。', - 'description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" - ."\n" - .'取值范围:1~500。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], + 'schema' => ['title' => 'Token方式最大个数。', 'description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" + ."\n" + .'取值范围:1~500。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], ], [ 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时设置的每页行数。', - 'description' => '分页查询时设置的每页行数。 取值范围1-100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['title' => '分页查询时设置的每页行数。', 'description' => '分页查询时设置的每页行数。 取值范围1-100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'title' => '分页模式查询时的页数。', - 'description' => '分页查询时的页码。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['title' => '分页模式查询时的页数。', 'description' => '分页查询时的页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', - ], + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], ], [ 'name' => 'Tag', @@ -7929,20 +4078,8 @@ 'description' => '标签。', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'title' => '资源的标签键。N的取值范围为 [1, 20]。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。', - 'description' => '资源的标签键。', - 'type' => 'string', - 'required' => true, - 'example' => 'tag-key', - ], - 'Value' => [ - 'title' => '资源的标签值。n 的取值范围为 [1, 20]。一旦传入该值,可以为空字符串。最多支持128个字符,不能以acs:开头,不能包含http://或者https://。', - 'description' => '资源的标签值。', - 'type' => 'string', - 'required' => true, - 'example' => 'tag-value', - ], + 'Key' => ['title' => '资源的标签键。N的取值范围为 [1, 20]。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。', 'description' => '资源的标签键。', 'type' => 'string', 'required' => true, 'example' => 'tag-key'], + 'Value' => ['title' => '资源的标签值。n 的取值范围为 [1, 20]。一旦传入该值,可以为空字符串。最多支持128个字符,不能以acs:开头,不能包含http://或者https://。', 'description' => '资源的标签值。', 'type' => 'string', 'required' => true, 'example' => 'tag-value'], ], 'required' => false, ], @@ -7966,58 +4103,23 @@ 'description' => '策略详情', 'type' => 'object', 'properties' => [ - 'Name' => [ - 'title' => '快照策略名称', - 'description' => '快照策略名称', - 'type' => 'string', - 'example' => 'xxx', - ], - 'PolicyId' => [ - 'title' => '快照策略ID', - 'description' => '快照策略ID', - 'type' => 'string', - 'example' => 'esp-xxx', - ], - 'TargetType' => [ - 'title' => '快照策略类型', - 'description' => '类型。取值范围:'."\n" - ."\n" - .'- DISK', - 'type' => 'string', - 'example' => 'DISK', - ], - 'State' => [ - 'title' => '快照策略状态', - 'description' => '状态。取值范围:'."\n" - ."\n" - .'- DISABLED'."\n" - .'- ENABLED', - 'type' => 'string', - 'example' => 'DISABLED', - ], - 'ManagedForEcs' => [ - 'title' => '快照托管状态', - 'description' => '快照托管状态', - 'type' => 'boolean', - 'example' => 'false', - ], - 'Desc' => [ - 'title' => '快照策略描述信息', - 'description' => '快照策略描述信息', - 'type' => 'string', - 'example' => 'xxx', - ], + 'Name' => ['title' => '快照策略名称', 'description' => '快照策略名称', 'type' => 'string', 'example' => 'xxx'], + 'PolicyId' => ['title' => '快照策略ID', 'description' => '快照策略ID', 'type' => 'string', 'example' => 'esp-xxx'], + 'TargetType' => ['title' => '快照策略类型', 'description' => '类型。取值范围:'."\n" + ."\n" + .'- DISK', 'type' => 'string', 'example' => 'DISK'], + 'State' => ['title' => '快照策略状态', 'description' => '状态。取值范围:'."\n" + ."\n" + .'- DISABLED'."\n" + .'- ENABLED', 'type' => 'string', 'example' => 'DISABLED'], + 'ManagedForEcs' => ['title' => '快照托管状态', 'description' => '快照托管状态', 'type' => 'boolean', 'example' => 'false'], + 'Desc' => ['title' => '快照策略描述信息', 'description' => '快照策略描述信息', 'type' => 'string', 'example' => 'xxx'], 'Schedule' => [ 'title' => '快照策略调度规则', 'description' => '快照策略调度规则', 'type' => 'object', 'properties' => [ - 'CronExpression' => [ - 'title' => 'cron tab 表达式', - 'description' => 'cron tab 表达式', - 'type' => 'string', - 'example' => '1 1 1 */1 * ?', - ], + 'CronExpression' => ['title' => 'cron tab 表达式', 'description' => 'cron tab 表达式', 'type' => 'string', 'example' => '1 1 1 */1 * ?'], ], ], 'RetainRule' => [ @@ -8025,26 +4127,9 @@ 'description' => '快照策略保留规则', 'type' => 'object', 'properties' => [ - 'Number' => [ - 'title' => '保留个数', - 'description' => '个数', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TimeInterval' => [ - 'title' => '保留时间值', - 'description' => '保留时间值', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '14', - ], - 'TimeUnit' => [ - 'title' => '保留时间单位', - 'description' => '保留时间单位', - 'type' => 'string', - 'example' => 'DAYS', - ], + 'Number' => ['title' => '保留个数', 'description' => '个数', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TimeInterval' => ['title' => '保留时间值', 'description' => '保留规则的时间间隔,单位通过参数TimeUnit指定,取值范围大于 1。', 'type' => 'integer', 'format' => 'int32', 'example' => '14'], + 'TimeUnit' => ['title' => '保留时间单位', 'description' => '保留时间单位', 'type' => 'string', 'example' => 'DAYS'], ], ], 'StorageRule' => [ @@ -8052,12 +4137,7 @@ 'description' => '快照策略存储规则', 'type' => 'object', 'properties' => [ - 'EnableImmediateAccess' => [ - 'title' => '是否启动快照极速可用', - 'description' => '是否启动快照极速可用', - 'type' => 'boolean', - 'example' => 'false', - ], + 'EnableImmediateAccess' => ['title' => '是否启动快照极速可用', 'description' => '是否启动快照极速可用', 'type' => 'boolean', 'example' => 'false'], ], ], 'CrossRegionCopyInfo' => [ @@ -8065,12 +4145,7 @@ 'description' => '快照复制信息', 'type' => 'object', 'properties' => [ - 'Enabled' => [ - 'title' => '是否启用跨地域复制', - 'description' => '是否启用跨地域复制', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Enabled' => ['title' => '是否启用跨地域复制', 'description' => '是否启用跨地域复制', 'type' => 'boolean', 'example' => 'true'], 'Regions' => [ 'title' => '目的地域信息', 'description' => '目的地域信息', @@ -8079,37 +4154,15 @@ 'description' => '拷贝目标地域信息', 'type' => 'object', 'properties' => [ - 'RegionId' => [ - 'title' => '快照复制目的地', - 'description' => '快照复制目的地', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'RetainDays' => [ - 'title' => '目的地快照保留天数', - 'description' => '目的地快照保留天数', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '7', - ], + 'RegionId' => ['title' => '快照复制目的地', 'description' => '快照复制目的地', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'RetainDays' => ['title' => '目的地快照保留天数', 'description' => '目的地快照保留天数', 'type' => 'integer', 'format' => 'int32', 'example' => '7'], ], ], ], ], ], - 'CreateTime' => [ - 'title' => '创建时间', - 'description' => '创建时间', - 'type' => 'string', - 'example' => '2023-06-24T06:03:35Z', - ], - 'TargetCount' => [ - 'title' => '已经绑定的目标个数', - 'description' => '已经绑定的目标个数', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], + 'CreateTime' => ['title' => '创建时间', 'description' => '创建时间,UTC ISO 8601 格式。', 'type' => 'string', 'example' => '2023-06-24T06:03:35Z'], + 'TargetCount' => ['title' => '已经绑定的目标个数', 'description' => '已经绑定的目标个数', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'Tags' => [ 'title' => 'the pair tags', 'description' => 'the pair tags', @@ -8117,38 +4170,19 @@ 'items' => [ 'type' => 'object', 'properties' => [ - 'TagKey' => [ - 'title' => '资源的标签键', - 'description' => '资源的标签键', - 'type' => 'string', - 'example' => 'key', - ], - 'TagValue' => [ - 'title' => '资源的标签值', - 'description' => '资源的标签值', - 'type' => 'string', - 'example' => 'value', - ], + 'TagKey' => ['title' => '资源的标签键', 'description' => '资源的标签键', 'type' => 'string', 'example' => 'key'], + 'TagValue' => ['title' => '资源的标签值', 'description' => '资源的标签值', 'type' => 'string', 'example' => 'value'], ], + 'description' => '', ], ], - 'ResourceGroupId' => [ - 'title' => 'the resource group', - 'description' => 'the resource group', - 'type' => 'string', - 'example' => 'rg-xxx', - ], + 'ResourceGroupId' => ['title' => 'the resource group', 'description' => 'the resource group', 'type' => 'string', 'example' => 'rg-xxx'], 'SpecialRetainRules' => [ 'title' => '快照策略特殊保留规则', 'description' => '快照策略特殊保留规则', 'type' => 'object', 'properties' => [ - 'Enabled' => [ - 'title' => '是否启用特殊保留时间', - 'description' => '是否启用特殊保留时间', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Enabled' => ['title' => '是否启用特殊保留时间', 'description' => '是否启用特殊保留时间', 'type' => 'boolean', 'example' => 'true'], 'Rules' => [ 'title' => '特殊保留规则', 'description' => '特殊保留规则', @@ -8157,25 +4191,9 @@ 'description' => '特殊保留规则', 'type' => 'object', 'properties' => [ - 'SpecialPeriodUnit' => [ - 'title' => '特殊周期单位', - 'description' => '特殊周期单位', - 'type' => 'string', - 'example' => 'WEEKS', - ], - 'TimeInterval' => [ - 'title' => '保留时间值', - 'description' => '保留时间值', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TimeUnit' => [ - 'title' => '保留时间单位', - 'description' => '保留时间单位', - 'type' => 'string', - 'example' => 'WEEKS', - ], + 'SpecialPeriodUnit' => ['title' => '特殊周期单位', 'description' => '特殊周期单位', 'type' => 'string', 'example' => 'WEEKS'], + 'TimeInterval' => ['title' => '保留时间值', 'description' => '保留规则的时间间隔,单位通过参数TimeUnit指定,取值范围大于 1。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'TimeUnit' => ['title' => '保留时间单位', 'description' => '保留时间单位', 'type' => 'string', 'example' => 'WEEKS'], ], ], ], @@ -8185,465 +4203,250 @@ 'title' => '已绑定的磁盘列表', 'description' => '已绑定的磁盘列表', 'type' => 'array', - 'items' => [ - 'description' => '磁盘ID。', - 'type' => 'string', - 'example' => '"d-bp67acfmxazb4p****"'."\n", - ], + 'items' => ['description' => '磁盘ID。', 'type' => 'string', 'example' => '"d-bp67acfmxazb4p****"'."\n"], ], ], ], ], - 'PageNumber' => [ - 'title' => '分页模式查询时的页数。', - 'description' => '分页模式查询时的页数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'title' => '分页模式查询时的单页记录数量。', - 'description' => '分页模式查询时的单页记录数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'title' => '总个数', - 'description' => '总个数', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'RequestId' => [ - 'title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'description' => '请求ID', - 'type' => 'string', - 'example' => '549BB71F-6778-53CE-AA73-E94ACE802AB4', - ], - 'NextToken' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'type' => 'string', - 'example' => 'AAAAAdDWBF2****', - ], + 'PageNumber' => ['title' => '分页模式查询时的页数。', 'description' => '分页模式查询时的页数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['title' => '分页模式查询时的单页记录数量。', 'description' => '分页模式查询时的单页记录数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['title' => '总个数', 'description' => '总个数', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], + 'RequestId' => ['title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'description' => '请求ID', 'type' => 'string', 'example' => '549BB71F-6778-53CE-AA73-E94ACE802AB4'], + 'NextToken' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'type' => 'string', 'example' => 'AAAAAdDWBF2****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","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}","errorExample":""},{"type":"xml","example":"<DescribeEnterpriseSnapshotPolicyResponse>\\n <Policies>\\n <Schedule/>\\n <RetainRule/>\\n <StorageRule/>\\n <CrossRegionCopyInfo>\\n <Regions/>\\n </CrossRegionCopyInfo>\\n <Tags/>\\n </Policies>\\n</DescribeEnterpriseSnapshotPolicyResponse>","errorExample":""}]', - 'title' => '查找企业级快照策略', - ], - 'UpdateEnterpriseSnapshotPolicy' => [ - 'summary' => '调用UpdateEnterpriseSnapshotPolicy修改企业级快照策略配置。', - 'methods' => [ - 'get', - 'post', + 'gatewayOptions' => [ + 'gatewayProtocols' => [], ], - 'schemes' => [ - 'http', - 'https', + 'title' => '查找企业级快照策略', + 'changeSet' => [ + ['createdAt' => '2024-10-08T07:16:41.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2024-01-08T01:54:20.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ], + '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' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '159103', - 'abilityTreeNodes' => [ - 'FEATUREdisk1W6OYH', - ], + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '191205', + 'abilityTreeNodes' => ['FEATUREdisk2F270T'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '地域ID', - 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '地域ID。您可以调用DescribeRegions查询块存储数据洞察支持的地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'PolicyId', - 'in' => 'query', - 'schema' => [ - 'title' => '策略ID', - 'description' => '快照策略ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'esp-xxx', - ], - ], - [ - 'name' => 'Name', + 'name' => 'EventName', 'in' => 'query', 'schema' => [ - 'title' => '名称', - 'description' => '要修改的策略ID。', + 'description' => '事件名称。取值范围:'."\n" + ."\n" + .'- NoSnapshot:数据保护'."\n" + .'- BurstIOTriggered:突发 IO'."\n" + .'- CostOptimizationNeeded:成本优化'."\n" + .'- DiskSpecNotMatchedWithInstance:实例与磁盘规格不匹配'."\n" + .'- DiskIONo4kAligned:非 4K 对齐读写'."\n" + .'- DiskIOHang:磁盘有 IOHang 发生'."\n" + .'- InstanceIOPSExceedInstanceMaxLimit:实例 IOPS 到达上限'."\n" + .'- InstanceBPSExceedInstanceMaxLimit:实例 BPS 到达上限'."\n" + .'- DiskIOPSExceedInstanceMaxLimit:磁盘 IOPS 到达实例上限'."\n" + .'- DiskBPSExceedInstanceMaxLimit:磁盘 BPS 到达实例上限'."\n" + .'- DiskIOPSExceedDiskMaxLimit:磁盘 IOPS 到达磁盘上限'."\n" + .'- DiskBPSExceedDiskMaxLimit:磁盘 BPS 到达磁盘上限', 'type' => 'string', 'required' => false, - 'example' => 'xxx', + 'enumValueTitles' => [], + 'example' => 'DiskIOHang', ], ], [ - 'name' => 'State', + 'name' => 'ResourceId', 'in' => 'query', - 'schema' => [ - 'title' => '状态', - 'description' => '快照策略状态。取值范围:'."\n" - ."\n" - .'- ENABLED'."\n" - .'- DISABLED', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'DISABLED' => 'DISABLED', - 'ENABLED' => 'ENABLED', - ], - 'example' => 'ENABLED', - ], + 'schema' => ['description' => '资源ID。', 'type' => 'string', 'required' => false, 'example' => 'd-bp67acfmxazb4p****'], ], [ - 'name' => 'Desc', + 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'title' => '描述', - 'description' => '快照策略描述信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'xxx', - ], + 'schema' => ['description' => '资源类型。取值范围:'."\n" + .'- disk:磁盘', 'type' => 'string', 'required' => false, 'example' => 'disk'], ], [ - 'name' => 'Schedule', + 'name' => 'Status', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'title' => '调度规则', - 'description' => '调度规则。', - 'type' => 'object', - 'properties' => [ - 'CronExpression' => [ - 'title' => 'cron tab 表达式', - 'description' => '策略执行的周期和时间。使用cron表达式。'."\n" - ."\n" - .'例如:`0 0 4 1/1 * ?`表示从每月第一天上午4时开始,每天的上午4时执行快照操作。', - 'type' => 'string', - 'required' => true, - 'example' => '0 0 */24 * * *', - ], - ], - 'required' => false, - ], + 'schema' => ['description' => '事件状态。取值范围:'."\n" + .'- WillExecute:待处理 '."\n" + .'- Executing:处理中'."\n" + .'- Executed:已处理'."\n" + .'- Ignore:已忽略'."\n" + .'- Expired:已过期'."\n" + .'- Deleted:已删除', 'type' => 'string', 'required' => false, 'example' => 'WillExecute'], ], [ - 'name' => 'RetainRule', + 'name' => 'StartTime', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'title' => '保留规则', - 'description' => '保留规则。', - 'type' => 'object', - 'properties' => [ - 'Number' => [ - 'title' => '保留个数', - 'description' => '个数。取值范围 [1, 256]。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], - 'TimeInterval' => [ - 'title' => '保留时间值', - 'description' => '保留时间。取值范围大于1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '14', - ], - 'TimeUnit' => [ - 'title' => '保留时间单位', - 'description' => '保留时间单位。取值范围:'."\n" - ."\n" - .'- DAYS'."\n" - .'- WEEKS', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'WEEKS' => 'WEEKS', - 'DAYS' => 'DAYS', - ], - 'example' => 'DAYS', - ], - ], - 'required' => false, - ], + 'schema' => ['description' => '事件开始时间点。按照ISO8601标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', 'type' => 'string', 'required' => false, 'example' => '2023-06-01T03:00:00Z'], ], [ - 'name' => 'SpecialRetainRules', + 'name' => 'EndTime', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'title' => '特殊保留规则', - 'description' => '特殊保留规则。', - 'type' => 'object', - 'properties' => [ - 'Enabled' => [ - 'title' => '是否启用特殊保留时间', - 'description' => '是否启用特殊保留。取值范围:'."\n" - ."\n" - .'- true'."\n" - .'- false', - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => 'true', - 'false' => 'false', - ], - 'example' => 'false', - ], - 'Rules' => [ - 'title' => '特殊保留规则', - 'description' => '特殊保留规则列表,支持多个规则。', - 'type' => 'array', - 'items' => [ - 'description' => '特殊保留规则。', - 'type' => 'object', - 'properties' => [ - 'SpecialPeriodUnit' => [ - 'title' => '特殊周期单位', - 'description' => '特殊保留的快照的周期单位,如果配置成WEEKS,则为每周的第一个快照提供特殊保留,保留的时间由TimeUnit,TimeInterval决定。取值范围为:'."\n" - ."\n" - .'- WEEKS'."\n" - .'- MONTHS'."\n" - .'- YEARS', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'MONTHS' => 'MONTHS', - 'YEARS' => 'YEARS', - 'WEEKS' => 'WEEKS', - ], - 'example' => 'WEEKS', - ], - 'TimeInterval' => [ - 'title' => '保留时间值', - 'description' => '保留时间值。取值范围大于1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '30', - ], - 'TimeUnit' => [ - 'title' => '保留时间单位', - 'description' => '特殊快照的保留时间单位。取值范围:'."\n" - ."\n" - .'- DAYS'."\n" - .'- WEEKS', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'WEEKS' => 'WEEKS', - 'DAYS' => 'DAYS', - ], - 'example' => 'DAYS', - ], - ], - 'required' => false, - ], - 'required' => false, - ], - ], - 'required' => false, - ], + 'schema' => ['description' => '事件结束时间点。按照ISO8601标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', 'type' => 'string', 'required' => false, 'example' => '2023-06-01T04:00:00Z'], ], [ - 'name' => 'CrossRegionCopyInfo', + 'name' => 'MaxResults', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'title' => '快照复制目的信息', - 'description' => '快照复制目的信息。', - 'type' => 'object', - 'properties' => [ - 'Enabled' => [ - 'title' => '是否启用跨地域复制', - 'description' => '是否启用跨地域复制。取值范围:'."\n" - ."\n" - .'- true'."\n" - .'- false', - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => 'true', - 'false' => 'false', - ], - 'example' => 'false', - ], - 'Regions' => [ - 'title' => '目的地域信息', - 'description' => '目的地域信息。', - 'type' => 'array', - 'items' => [ - 'description' => '复制目的地域信息。', - 'type' => 'object', - 'properties' => [ - 'RegionId' => [ - 'title' => '快照复制目的地', - 'description' => '快照复制目的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], - 'RetainDays' => [ - 'title' => '目的地快照保留天数', - 'description' => '目的地快照保留天数。取值范围大于1。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '7', - ], - ], - 'required' => false, - ], - 'required' => false, - ], - ], - 'required' => false, - ], + 'schema' => ['description' => '分页查询时每页的最大条目数。一旦设置该参数,即表示使用`MaxResults`与`NextToken`组合参数的查询方式。'."\n" + ."\n" + .'取值范围:1~100。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '10'], ], [ - 'name' => 'ClientToken', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ - 'name' => 'StorageRule', + 'name' => 'EventLevel', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '高级快照特性。', - 'type' => 'object', - 'properties' => [ - 'EnableImmediateAccess' => [ - 'title' => '是否启动快照极速可用', - 'description' => '是否启动快照极速可用。取值范围:'."\n" - ."\n" - .'- true'."\n" - .'- false', - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => 'true', - 'false' => 'false', - ], - 'example' => 'false', - ], - ], - 'required' => false, - ], + 'schema' => ['description' => '事件级别,取值说明:'."\n" + .'- **INFO**:通知'."\n" + .'- **WARN**:警告'."\n" + .'- **CRITICAL**:严重', 'type' => 'string', 'required' => false, 'example' => 'WARN'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Response', - 'description' => '应答', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID', - 'type' => 'string', - 'example' => 'FED145A8-7D5F-5C60-B054-4EB2899A5996', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'TotalCount' => ['description' => '分页查询时的结果总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'NextToken' => ['description' => '下一个查询开始的Token,NextToken为空表示没有下一个。', 'type' => 'string', 'example' => 'AAAAAdDWBF2****'], + 'ResourceEvents' => [ + 'description' => '事件列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'EventType' => ['description' => '事件类型。可能值:'."\n" + .'1. Notification'."\n" + .'2. SystemException'."\n" + .'3. Alert', 'type' => 'string', 'example' => 'Alert'], + 'EventName' => ['description' => '事件名称。可能值:'."\n" + ."\n" + .'- NoSnapshot:数据保护'."\n" + .'- BurstIOTriggered:突发 IO'."\n" + .'- CostOptimizationNeeded:成本优化'."\n" + .'- DiskSpecNotMatchedWithInstance:实例与磁盘规格不匹配'."\n" + .'- DiskIONo4kAligned:非 4K 对齐读写'."\n" + .'- DiskIOHang:磁盘有 IOHang 发生'."\n" + .'- InstanceIOPSExceedInstanceMaxLimit:实例 IOPS 到达上限'."\n" + .'- InstanceBPSExceedInstanceMaxLimit:实例 BPS 到达上限'."\n" + .'- DiskIOPSExceedInstanceMaxLimit:磁盘 IOPS 到达实例上限'."\n" + .'- DiskBPSExceedInstanceMaxLimit:磁盘 BPS 到达实例上限'."\n" + .'- DiskIOPSExceedDiskMaxLimit:磁盘 IOPS 到达磁盘上限'."\n" + .'- DiskBPSExceedDiskMaxLimit:磁盘 BPS 到达磁盘上限', 'type' => 'string', 'example' => 'DiskIOHang'], + 'ResourceId' => ['description' => '资源ID。', 'type' => 'string', 'example' => 'd-bp67acfmxazb4p****'."\n"], + 'ResourceType' => ['description' => '资源类型。', 'type' => 'string', 'example' => 'disk'], + 'Status' => ['description' => '事件状态。可能值:'."\n" + .'1. WillExecute:待处理'."\n" + .'2. Executing:处理中'."\n" + .'3. Executed:已处理'."\n" + .'4. Ignore:已忽略'."\n" + .'5. Expired:已过期'."\n" + .'6. Deleted:已删除', 'type' => 'string', 'example' => 'WillExecute'], + 'StartTime' => ['description' => '事件开始时间戳(毫秒级)。', 'type' => 'string', 'example' => '1684204822000'], + 'Description' => ['description' => '事件描述。', 'type' => 'string', 'example' => '可通过购买4296预配置IOPS以获得成本优化,根据您过往7天使用情况,预计成本可以下降16%。'], + 'RecommendAction' => ['description' => '事件发生后的推荐操作。可能值:'."\n" + ."\n" + .'- ModifyDiskSpec:变配'."\n" + .'- CreateSnapshot:打快照'."\n" + .'- ResizeDisk:扩容'."\n" + .'- AdjustProvision:调节预配置等'."\n" + .'- ModifyInstanceSpec:实例变配', 'type' => 'string', 'example' => 'AdjustProvision'], + 'RecommendParams' => ['description' => '事件发生后的推荐操作的参数。', 'type' => 'string', 'example' => '4296'], + 'EventLevel' => ['description' => '事件级别,可能值:'."\n" + ."\n" + .'1. INFO'."\n" + .'2. WARN'."\n" + .'3. CRITICAL', 'type' => 'string', 'example' => 'INFO'], + 'EndTime' => ['description' => '事件结束时间戳(毫秒级)。', 'type' => 'string', 'example' => '1679538083000'], + 'ExtraAttributes' => ['description' => '附加属性,可能的字段有:'."\n" + ."\n" + .'- EcsInstanceId:云盘挂载的ECS实例ID;'."\n" + .'- Adapter:云盘挂载点。', 'type' => 'string', 'example' => '{\\"EcsInstanceId\\":\\"i-uf6dkn9qpcw6y94g7ag7\\",\\"Adapter\\":\\"hda\\"}'], + ], + 'description' => '', + ], ], ], ], @@ -8651,485 +4454,531 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['errorCode' => 'App.NumberExceed', 'errorMessage' => 'The number of apps exceeded.', 'description' => 'app数量超过限制'], + ['errorCode' => 'DocumentConvertFailed.ExceedFileSizeLimit', 'errorMessage' => 'The conversion has been failed, exceed file size limit.', 'description' => '文档转换失败,文件大小超过系统限额。'], + ['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' => '如果您提供了一个已经使用过的ClientToken,但其他请求参数有变化。'], + ['errorCode' => 'InvalidDiskSize.NotSupported', 'errorMessage' => 'The specified parameter size is not valid.', 'description' => '不支持的云盘大小'], + ['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.EndTime', 'errorMessage' => 'The specified parameter EndTime is earlier than StartTime.', 'description' => '参数 EndTime 早于 StartTime。'], + ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['errorCode' => 'InvalidParameter.TooManyDataQueried', 'errorMessage' => 'Too many data queried.', 'description' => '查询数据过多。'], ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['errorCode' => 'AliCroup2CloudUserCannotBuyNotInnerCommodity', 'errorMessage' => 'There is no group cloud commodity label, and users within the group are not allowed to purchase.', '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' => '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' => '当前操作不支持您指定的磁盘类型。请检查您的输入参数和API文档。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => '查询资源事件', + 'summary' => '查询云盘风险事件。', + 'changeSet' => [ + ['createdAt' => '2024-12-06T09:03:30.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2024-08-19T03:21:55.000Z', 'description' => '错误码发生变更'], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"FED145A8-7D5F-5C60-B054-4EB2899A5996\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateEnterpriseSnapshotPolicyResponse>\\n <RequestId>xxx</RequestId>\\n</UpdateEnterpriseSnapshotPolicyResponse>","errorExample":""}]', - 'title' => '修改企业级快照策略', - ], - 'BindEnterpriseSnapshotPolicy' => [ - 'summary' => '调用BindEnterpriseSnapshotPolicy绑定云盘到企业级快照策略。', - 'methods' => [ - 'get', - 'post', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeEvents'], + ], + 'product' => ['code' => 'disk', 'title' => '块存储'], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'ebs:DescribeEvents', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', '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' => '查询一块或多块您已经创建的块存储云盘。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '159099', - 'abilityTreeNodes' => [ - 'FEATUREdiskTL976Y', - ], + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '216732', + 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '地域ID', - 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '地域', 'description' => '地域 ID。您可以调用 DescribeRegions 查询块存储数据洞察支持的地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'PolicyId', + 'name' => 'DiskIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => '快照策略ID', - 'description' => '快照策略ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'esp-xxx', + 'title' => '磁盘ID列表', + 'description' => '指定云盘ID列表。', + 'type' => 'array', + 'items' => ['description' => '云盘ID。', 'type' => 'string', 'required' => false, 'example' => 'd-cd40hxfu0v*****'], + 'required' => false, + 'example' => '[\'d-1\', \'d-2\']', + 'maxItems' => 100, ], ], [ - 'name' => 'DiskTargets', + 'name' => 'DiskCategory', + 'in' => 'query', + 'schema' => ['title' => '磁盘类型', 'description' => '云盘类型。取值范围:'."\n" + ."\n" + .'- cloud:普通云盘。'."\n" + .'- cloud_efficiency:高效云盘。'."\n" + .'- cloud_ssd:SSD 盘。'."\n" + .'- cloud_essd:ESSD 云盘。'."\n" + .'- cloud_auto:ESSD AutoPL 云盘。'."\n" + .'- cloud_essd_entry:ESSD Entry 云盘。', 'type' => 'string', 'required' => false, 'example' => 'cloud_auto'], + ], + [ + 'name' => 'LensTags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'title' => 'the disk targets', - 'description' => '需要绑定的云盘列表。', + 'description' => '云盘事件标签列表,用于筛选24小时内发生过这些事件类型的云盘。取值范围:'."\n" + .'- NoSnapshot:数据保护'."\n" + .'- BurstIOTriggered:突发IO'."\n" + .'- CostOptimizationNeeded:成本优化'."\n" + .'- DiskSpecNotMatchedWithInstance:实例与云盘规格不匹配'."\n" + .'- DiskIONo4kAligned:非4K对齐读写'."\n" + .'- DiskIOHang:云盘有IOHang发生'."\n" + .'- InstanceIOPSExceedInstanceMaxLimit:实例IOPS到达上限'."\n" + .'- InstanceBPSExceedInstanceMaxLimit:实例BPS到达上限'."\n" + .'- DiskIOPSExceedInstanceMaxLimit:云盘IOPS到达实例上限'."\n" + .'- DiskBPSExceedInstanceMaxLimit:云盘BPS到达实例上限'."\n" + .'- DiskIOPSExceedDiskMaxLimit:云盘IOPS到达磁盘上限'."\n" + .'- DiskBPSExceedDiskMaxLimit:云盘BPS到达磁盘上限', 'type' => 'array', - 'items' => [ - 'description' => '磁盘ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'd-xxx', - ], + 'items' => ['description' => '云盘事件标签。', 'type' => 'string', 'required' => false, 'example' => 'NoSnapshot'], 'required' => false, - 'maxItems' => 10, + 'maxItems' => 100, ], ], [ - 'name' => 'ClientToken', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['title' => '下一个Token', 'description' => '查询凭证(Token),取值为上一次 API 调用返回的NextToken参数值。', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['title' => 'Token方式最大个数', 'description' => '分页查询时每页行数。最大值为 100。'."\n" + .'默认值:'."\n" + ."\n" + .'- 默认值为 10。'."\n" + ."\n" + .'- 当设置的值大于 100 时,默认值为 100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + ], + [ + 'name' => 'DiskIdPattern', + 'in' => 'query', + 'schema' => ['description' => '正则匹配模糊查询筛选云盘ID。', 'type' => 'string', 'required' => false, 'example' => 'd-cd40hxfu0v*'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Response', - 'description' => '应答', + 'title' => 'DescribeLensMonitorDisksResponse', + 'description' => 'DescribeLensMonitorDisksResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求ID', - 'description' => '请求ID', - 'type' => 'string', - 'example' => 'D763F3A9-EB16-5E85-BFD5-AA9E07D18CB9', + 'DiskInfos' => [ + 'description' => '云盘信息列表。', + 'type' => 'array', + 'items' => [ + 'description' => '云盘信息。', + 'type' => 'object', + 'properties' => [ + 'DiskId' => ['description' => '云盘ID。', 'type' => 'string', 'example' => 'd-cd401****'], + 'DiskName' => ['description' => '云盘名称。', 'type' => 'string', 'example' => 'disk-28c6b****'], + 'DiskType' => ['description' => '云盘类型。可能值:'."\n" + ."\n" + .'- system:系统盘。'."\n" + .'- data:数据盘。', 'type' => 'string', 'example' => 'system'], + 'DiskStatus' => ['description' => '云盘状态。可能值:'."\n" + .'- Available:使用中。'."\n" + .'- Deleted:已删除。', 'type' => 'string', 'example' => 'Available'], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'DiskCategory' => ['description' => '云盘类型。取值范围:'."\n" + ."\n" + .'- cloud:普通云盘。'."\n" + .'- cloud_efficiency:高效云盘。'."\n" + .'- cloud_ssd:SSD 盘。'."\n" + .'- cloud_essd:ESSD 云盘。'."\n" + .'- cloud_auto:ESSD AutoPL 云盘。'."\n" + .'- cloud_essd_entry:ESSD Entry 云盘。', 'type' => 'string', 'example' => 'cloud_essd'], + 'PerformanceLevel' => ['description' => 'ESSD云盘的性能等级。可能值:'."\n" + ."\n" + .'- PL0:单盘最高随机读写IOPS 1万。'."\n" + .'- PL1:单盘最高随机读写IOPS 5万。'."\n" + .'- PL2:单盘最高随机读写IOPS 10万。'."\n" + .'- PL3:单盘最高随机读写IOPS 100万。', 'type' => 'string', 'example' => 'PL0'], + 'Tags' => [ + 'description' => '云盘的标签集合。', + 'type' => 'array', + 'items' => [ + 'description' => '云盘的标签。', + 'type' => 'object', + 'properties' => [ + 'TagValue' => ['description' => '标签值。', 'type' => 'string', 'example' => 'user'], + 'TagKey' => ['description' => '标签键。', 'type' => 'string', 'example' => 'tag1'], + ], + ], + ], + 'ZoneId' => ['description' => '云盘所属的可用区ID。', 'type' => 'string', 'example' => 'cn-hangzhou-j'], + 'Size' => ['description' => '云盘大小,单位为GiB。', 'type' => 'integer', 'format' => 'int32', 'example' => '64'], + 'Iops' => ['description' => '每秒读写(I/O)操作的次数上限,单位:次/s。', 'type' => 'integer', 'format' => 'int32', 'example' => '4000'], + 'Bps' => ['description' => '每秒读写(I/O)成功传输的数据数量上限,单位:MB/s。', 'type' => 'integer', 'format' => 'int32', 'example' => '300'], + 'ProvisionedIops' => ['description' => 'ESSD AutoPL云盘预配置的读写IOPS。可能值:0~min{50000, 1000*容量-基准性能}。'."\n" + ."\n" + .'基准性能=min{1,800+50*容量, 50,000}。'."\n" + ."\n" + .'当`DiskCategory`取值为`cloud_auto`时才支持设置该参数。更多信息,请参见[ESSD AutoPL 云盘](~~368372~~)。', 'type' => 'integer', 'format' => 'int32', 'example' => '4000'], + 'BurstingEnabled' => ['description' => '是否开启Burst(性能突发)。可能值:'."\n" + ."\n" + .'- true:是。'."\n" + .'- false:否。'."\n" + ."\n" + .'当`DiskCategory`取值为`cloud_auto`时才支持设置该参数。更多信息,请参见[ESSD AutoPL 云盘](~~368372~~)。', 'type' => 'boolean', 'example' => 'true'], + 'LensTags' => [ + 'description' => '云盘的事件标签集合。事件标签展示云盘24小时内发生过的事件,相比事件有1小时之内的延迟。', + 'type' => 'array', + 'items' => ['description' => '云盘的事件标签。', 'type' => 'string', 'example' => '["NoSnapshot", "DiskIOHang"]'], + ], + 'SharingEnabled' => ['description' => '是否共享盘', 'type' => 'string', 'example' => 'true'], + ], + ], ], + 'NextToken' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], + 'TotalCount' => ['title' => '总个数', 'description' => '查询结果总条数。', 'type' => 'integer', 'format' => 'int64', 'example' => '6'], + 'RequestId' => ['title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"D763F3A9-EB16-5E85-BFD5-AA9E07D18CB9\\"\\n}","errorExample":""},{"type":"xml","example":"<BindEnterpriseSnapshotPolicyResponse>\\n <RequestId>xxx</RequestId>\\n</BindEnterpriseSnapshotPolicyResponse>","errorExample":""}]', - 'title' => '绑定企业级快照策略', - ], - 'UnbindEnterpriseSnapshotPolicy' => [ - 'summary' => '调用UnbindEnterpriseSnapshotPolicy为云盘解除企业级快照策略绑定。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], + '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' => '查询一块或多块您已经创建的块存储云盘', + 'changeSet' => [ + ['createdAt' => '2025-04-29T10:57:08.000Z', 'description' => '响应参数发生变更'], + ['createdAt' => '2025-01-03T10:09:07.000Z', 'description' => '请求参数发生变更'], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '159100', - 'abilityTreeNodes' => [ - 'FEATUREdiskAAH44P', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeLensMonitorDisks'], ], + 'product' => ['code' => 'disk', 'title' => '块存储'], ], - 'parameters' => [ + 'ramActions' => [ [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'title' => '地域ID', - 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'PolicyId', - 'in' => 'query', - 'schema' => [ - 'title' => 'the id of the snapshot policy', - 'description' => '要解除绑定的策略ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'esp-xxs', - ], - ], - [ - 'name' => 'DiskTargets', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'title' => 'the disk targets', - 'description' => '要解除绑定的云盘列表。', - 'type' => 'array', - 'items' => [ - 'description' => '磁盘ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'd-xxx', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:DescribeLensMonitorDisks', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], ], - 'required' => false, - 'maxItems' => 10, ], ], + ], + ], + 'DescribeLensServiceStatus' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ClientToken', - 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'AK' => [], ], ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '138260', + 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Response', - 'description' => '应答', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求ID', - 'description' => '请求ID', - 'type' => 'string', - 'example' => '061DE1AB-08BA-5ACD-A03A-440117C6939A', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'Status' => ['description' => '块存储数据洞察(CloudLens for EBS)的状态。可能值:'."\n" + ."\n" + .'- Applying:申请中。'."\n" + ."\n" + .'- UnAvailable:不可用。'."\n" + ."\n" + .'- Available:可用。'."\n", 'type' => 'string', 'example' => 'Available'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => '参数错误'], ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => '当前用户无权限对当前资源执行任何操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => '当前用户无权限执行该操作。请检查您的账号权限或者咨询您的主账号管理员。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'title' => '查询数据洞察服务状态', + 'summary' => '查询用户开通ebs数据洞察服务状态。', + 'changeSet' => [ + ['createdAt' => '2023-03-22T01:59:35.000Z', 'description' => '错误码发生变更'], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"061DE1AB-08BA-5ACD-A03A-440117C6939A\\"\\n}","errorExample":""},{"type":"xml","example":"<UnbindEnterpriseSnapshotPolicyResponse>\\n <RequestId>xxx</RequestId>\\n</UnbindEnterpriseSnapshotPolicyResponse>","errorExample":""}]', - 'title' => '解除企业级快照策略绑定', - ], - 'DeleteEnterpriseSnapshotPolicy' => [ - 'summary' => '调用DeleteEnterpriseSnapshotPolicy删除企业级快照策略。', - 'methods' => [ - 'get', - 'post', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeLensServiceStatus'], + ], + 'product' => ['code' => 'disk', 'title' => '块存储'], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ebs:DescribeLensServiceStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Status\\": \\"Available\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeLensServiceStatusResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <Status>Available</Status>\\n</DescribeLensServiceStatusResponse>","errorExample":""}]', + ], + 'DescribeMetricData' => [ + 'summary' => '查询资源监控指标。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '159101', - 'abilityTreeNodes' => [ - 'FEATUREdiskAAH44P', - ], + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '185234', + 'abilityTreeNodes' => ['FEATUREdiskLP80G7'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'MetricName', 'in' => 'query', - 'schema' => [ - 'title' => '地域ID', - 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '指标名称', 'description' => '指标名称。可选的值有:'."\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' => 'PolicyId', + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => ['title' => '开始时间', 'description' => '获取指标数据的起始时间点。最远可选当前时刻过去30天内的时刻作为起始时间点。当StartTime和EndTime参数都为空时,默认查询最近一个period的监控指标。按照ISO 8601标准表示,并使用UTC +0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', 'type' => 'string', 'required' => false, 'example' => '2023-11-21T01:50:00Z'], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => ['title' => '结束时间', 'description' => '获取指标数据的结束时间点。不应大于当前时刻。按照ISO 8601标准表示,并使用UTC +0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', 'type' => 'string', 'required' => false, 'example' => '2023-11-21T02:00:00Z'], + ], + [ + 'name' => 'Period', 'in' => 'query', 'schema' => [ - 'title' => 'the id of the snapshot policy', - 'description' => '要删除的策略ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'esp-xxx', + 'title' => '间隔时间(秒)', + 'description' => '获取指标数据的间隔时间。单位:秒。默认值为5秒。可选的取值:'."\n" + ."\n" + .'- 5:5s精度查询,可查询12小时时间长度'."\n" + .'- 10:10s精度查询,可查询24小时时间长度'."\n" + .'- 60:60s精度查询,可查询7天时间长度'."\n" + .'- 300:300s精度查询,可查询30天时间长度'."\n" + .'- 600:600s精度查询,可查询30天时间长度'."\n" + .'- 3600:3600s精度查询,可查询30天时间长度', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [], + 'example' => '60', ], ], [ - 'name' => 'ClientToken', + 'name' => 'Dimensions', 'in' => 'query', + 'schema' => ['title' => '维度map', 'description' => '维度Map,JSON格式,表示查询的维度,当前可选的键为:'."\n" + .'- DiskId:云盘名,例如d-xxx。'."\n" + .'- DeviceType:云盘种类,system表示系统盘,data表示数据盘。'."\n" + .'- DeviceCategory:云盘类型,例如cloud_essd。'."\n" + .'- EcsInstanceId:所在的ECS实例名,例如i-xxx。'."\n" + .'- Azone:可用区,例如cn-hangzhou-a。'."\n" + ."\n" + .'返回结果取所有维度筛选条件的交集。', 'type' => 'string', 'required' => false, 'example' => '{"DiskId":["d-bp14xxxx","d-bp11xxxx"], "DeviceCategory": ["cloud_essd"]}'], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai'], + ], + [ + 'name' => 'AggreOps', + 'in' => 'query', + 'schema' => ['description' => '时间维度聚合方式。可选的值有:'."\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:左闭右开区间求总和'."\n" + .'- AVG_OVER_TIME_LCRO:左闭右开区间求均值'."\n" + .'- SUM_OVER_TIME_LORC:左开右闭区间求总和'."\n" + .'- AVG_OVER_TIME_LORC:左开右闭区间求均值', 'type' => 'string', 'required' => false, 'example' => 'AVG_OVER_TIME'], + ], + [ + 'name' => 'AggreOverLineOps', + 'in' => 'query', + 'schema' => ['description' => '线之间的聚合方式。可选的值有:'."\n" + .'- NON:不做聚合'."\n" + .'- SUM:求和'."\n" + .'- AVG:求均值'."\n" + .'- COUNT:计数'."\n" + .'- MAX:求最大值'."\n" + .'- MIN:求最小值', 'type' => 'string', 'required' => false, 'example' => 'NON'], + ], + [ + 'name' => 'GroupByLabels', + 'in' => 'query', + 'style' => 'simple', 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', + 'description' => '用于分组聚合的字段列表。', + 'type' => 'array', + 'items' => ['description' => '用于分组的字段。可选的字段有:'."\n" + .'- DiskId:云盘名,例如d-xxx。'."\n" + .'- DeviceType:云盘种类,system表示系统盘,data表示数据盘。'."\n" + .'- DeviceCategory:云盘类型,例如cloud_essd。'."\n" + .'- EcsInstanceId:所在的ECS实例名,例如i-xxx。'."\n" + .'- Azone:可用区,例如cn-hangzhou-a。', 'type' => 'string', 'required' => false, 'example' => 'DeviceType'], 'required' => false, - 'example' => 'xxx', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Response', - 'description' => 'Response', + 'title' => 'DescribeMetricDataResponse', + 'description' => 'DescribeMetricDataResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求ID', - 'description' => '请求ID', - 'type' => 'string', - 'example' => 'xxx', + 'TotalCount' => ['title' => '查询到的数据总数', 'description' => '查询到的数据总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'DataList' => [ + 'title' => '云盘的监控数据集合', + 'description' => '云盘的监控数据集合。', + 'type' => 'array', + 'items' => [ + 'description' => '返回数据列表。', + 'type' => 'object', + 'properties' => [ + 'Labels' => ['description' => '标签。', 'type' => 'any', 'example' => '{"DiskId": "d-1234"}'], + 'Datapoints' => ['description' => '监控数据列表,一系列连续的秒级时间戳和查询的指标对应时刻的值的列表。', 'type' => 'any', 'example' => '{"1699258861": 1,"1699259461": 0}'], + ], + ], + ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****'], + 'Warnings' => [ + 'description' => '警告信息列表。', + 'type' => 'array', + 'items' => ['description' => '警告信息。', 'type' => 'string', 'example' => 'not complete.'], ], ], ], @@ -9137,283 +4986,252 @@ ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"xxx\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteEnterpriseSnapshotPolicyResponse>\\n <RequestId>xxx</RequestId>\\n</DeleteEnterpriseSnapshotPolicyResponse>","errorExample":""}]', - 'title' => '删除企业级快照策略', - ], - 'ApplyLensService' => [ - 'summary' => '开通块存储数据洞察(CloudLens for EBS)。', - 'methods' => [ - 'post', - 'get', + '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' => '查询监控指标', + 'changeSet' => [ + ['createdAt' => '2025-07-02T09:50:11.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-04-29T10:57:08.000Z', 'description' => '请求参数发生变更、响应参数发生变更'], + ['createdAt' => '2024-11-07T13:16:45.000Z', 'description' => '请求参数发生变更'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeMetricData'], + ], + 'product' => ['code' => 'disk', 'title' => '块存储'], ], + 'ramActions' => [], + ], + 'DescribePairDrills' => [ + 'summary' => '该接口用于查询当前地域的盘作为复制对从端时,曾经对复制对所启动的容灾演练。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '138241', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - 'FEATUREdiskLP80G7', - ], - 'tenantRelevance' => 'publicInformation', - ], - 'parameters' => [], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - ], - ], - ], + 'operationType' => 'list', + 'abilityTreeCode' => '186462', + 'abilityTreeNodes' => ['FEATUREdiskAQUAFH', 'FEATUREdiskVW208V'], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '异步复制对中主盘或从盘所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], - 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + [ + 'name' => 'DrillId', + 'in' => 'query', + 'schema' => ['title' => '演练ID。', 'description' => '演练ID。', 'type' => 'string', 'required' => false, 'example' => 'drill-xxxx'], ], [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + 'name' => 'PairId', + 'in' => 'query', + 'schema' => ['title' => '复制对ID。', 'description' => '复制对ID。您可以通过[DescribeDiskReplicaPairs](~~354206~~)接口查询异步复制对列表,获得复制对ID入参的值。', 'type' => 'string', 'required' => true, 'example' => 'pair-xxxx'], ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', - ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['title' => '分页查询时每页的最大条目数。取值范围:1~500'."\n" + ."\n" + .'默认值:10', 'description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" + ."\n" + .'取值范围:1~500。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10'], ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', - ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<ApplyLensServiceResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</ApplyLensServiceResponse>","errorExample":""}]', - 'title' => '开通数据洞察服务', - ], - 'DescribeLensServiceStatus' => [ - 'summary' => '查询用户开通ebs数据洞察服务状态。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['title' => '分页查询时的页码。', 'description' => '分页查询时的页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '138260', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - 'FEATUREdiskLP80G7', + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['title' => '分页查询时设置的每页行数。', 'description' => '分页查询时设置的每页行数。 取值范围1-100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], - 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', + 'title' => 'DescribePairDrillResponse', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'Status' => [ - 'description' => '块存储数据洞察(CloudLens for EBS)的状态。可能值:'."\n" - ."\n" - .'- Applying:申请中。'."\n" - ."\n" - .'- UnAvailable:不可用。'."\n" - ."\n" - .'- Available:可用。'."\n", - 'type' => 'string', - 'example' => 'Available', + 'Drills' => [ + 'description' => '复制对容灾演练的信息组成的集合。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DrillId' => ['title' => '演练ID', 'description' => '演练ID。', 'type' => 'string', 'example' => 'drill-xxx'], + 'Status' => [ + 'title' => '演练状态', + 'description' => '演练状态。可能值:'."\n" + .'- execute_failed:执行失败。'."\n" + .'- executed:已执行。'."\n" + .'- executing:执行中。'."\n" + .'- clear_failed:清理失败。'."\n" + .'- clearing:清理中。', + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'executing', + ], + 'DrillDiskId' => ['title' => '演练盘ID', 'description' => '演练盘ID。', 'type' => 'string', 'example' => 'd-xxx'], + 'DrillDiskStatus' => [ + 'title' => '演练盘状态', + 'description' => '演练盘状态,可能值:'."\n" + .'- created:已创建。'."\n" + .'- deleted:已删除。'."\n" + .'- creating:创建中。'."\n" + .'- deleting:删除中。'."\n" + ."\n" + .'> 除演练盘状态外,还可以展示演练盘创建或删除失败的错误码详情。', + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'created', + ], + 'StartAt' => ['title' => '启动时间', 'description' => '演练启动时间。该参数以时间戳的形式提供返回值。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1690855888'], + 'RecoverPoint' => ['title' => '该演练对应的恢复点。', 'description' => '该演练对应的恢复点。该参数以时间戳的形式提供返回值。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1690855931'], + 'StatusMessage' => ['title' => '任务执行失败的错误提示信息。', 'description' => '任务执行失败的错误提示信息。', 'type' => 'string', 'example' => 'PAIR_SYNCPOINT_NOT_FOUND'], + ], + ], ], + 'NextToken' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '本次调用返回的查询凭证(Token)。', 'type' => 'string', 'example' => 'AAAAAdDWBF2****'], + 'PageNumber' => ['title' => '分页模式查询时的页数。', 'description' => '分页模式查询时的页数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['title' => '分页模式查询时的单页记录数量。', 'description' => '分页模式查询时的单页记录数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['title' => '总个数', 'description' => '分页查询时的结果总条数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C46FF5A8-C5F0-4024-8262-B16B6392****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', + ['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 \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"C46FF5A8-C5F0-4024-8262-B16B6392****\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribePairDrillsResponse>\\n <Drills>\\n <DrillId>drill-xxx</DrillId>\\n <Status>executing</Status>\\n <DrillDiskId>d-xxx</DrillDiskId>\\n <DrillDiskStatus>created</DrillDiskStatus>\\n <StartAt>1690855888</StartAt>\\n <RecoverPoint>1690855931</RecoverPoint>\\n <StatusMessage>PAIR_SYNCPOINT_NOT_FOUND</StatusMessage>\\n </Drills>\\n <NextToken>AAAAAdDWBF2****</NextToken>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>1</TotalCount>\\n <RequestId>C46FF5A8-C5F0-4024-8262-B16B6392****</RequestId>\\n</DescribePairDrillsResponse>","errorExample":""}]', + 'title' => '查询复制对当前的容灾演练', + '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}'], + ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Status\\": \\"Available\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeLensServiceStatusResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <Status>Available</Status>\\n</DescribeLensServiceStatusResponse>","errorExample":""}]', - 'title' => '查询数据洞察服务状态', ], - 'CancelLensService' => [ - 'summary' => '取消块存储数据洞察(CloudLens for EBS)。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeRegions' => [ + 'summary' => '查询块存储EBS相关功能异步复制、数据洞察、专属块存储集群支持的地域信息。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '138257', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - 'FEATUREdiskLP80G7', + 'operationType' => 'get', + 'abilityTreeCode' => '61960', + 'abilityTreeNodes' => ['FEATUREdisk0EX8WR'], + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['description' => '资源类型。取值范围:'."\n" + ."\n" + .'- ear:异步复制。'."\n" + ."\n" + .'- lens:数据洞察。'."\n" + ."\n" + .'- dbsc: 专属块存储集群。'."\n" + ."\n" + .'未指定资源类型时,将会返回所有资源类型支持的地域信息。', 'type' => 'string', 'required' => false, 'example' => 'ear'], + ], + [ + 'name' => 'AcceptLanguage', + 'in' => 'query', + 'schema' => ['description' => '地域和可用区名称的语言类型。对应返回参数中`LocalName`的返回值。取值范围:'."\n" + ."\n" + .'- zh-CN:中文。'."\n" + .'- en-US:英文。'."\n" + .'- ja:日文。'."\n" + ."\n" + .'默认值:zh-CN。', 'type' => 'string', 'required' => false, 'example' => 'zh-CN'], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '用户访问端的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing', 'default' => 'cn-shanghai'], ], - 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ @@ -9421,65 +5239,85 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => '17EE62D8-064E-5404-8B0D-72122478****'], + 'Regions' => [ + 'description' => '地域和可用区信息合集。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LocalName' => ['description' => '地域名称。', 'type' => 'string', 'example' => '华东1(杭州)'], + 'RegionEndpoint' => ['description' => '地域对应的接入地址(Endpoint)。', 'type' => 'string', 'example' => 'ebs.cn-hangzhou.aliyuncs.com'], + 'RegionId' => ['description' => '地域ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'Zones' => [ + 'description' => '可用区信息合集。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LocalName' => ['description' => '可用区名称。', 'type' => 'string', 'example' => '杭州 可用区H'], + 'ZoneId' => ['description' => '可用区ID。', 'type' => 'string', 'example' => 'cn-hangzhou-h'], + 'ResourceTypes' => [ + 'description' => '资源类型列表。', + 'type' => 'array', + 'items' => ['description' => '资源类型。可能值:'."\n" + ."\n" + .'- ear:异步复制。'."\n" + ."\n" + .'- lens:数据洞察。'."\n" + ."\n" + .'- dbsc: 专属块存储集群。', 'type' => 'string', 'example' => 'ear'], + ], + ], + ], + ], + ], + ], ], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<CancelLensServiceResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</CancelLensServiceResponse>","errorExample":""}]', - 'title' => '取消数据洞察服务', - ], - 'DescribeLensMonitorDisks' => [ - 'summary' => '查询一块或多块您已经创建的块存储云盘。', - 'methods' => [ - 'get', - 'post', + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"17EE62D8-064E-5404-8B0D-72122478****\\",\\n \\"Regions\\": [\\n {\\n \\"LocalName\\": \\"华东1(杭州)\\",\\n \\"RegionEndpoint\\": \\"ebs.cn-hangzhou.aliyuncs.com\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Zones\\": [\\n {\\n \\"LocalName\\": \\"杭州 可用区H\\",\\n \\"ZoneId\\": \\"cn-hangzhou-h\\",\\n \\"ResourceTypes\\": [\\n \\"ear\\"\\n ]\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeRegionsResponse>\\n <RequestId>17EE62D8-064E-5404-8B0D-72122478****</RequestId>\\n <Regions>\\n <LocalName>华东1(杭州)</LocalName>\\n <RegionEndpoint>ebs.cn-hangzhou.aliyuncs.com</RegionEndpoint>\\n <RegionId>cn-hangzhou</RegionId>\\n <Zones>\\n <LocalName>杭州 可用区H</LocalName>\\n <ZoneId>cn-hangzhou-h</ZoneId>\\n </Zones>\\n </Regions>\\n</DescribeRegionsResponse>","errorExample":""}]', + 'title' => '查询地域信息', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ebs:DescribeRegions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeReplicaGroupDrills' => [ + 'summary' => '该接口用于查询当前地域的盘作为复制组从端时,曾经对复制组所启动的容灾演练。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -9489,389 +5327,157 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '216732', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - 'FEATUREdiskLP80G7', - ], + 'abilityTreeCode' => '189140', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '地域', - 'description' => '地域 ID。您可以调用 DescribeRegions 查询块存储数据洞察支持的地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '地域ID。', 'description' => '异步复制组中主盘或从盘所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'DiskIds', + 'name' => 'GroupId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'title' => '磁盘ID列表', - 'description' => '指定云盘ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '云盘ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'd-cd40hxfu0v*****', - ], - 'required' => false, - 'example' => '[\'d-1\', \'d-2\']', - 'maxItems' => 100, - ], + 'schema' => ['title' => '复制组ID。', 'description' => '复制组ID。您可以通过[DescribeDiskReplicaGroups](~~426614~~)接口查询异步复制组列表,获得复制组ID入参的值。', 'type' => 'string', 'required' => true, 'example' => 'pg-xxxx'], ], [ - 'name' => 'DiskCategory', + 'name' => 'DrillId', 'in' => 'query', - 'schema' => [ - 'title' => '磁盘类型', - 'description' => '云盘类型。取值范围:'."\n" - ."\n" - .'- cloud:普通云盘。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD 盘。'."\n" - .'- cloud_essd:ESSD 云盘。'."\n" - .'- cloud_auto:ESSD AutoPL 云盘。'."\n" - .'- cloud_essd_entry:ESSD Entry 云盘。', - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_auto', - ], + 'schema' => ['title' => '演练ID。', 'description' => '演练ID。', 'type' => 'string', 'required' => false, 'example' => 'pg-drill-xxxx'], ], [ - 'name' => 'LensTags', + 'name' => 'NextToken', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '云盘事件标签列表,用于筛选24小时内发生过这些事件类型的云盘。取值范围:'."\n" - .'- NoSnapshot:数据保护'."\n" - .'- BurstIOTriggered:突发IO'."\n" - .'- CostOptimizationNeeded:成本优化'."\n" - .'- DiskSpecNotMatchedWithInstance:实例与云盘规格不匹配'."\n" - .'- DiskIONo4kAligned:非4K对齐读写'."\n" - .'- DiskIOHang:云盘有IOHang发生'."\n" - .'- InstanceIOPSExceedInstanceMaxLimit:实例IOPS到达上限'."\n" - .'- InstanceBPSExceedInstanceMaxLimit:实例BPS到达上限'."\n" - .'- DiskIOPSExceedInstanceMaxLimit:云盘IOPS到达实例上限'."\n" - .'- DiskBPSExceedInstanceMaxLimit:云盘BPS到达实例上限'."\n" - .'- DiskIOPSExceedDiskMaxLimit:云盘IOPS到达磁盘上限'."\n" - .'- DiskBPSExceedDiskMaxLimit:云盘BPS到达磁盘上限', - 'type' => 'array', - 'items' => [ - 'description' => '云盘事件标签。', - 'type' => 'string', - 'required' => false, - 'example' => 'NoSnapshot', - ], - 'required' => false, - 'maxItems' => 100, - ], + 'schema' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ - 'name' => 'NextToken', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'title' => '下一个Token', - 'description' => '查询凭证(Token),取值为上一次 API 调用返回的NextToken参数值。', - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], + 'schema' => ['title' => 'Token方式最大个数。', 'description' => '本次调用期望查询的最大条目数。可配合NextToken参数一起使用。'."\n" + ."\n" + .'取值范围:1~500。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'MaxResults', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'title' => 'Token方式最大个数', - 'description' => '分页查询时每页行数。最大值为 100。'."\n" - .'默认值:'."\n" - ."\n" - .'- 默认值为 10。'."\n" - ."\n" - .'- 当设置的值大于 100 时,默认值为 100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['title' => '分页查询时设置的每页行数。', 'description' => '分页查询时设置的每页行数。 取值范围1-100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'DiskIdPattern', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => '正则匹配模糊查询筛选云盘ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'd-cd40hxfu0v*', - ], + 'schema' => ['title' => '分页模式查询时的页数。', 'description' => '分页查询时的页码。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribeLensMonitorDisksResponse', - 'description' => 'DescribeLensMonitorDisksResponse', + 'title' => 'DescribePairGroupDrillsResponse', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'DiskInfos' => [ - 'description' => '云盘信息列表。', + 'Drills' => [ + 'description' => '复制组容灾演练的信息组成的集合。', 'type' => 'array', 'items' => [ - 'description' => '云盘信息。', 'type' => 'object', 'properties' => [ - 'DiskId' => [ - 'description' => '云盘ID。', - 'type' => 'string', - 'example' => 'd-cd401****', - ], - 'DiskName' => [ - 'description' => '云盘名称。', - 'type' => 'string', - 'example' => 'disk-28c6b****', - ], - 'DiskType' => [ - 'description' => '云盘类型。可能值:'."\n" - ."\n" - .'- system:系统盘。'."\n" - .'- data:数据盘。', - 'type' => 'string', - 'example' => 'system', - ], - 'DiskStatus' => [ - 'description' => '云盘状态。可能值:'."\n" - .'- Available:使用中。'."\n" - .'- Deleted:已删除。', - 'type' => 'string', - 'example' => 'Available', - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'DiskCategory' => [ - 'description' => '云盘类型。取值范围:'."\n" - ."\n" - .'- cloud:普通云盘。'."\n" - .'- cloud_efficiency:高效云盘。'."\n" - .'- cloud_ssd:SSD 盘。'."\n" - .'- cloud_essd:ESSD 云盘。'."\n" - .'- cloud_auto:ESSD AutoPL 云盘。'."\n" - .'- cloud_essd_entry:ESSD Entry 云盘。', - 'type' => 'string', - 'example' => 'cloud_essd', - ], - 'PerformanceLevel' => [ - 'description' => 'ESSD云盘的性能等级。可能值:'."\n" - ."\n" - .'- PL0:单盘最高随机读写IOPS 1万。'."\n" - .'- PL1:单盘最高随机读写IOPS 5万。'."\n" - .'- PL2:单盘最高随机读写IOPS 10万。'."\n" - .'- PL3:单盘最高随机读写IOPS 100万。', + 'DrillId' => ['title' => '演练ID。', 'description' => '演练ID。', 'type' => 'string', 'example' => 'pg-drill-xxx'], + 'GroupId' => ['title' => '复制组ID。', 'description' => '复制组ID。', 'type' => 'string', 'example' => 'pg-xxx'], + 'Status' => [ + 'title' => '执行状态。', + 'description' => '演练状态。可能值:'."\n" + .'- execute_failed:执行失败。'."\n" + .'- executed:已执行。'."\n" + .'- executing:执行中。'."\n" + .'- clear_failed:清理失败。'."\n" + .'- clearing:清理中。', 'type' => 'string', - 'example' => 'PL0', + 'enumValueTitles' => ['execute_failed' => 'execute_failed', 'executed' => 'executed', 'executing' => 'executing', 'clear_failed' => 'clear_failed', 'clearing' => 'clearing'], + 'example' => 'executed', ], - 'Tags' => [ - 'description' => '云盘的标签集合。', + 'PairsInfo' => [ + 'title' => '复制对信息。', + 'description' => '复制对信息。', 'type' => 'array', 'items' => [ - 'description' => '云盘的标签。', 'type' => 'object', 'properties' => [ - 'TagValue' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'user', - ], - 'TagKey' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'tag1', - ], + 'PairId' => ['title' => '复制对ID。', 'description' => '复制对ID。', 'type' => 'string', 'example' => 'pair-xxx'], + 'DrillDiskId' => ['title' => '演练盘ID。', 'description' => '演练盘ID。', 'type' => 'string', 'example' => 'd-xxx'], + 'DrillDiskStatus' => ['title' => '演练盘状态。', 'description' => '演练盘状态。可能值:'."\n" + .'- created:已创建。'."\n" + .'- deleted:已删除。'."\n" + .'- creating:创建中。'."\n" + .'- deleting:删除中。'."\n" + ."\n" + .'> 除演练盘状态外,还可以展示演练盘创建或删除失败的错误码详情。', 'type' => 'string', 'example' => 'created'], ], ], ], - 'ZoneId' => [ - 'description' => '云盘所属的可用区ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou-j', - ], - 'Size' => [ - 'description' => '云盘大小,单位为GiB。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '64', - ], - 'Iops' => [ - 'description' => '每秒读写(I/O)操作的次数上限,单位:次/s。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4000', - ], - 'Bps' => [ - 'description' => '每秒读写(I/O)成功传输的数据数量上限,单位:MB/s。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '300', - ], - 'ProvisionedIops' => [ - 'description' => 'ESSD AutoPL云盘预配置的读写IOPS。可能值:0~min{50000, 1000*容量-基准性能}。'."\n" - ."\n" - .'基准性能=min{1,800+50*容量, 50,000}。'."\n" - ."\n" - .'当`DiskCategory`取值为`cloud_auto`时才支持设置该参数。更多信息,请参见[ESSD AutoPL 云盘](~~368372~~)。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4000', - ], - 'BurstingEnabled' => [ - 'description' => '是否开启Burst(性能突发)。可能值:'."\n" - ."\n" - .'- true:是。'."\n" - .'- false:否。'."\n" - ."\n" - .'当`DiskCategory`取值为`cloud_auto`时才支持设置该参数。更多信息,请参见[ESSD AutoPL 云盘](~~368372~~)。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'LensTags' => [ - 'description' => '云盘的事件标签集合。事件标签展示云盘24小时内发生过的事件,相比事件有1小时之内的延迟。', - 'type' => 'array', - 'items' => [ - 'description' => '云盘的事件标签。', - 'type' => 'string', - 'example' => '["NoSnapshot", "DiskIOHang"]', - ], - ], - 'SharingEnabled' => [ - 'description' => '是否共享盘', - 'type' => 'string', - 'example' => 'true', - ], + 'StartAt' => ['title' => '演练启动时间。该参数以时间戳的形式提供返回值。单位:秒。', 'description' => '演练启动时间。该参数以时间戳的形式提供返回值。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1649750977'], + 'RecoverPoint' => ['title' => '该演练对应的恢复点。', 'description' => '该演练对应的恢复点。该参数以时间戳的形式提供返回值。单位:秒。', 'type' => 'integer', 'format' => 'int64', 'example' => '1691114995'], + 'StatusMessage' => ['title' => '任务执行失败的错误提示信息。', 'description' => '任务执行失败的错误提示信息。', 'type' => 'string', 'example' => 'GROUP_SYNCPOINT_NOT_FOUND'], ], ], ], - 'NextToken' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'type' => 'string', - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], - 'TotalCount' => [ - 'title' => '总个数', - 'description' => '查询结果总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '6', - ], - 'RequestId' => [ - 'title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], + 'NextToken' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '本次调用返回的查询凭证(Token)。', 'type' => 'string', 'example' => 'AAAAAdDWBF2****'."\n"], + 'PageNumber' => ['title' => '分页模式查询时的页数。', 'description' => '分页查询时的页码。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['title' => '分页模式查询时的单页记录数量。', 'description' => '分页查询时设置的每页行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['title' => '总个数', 'description' => '分页查询时的结果总条数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 429 => [ - [ - 'errorCode' => 'BLOCK.LimitedRequest', - 'errorMessage' => 'Request was denied due to user flow control.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + '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":"<DescribeReplicaGroupDrillsResponse>\\n <Drills>\\n <DrillId>pg-drill-xxx</DrillId>\\n <GroupId>pg-xxx</GroupId>\\n <Status>executed</Status>\\n <PairsInfo>\\n <PairId>pair-xxx</PairId>\\n <DrillDiskId>d-xxx</DrillDiskId>\\n <DrillDiskStatus>created</DrillDiskStatus>\\n </PairsInfo>\\n <StartAt>1649750977</StartAt>\\n <RecoverPoint>1691114995</RecoverPoint>\\n <StatusMessage>GROUP_SYNCPOINT_NOT_FOUND</StatusMessage>\\n </Drills>\\n <NextToken>AAAAAdDWBF2****\\n</NextToken>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>1</TotalCount>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</DescribeReplicaGroupDrillsResponse>","errorExample":""}]', + 'title' => '查询复制组当前的容灾演练', + '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}'], + ], + ], + ], ], - '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' => '查询一块或多块您已经创建的块存储云盘', ], - 'DescribeEvents' => [ - 'summary' => '查询云盘风险事件。', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'DescribeSolutionInstanceConfiguration' => [ + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -9880,389 +5486,255 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '191205', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeCode' => '189350', + 'abilityTreeNodes' => ['FEATUREdiskFDS0SW'], ], 'parameters' => [ [ - 'name' => 'RegionId', + 'name' => 'SolutionId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。您可以调用DescribeRegions查询块存储数据洞察支持的地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '解决方案ID', 'description' => '解决方案ID。', 'type' => 'string', 'required' => true, 'example' => 'sln-xxxxx'], ], [ - 'name' => 'EventName', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '事件名称。取值范围:'."\n" - ."\n" - .'- NoSnapshot:数据保护'."\n" - .'- BurstIOTriggered:突发 IO'."\n" - .'- CostOptimizationNeeded:成本优化'."\n" - .'- DiskSpecNotMatchedWithInstance:实例与磁盘规格不匹配'."\n" - .'- DiskIONo4kAligned:非 4K 对齐读写'."\n" - .'- DiskIOHang:磁盘有 IOHang 发生'."\n" - .'- InstanceIOPSExceedInstanceMaxLimit:实例 IOPS 到达上限'."\n" - .'- InstanceBPSExceedInstanceMaxLimit:实例 BPS 到达上限'."\n" - .'- DiskIOPSExceedInstanceMaxLimit:磁盘 IOPS 到达实例上限'."\n" - .'- DiskBPSExceedInstanceMaxLimit:磁盘 BPS 到达实例上限'."\n" - .'- DiskIOPSExceedDiskMaxLimit:磁盘 IOPS 到达磁盘上限'."\n" - .'- DiskBPSExceedDiskMaxLimit:磁盘 BPS 到达磁盘上限', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [], - 'example' => 'DiskIOHang', - ], + 'schema' => ['title' => '地域', 'description' => '地域。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'ResourceId', + 'name' => 'Parameters', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '资源ID。', - 'type' => 'string', + 'title' => '配置查询参数', + 'description' => '配置查询参数。', + 'type' => 'array', + 'items' => [ + 'description' => '参数信息。', + 'type' => 'object', + 'properties' => [ + 'ParameterKey' => ['description' => '模板中已定义的参数的名称。'."\n" + ."\n" + .'> Parameters为可选参数。若指定了Parameters,则ParameterKey为必选参数。', 'type' => 'string', 'required' => true, 'example' => '***'], + 'ParameterValue' => ['description' => '模板中已定义的参数的取值。'."\n" + ."\n" + .'> Parameters为可选参数。若指定了Parameters,则ParameterValue为必选参数。', 'type' => 'string', 'required' => true, 'example' => '***'], + ], + 'required' => false, + ], 'required' => false, - 'example' => 'd-bp67acfmxazb4p****', + 'maxItems' => 100, ], ], [ - 'name' => 'ResourceType', + 'name' => 'ClientToken', 'in' => 'query', + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '资源类型。取值范围:'."\n" - .'- disk:磁盘', - 'type' => 'string', - 'required' => false, - 'example' => 'disk', + 'title' => 'DescribeSlnInstanceConfigurationResponse', + 'description' => 'DescribeSlnInstanceConfigurationResponse', + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => '结果集。', + 'type' => 'array', + 'items' => [ + 'description' => '结果集。', + 'type' => 'object', + 'additionalProperties' => ['type' => 'any', 'description' => '结果集。', 'example' => '[]'], + ], + ], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', 'type' => 'string', 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****'], + ], ], ], + ], + '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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'AssumeRoleFail.solution', 'errorMessage' => 'Assume role fail, please check RamRole for EBS Laboratory already exist and policy is correct.', 'description' => '角色扮演失败,请检查EBS实验室所需要的RAM角色是否存在且关联的权限策略正确。'], + ], [ - 'name' => 'Status', - 'in' => 'query', - 'schema' => [ - 'description' => '事件状态。取值范围:'."\n" - .'- WillExecute:待处理 '."\n" - .'- Executing:处理中'."\n" - .'- Executed:已处理'."\n" - .'- Ignore:已忽略'."\n" - .'- Expired:已过期'."\n" - .'- Deleted:已删除', - 'type' => 'string', - 'required' => false, - 'example' => 'WillExecute', + ['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' => [], + ], + 'title' => '查询解决方案默认配置', + 'summary' => '查询解决方案默认配置。', + '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' => '全部资源', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"key\\": \\"[]\\"\\n }\\n ],\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D0****\\"\\n}","type":"json"}]', + ], + 'DescribeUserTagKeys' => [ + 'summary' => '中心化角色:查询用户云盘快照tagKeys', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '事件开始时间点。按照ISO8601标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', - 'type' => 'string', - 'required' => false, - 'example' => '2023-06-01T03:00:00Z', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '253920', + 'abilityTreeNodes' => ['FEATUREdisk2F270T'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '事件结束时间点。按照ISO8601标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', - 'type' => 'string', - 'required' => false, - 'example' => '2023-06-01T04:00:00Z', - ], + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['description' => '本次调用返回的查询凭证(Token)。', 'type' => 'string', 'required' => false, 'example' => 'f07b150eadfa1d7a'], ], [ 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时每页的最大条目数。一旦设置该参数,即表示使用`MaxResults`与`NextToken`组合参数的查询方式。'."\n" - ."\n" - .'取值范围:1~100。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], + 'in' => 'formData', + 'schema' => ['description' => '分页查询时每页行数。最大值为100。'."\n" + ."\n" + .'默认值:'."\n" + ."\n" + .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" + ."\n" + .'- 当设置的值大于100时,默认值为100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdDWBF2****', - ], + 'name' => 'TagFilterKey', + 'in' => 'formData', + 'schema' => ['description' => '查询过滤的tagKey', 'type' => 'string', 'required' => false, 'example' => 'tagKey'], ], [ - 'name' => 'EventLevel', - 'in' => 'query', - 'schema' => [ - 'description' => '事件级别,取值说明:'."\n" - .'- **INFO**:通知'."\n" - .'- **WARN**:警告'."\n" - .'- **CRITICAL**:严重', - 'type' => 'string', - 'required' => false, - 'example' => 'WARN', - ], + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => ['description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => 'DescribeLensUserTagKeyResponse', + 'description' => 'DescribeLensUserTagKeyResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'TotalCount' => [ - 'description' => '分页查询时的结果总条数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'NextToken' => [ - 'description' => '下一个查询开始的Token,NextToken为空表示没有下一个。', - 'type' => 'string', - 'example' => 'AAAAAdDWBF2****', - ], - 'ResourceEvents' => [ - 'description' => '事件列表。', + 'TagKeys' => [ + 'description' => '符合条件的标签键列表。', 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'EventType' => [ - 'description' => '事件类型。可能值:'."\n" - .'1. Notification'."\n" - .'2. SystemException'."\n" - .'3. Alert', - 'type' => 'string', - 'example' => 'Alert', - ], - 'EventName' => [ - 'description' => '事件名称。可能值:'."\n" - ."\n" - .'- NoSnapshot:数据保护'."\n" - .'- BurstIOTriggered:突发 IO'."\n" - .'- CostOptimizationNeeded:成本优化'."\n" - .'- DiskSpecNotMatchedWithInstance:实例与磁盘规格不匹配'."\n" - .'- DiskIONo4kAligned:非 4K 对齐读写'."\n" - .'- DiskIOHang:磁盘有 IOHang 发生'."\n" - .'- InstanceIOPSExceedInstanceMaxLimit:实例 IOPS 到达上限'."\n" - .'- InstanceBPSExceedInstanceMaxLimit:实例 BPS 到达上限'."\n" - .'- DiskIOPSExceedInstanceMaxLimit:磁盘 IOPS 到达实例上限'."\n" - .'- DiskBPSExceedInstanceMaxLimit:磁盘 BPS 到达实例上限'."\n" - .'- DiskIOPSExceedDiskMaxLimit:磁盘 IOPS 到达磁盘上限'."\n" - .'- DiskBPSExceedDiskMaxLimit:磁盘 BPS 到达磁盘上限', - 'type' => 'string', - 'example' => 'DiskIOHang', - ], - 'ResourceId' => [ - 'description' => '资源ID。', - 'type' => 'string', - 'example' => 'd-bp67acfmxazb4p****'."\n", - ], - 'ResourceType' => [ - 'description' => '资源类型。', - 'type' => 'string', - 'example' => 'disk', - ], - 'Status' => [ - 'description' => '事件状态。可能值:'."\n" - .'1. WillExecute:待处理'."\n" - .'2. Executing:处理中'."\n" - .'3. Executed:已处理'."\n" - .'4. Ignore:已忽略'."\n" - .'5. Expired:已过期'."\n" - .'6. Deleted:已删除', - 'type' => 'string', - 'example' => 'WillExecute', - ], - 'StartTime' => [ - 'description' => '事件开始时间戳(毫秒级)。', - 'type' => 'string', - 'example' => '1684204822000', - ], - 'Description' => [ - 'description' => '事件描述。', - 'type' => 'string', - 'example' => '可通过购买4296预配置IOPS以获得成本优化,根据您过往7天使用情况,预计成本可以下降16%。', - ], - 'RecommendAction' => [ - 'description' => '事件发生后的推荐操作。可能值:'."\n" - ."\n" - .'- ModifyDiskSpec:变配'."\n" - .'- CreateSnapshot:打快照'."\n" - .'- ResizeDisk:扩容'."\n" - .'- AdjustProvision:调节预配置等'."\n" - .'- ModifyInstanceSpec:实例变配', - 'type' => 'string', - 'example' => 'AdjustProvision', - ], - 'RecommendParams' => [ - 'description' => '事件发生后的推荐操作的参数。', - 'type' => 'string', - 'example' => '4296', - ], - 'EventLevel' => [ - 'description' => '事件级别,可能值:'."\n" - ."\n" - .'1. INFO'."\n" - .'2. WARN'."\n" - .'3. CRITICAL', - 'type' => 'string', - 'example' => 'INFO', - ], - 'EndTime' => [ - 'description' => '事件结束时间戳(毫秒级)。', - 'type' => 'string', - 'example' => '1679538083000', - ], - 'ExtraAttributes' => [ - 'description' => '附加属性,可能的字段有:'."\n" - ."\n" - .'- EcsInstanceId:云盘挂载的ECS实例ID;'."\n" - .'- Adapter:云盘挂载点。', - 'type' => 'string', - 'example' => '{\\"EcsInstanceId\\":\\"i-uf6dkn9qpcw6y94g7ag7\\",\\"Adapter\\":\\"hda\\"}', - ], - ], - ], + 'items' => ['description' => '符合条件的标签键列表。', 'type' => 'string', 'example' => '{\'TagKey\': []}'], ], + 'NextToken' => ['description' => '下一个查询开始的Token,NextToken为空表示没有下一个。', 'type' => 'string', 'example' => 'f07b150eadfa1d7a'], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], + 'MaxResults' => ['description' => '分页查询时每页行数。最大值为100。'."\n" + ."\n" + .'默认值:'."\n" + ."\n" + .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" + ."\n" + .'- 当设置的值大于100时,默认值为100。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'App.NumberExceed', - 'errorMessage' => 'The number of apps exceeded.', - ], - [ - 'errorCode' => 'DocumentConvertFailed.ExceedFileSizeLimit', - 'errorMessage' => 'The conversion has been failed, exceed file size limit.', - ], - [ - 'errorCode' => 'Duplicate.TagKey', - 'errorMessage' => 'The Tag.N.Key contain duplicate key.', - ], - [ - 'errorCode' => 'IdempotentParameterMismatch', - 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', - ], - [ - 'errorCode' => 'InvalidDiskSize.NotSupported', - 'errorMessage' => 'The specified parameter size is not valid.', - ], - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.EndTime', - 'errorMessage' => 'The specified parameter EndTime is earlier than StartTime.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'InvalidParameter.TooManyDataQueried', - 'errorMessage' => 'Too many data queried.', - ], + ['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' => 'AliCroup2CloudUserCannotBuyNotInnerCommodity', - 'errorMessage' => '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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'IncorrectDiskStatus.CreatingSnapshot', - 'errorMessage' => 'A previous snapshot creation is in process.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'InvalidDiskCategory.NotSupported', - 'errorMessage' => 'The specified disk category is not supported.', - ], + ['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.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + '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' => '查询用户标签键', + 'description' => '## 接口说明'."\n" + ."\n" + .'查询用户云盘和快照的标签键值,可通过filterTagKey缩小查询范围。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:DescribeUserTagKeys', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', '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"}]', - 'title' => '查询资源事件', ], - 'DescribeMetricData' => [ - 'summary' => '查询资源监控指标。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeUserTagValues' => [ + 'summary' => '中心化角色:查询用户云盘快照tagValues', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -10274,391 +5746,158 @@ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '185234', - 'abilityTreeNodes' => [ - 'FEATUREdiskLP80G7', - ], + 'abilityTreeCode' => '253922', + 'abilityTreeNodes' => ['FEATUREdisk2F270T'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'MetricName', - 'in' => 'query', - 'schema' => [ - 'title' => '指标名称', - 'description' => '指标名称。可选的值有:'."\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' => '获取指标数据的起始时间点。最远可选当前时刻过去30天内的时刻作为起始时间点。当StartTime和EndTime参数都为空时,默认查询最近一个period的监控指标。按照ISO 8601标准表示,并使用UTC +0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', - 'type' => 'string', - 'required' => false, - 'example' => '2023-11-21T01:50:00Z', - ], + 'name' => 'TagKey', + 'in' => 'formData', + 'schema' => ['title' => '标签键。最多包含20个子项。', 'description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], ], [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'title' => '结束时间', - 'description' => '获取指标数据的结束时间点。不应大于当前时刻。按照ISO 8601标准表示,并使用UTC +0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', - 'type' => 'string', - 'required' => false, - 'example' => '2023-11-21T02:00:00Z', - ], + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2'], ], [ - 'name' => 'Period', - 'in' => 'query', - 'schema' => [ - 'title' => '间隔时间(秒)', - 'description' => '获取指标数据的间隔时间。单位:秒。默认值为5秒。可选的取值:'."\n" - ."\n" - .'- 5:5s精度查询,可查询12小时时间长度'."\n" - .'- 10:10s精度查询,可查询24小时时间长度'."\n" - .'- 60:60s精度查询,可查询7天时间长度'."\n" - .'- 300:300s精度查询,可查询30天时间长度'."\n" - .'- 600:600s精度查询,可查询30天时间长度'."\n" - .'- 3600:3600s精度查询,可查询30天时间长度', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'enumValueTitles' => [], - 'example' => '60', - ], + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => ['title' => '分页查询时每页行数。最大值为100。'."\n" + ."\n" + .'默认值:'."\n" + ."\n" + .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" + ."\n" + .'- 当设置的值大于100时,默认值为100。', 'description' => '分页查询时每页行数。最大值为100。'."\n" + ."\n" + .'默认值:'."\n" + ."\n" + .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" + ."\n" + .'- 当设置的值大于100时,默认值为100。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'Dimensions', - 'in' => 'query', - 'schema' => [ - 'title' => '维度map', - 'description' => '维度Map,JSON格式,表示查询的维度,当前可选的键为:'."\n" - .'- DiskId:云盘名,例如d-xxx。'."\n" - .'- DeviceType:云盘种类,system表示系统盘,data表示数据盘。'."\n" - .'- DeviceCategory:云盘类型,例如cloud_essd。'."\n" - .'- EcsInstanceId:所在的ECS实例名,例如i-xxx。'."\n" - .'- Azone:可用区,例如cn-hangzhou-a。'."\n" - ."\n" - .'返回结果取所有维度筛选条件的交集。', - 'type' => 'string', - 'required' => false, - 'example' => '{"DiskId":["d-bp14xxxx","d-bp11xxxx"], "DeviceCategory": ["cloud_essd"]}', - ], + 'name' => 'TagFilterValue', + 'in' => 'formData', + 'schema' => ['description' => '标签内容过滤', 'type' => 'string', 'required' => false, 'example' => 'keyValue'], ], [ 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai', - ], - ], - [ - 'name' => 'AggreOps', - 'in' => 'query', - 'schema' => [ - 'description' => '时间维度聚合方式。可选的值有:'."\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:左闭右开区间求总和'."\n" - .'- AVG_OVER_TIME_LCRO:左闭右开区间求均值'."\n" - .'- SUM_OVER_TIME_LORC:左开右闭区间求总和'."\n" - .'- AVG_OVER_TIME_LORC:左开右闭区间求均值', - 'type' => 'string', - 'required' => false, - 'example' => 'AVG_OVER_TIME', - ], - ], - [ - 'name' => 'AggreOverLineOps', - 'in' => 'query', - 'schema' => [ - 'description' => '线之间的聚合方式。可选的值有:'."\n" - .'- NON:不做聚合'."\n" - .'- SUM:求和'."\n" - .'- AVG:求均值'."\n" - .'- COUNT:计数'."\n" - .'- MAX:求最大值'."\n" - .'- MIN:求最小值', - 'type' => 'string', - 'required' => false, - 'example' => 'NON', - ], - ], - [ - 'name' => 'GroupByLabels', - 'in' => 'query', - 'style' => 'simple', - 'schema' => [ - 'description' => '用于分组聚合的字段列表。', - 'type' => 'array', - 'items' => [ - 'description' => '用于分组的字段。可选的字段有:'."\n" - .'- DiskId:云盘名,例如d-xxx。'."\n" - .'- DeviceType:云盘种类,system表示系统盘,data表示数据盘。'."\n" - .'- DeviceCategory:云盘类型,例如cloud_essd。'."\n" - .'- EcsInstanceId:所在的ECS实例名,例如i-xxx。'."\n" - .'- Azone:可用区,例如cn-hangzhou-a。', - 'type' => 'string', - 'required' => false, - 'example' => 'DeviceType', - ], - 'required' => false, - ], + 'in' => 'formData', + 'schema' => ['title' => '一致性复制组所属的地域ID。', 'description' => '一致性复制组所属的地域ID。', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribeMetricDataResponse', - 'description' => 'DescribeMetricDataResponse', + 'title' => 'DescribeLensUserTagValueResponse', + 'description' => 'DescribeLensUserTagValueResponse', 'type' => 'object', 'properties' => [ - 'TotalCount' => [ - 'title' => '查询到的数据总数', - 'description' => '查询到的数据总数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'DataList' => [ - 'title' => '云盘的监控数据集合', - 'description' => '云盘的监控数据集合。', - 'type' => 'array', - 'items' => [ - 'description' => '返回数据列表。', - 'type' => 'object', - 'properties' => [ - 'Labels' => [ - 'description' => '标签。', - 'type' => 'any', - 'example' => '{"DiskId": "d-1234"}', - ], - 'Datapoints' => [ - 'description' => '监控数据列表,一系列连续的秒级时间戳和查询的指标对应时刻的值的列表。', - 'type' => 'any', - 'example' => '{"1699258861": 1,"1699259461": 0}', - ], - ], - ], - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****', - ], - 'Warnings' => [ - 'description' => '警告信息列表。', + 'TagValues' => [ + 'title' => '标签键对应的标签值。', + 'description' => '标签键对应的标签值。', 'type' => 'array', - 'items' => [ - 'description' => '警告信息。', - 'type' => 'string', - 'example' => 'not complete.', - ], + 'items' => ['title' => '标签键对应的标签值。', 'description' => '标签键对应的标签值。', 'type' => 'string', 'example' => '[\'90349\']'], ], + 'NextToken' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'type' => 'string', 'example' => 'NextToken'], + 'RequestId' => ['title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], + 'MaxResults' => ['description' => '分页查询时每页行数。最大值为100。'."\n" + ."\n" + .'默认值:'."\n" + ."\n" + .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" + ."\n" + .'- 当设置的值大于100时,默认值为100。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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.', + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], + ], + ], + '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' => '查询用户标签内容', + 'description' => '## 接口说明'."\n" + ."\n" + .'> 专属块存储集群功能目前支持华南2(河源)、印度尼西亚(雅加达)以及华南1(深圳)地域。'."\n" + ."\n" + .'- 请求参数的作用类似于一个过滤器,过滤器为逻辑与(AND)关系。如果某一参数为空,则过滤器不起作用。'."\n" + .'- 在分页查询时,推荐您使用MaxResults与NextToken参数进行查询。具体使用说明:分页查询首页时,仅需设置MaxResults以限制返回信息的条目数,返回结果中的NextToken将作为查询后续页的凭证。查询后续页时,将NextToken参数设置为上一次返回结果中获取到的NextToken作为查询凭证,并设置MaxResults限制返回条目数。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:DescribeUserTagValues', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], ], ], ], - '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' => '查询监控指标', ], - 'DescribeDiskMonitorDataList' => [ - 'summary' => '查询多个云盘的秒级监控数据。当前仅支持查询多个AutoPL云盘Burst数据,数据以小时聚合。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'FailoverDiskReplicaGroup' => [ + 'summary' => '启用一致性复制组中复制对的故障切换功能。当一致性复制组中某些复制对的主盘出现故障时,可以调用该接口恢复从盘的读写权限。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '140055', - 'abilityTreeNodes' => [ - 'FEATUREdiskLP80G7', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '115797', + 'abilityTreeNodes' => ['FEATUREdiskPPYCY9'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询块存储数据洞察支持的地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'Type', - 'in' => 'query', - 'schema' => [ - 'description' => '监控数据类型。当前仅支持pro。'."\n" - ."\n" - .'pro:包含Burst IO监控数据。', - 'type' => 'string', - 'required' => true, - 'example' => 'pro', - ], - ], - [ - 'name' => 'DiskIds', - 'in' => 'query', - 'schema' => [ - 'description' => '云盘ID列表。多个ID之间用半角逗号(,)隔开,格式为JSON数组。', - 'type' => 'string', - 'required' => false, - 'example' => '["d-bp67acfmxazb4p****","d-bp67acfmxazs5t****"]', - ], - ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '获取云盘的秒级监控数据的起始时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC+0时间,格式为`yyyy-MM-ddTHH:mm:ssZ`。', - 'type' => 'string', - 'required' => true, - 'example' => '2022-06-01T03:00:00Z', - ], + 'schema' => ['description' => '一致性复制组中容灾站点所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '获取云盘的秒级监控数据的结束时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC+0时间,格式为`yyyy-MM-ddTHH:mm:ssZ`。', - 'type' => 'string', - 'required' => true, - 'example' => '2022-06-01T05:00:00Z', - ], - ], - [ - 'name' => 'MaxResults', + 'name' => 'ReplicaGroupId', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时每页的最大条目数。一旦设置该参数,即表示使用`MaxResults`与`NextToken`组合参数的查询方式。'."\n" - ."\n" - .'取值范围:1~100。'."\n" - ."\n" - .'默认值:10。', - 'type' => 'string', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '一致性复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'group-myreplica****'], ], [ - 'name' => 'NextToken', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。', - 'type' => 'string', - 'required' => false, - 'example' => 'e71d8a535bd9c****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ @@ -10668,190 +5907,97 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'MonitorData' => [ - 'description' => '云盘的秒级监控数据集合。', - 'type' => 'array', - 'items' => [ - 'description' => '云盘的秒级监控数据集合。', - 'type' => 'object', - 'properties' => [ - 'DiskId' => [ - 'description' => '云盘ID。', - 'type' => 'string', - 'example' => 'd-bp67acfmxazb4p****', - ], - 'Timestamp' => [ - 'description' => 'Burst事件起始时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC +0时间,格式为`yyyy-MM-ddTHH:mm:ssZ`。', - 'type' => 'string', - 'example' => '2022-06-01T08:00:00Z', - ], - 'BurstIOCount' => [ - 'description' => 'Burst IO数量。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2000', - ], - ], - ], - ], - 'TotalCount' => [ - 'description' => '查询结果总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3', - ], - 'NextToken' => [ - 'description' => '本次调用返回的查询凭证值。', - 'type' => 'string', - 'example' => 'e71d8a535bd9c****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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.PairGroupStatusConflict', 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', 'description' => '当前操作不允许执行,因为复制对和一致性组的状态不一致。'], + ['errorCode' => 'OperationDenied.PairGroupAZoneConflict', 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'description' => '当前操作不允许执行,因为复制对和一致性组所属的RegionId和ZoneId不一致。'], + ['errorCode' => 'OperationDenied.PairInAnotherGroup', 'errorMessage' => 'The operation is not allowed because pair is already in another 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.', - ], + ['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.', - ], + ['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.', - ], + ['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 \\"MonitorData\\": [\\n {\\n \\"DiskId\\": \\"d-bp67acfmxazb4p****\\",\\n \\"Timestamp\\": \\"2022-06-01T08:00:00Z\\",\\n \\"BurstIOCount\\": 2000\\n }\\n ],\\n \\"TotalCount\\": 3,\\n \\"NextToken\\": \\"e71d8a535bd9c****\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDiskMonitorDataListResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <MonitorData>\\n <DiskId>d-bp67acfmxazb4p****</DiskId>\\n <Timestamp>2022-06-01T08:00:00Z</Timestamp>\\n <BurstIOCount>2000</BurstIOCount>\\n </MonitorData>\\n <TotalCount>3</TotalCount>\\n <NextToken>e71d8a535bd9c****</NextToken>\\n</DescribeDiskMonitorDataListResponse>","errorExample":""}]', - 'title' => '查询云盘监控列表(API下线中)', - ], - 'DescribeDiskMonitorData' => [ - 'summary' => '查询单个云盘的秒级监控数据。', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<FailoverDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</FailoverDiskReplicaGroupResponse>","errorExample":""}]', + 'title' => '启用异步复制组故障切换', + 'description' => '## 接口说明'."\n" + ."\n" + .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + ."\n" + .'- 一致性复制组必须处于**单次同步中**(`manual_syncing`)、**同步中**(`syncing`)、**正常**(`normal`)、**停止中**(`stopping`)、**停止失败**(`stop_failed`)、**已停止**(`stopped`)、**故障切换中**(`failovering`)、**故障切换失败**(`failover_failed`)或者**故障切换完成**(`failovered`)状态。'."\n" + ."\n" + .'- 故障切换完成后,一致性复制组处于**故障切换完成**(`failovered`)状态。'."\n" + ."\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' => [ + 'summary' => '启用异步复制关系的故障切换功能。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '138275', - 'abilityTreeNodes' => [ - 'FEATUREdiskLP80G7', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '71755', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'DiskId', - 'in' => 'query', - 'schema' => [ - 'description' => '云盘ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'd-bp67acfmxazb4p****', - ], - ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '获取云盘的秒级监控数据的起始时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC +0时间,格式为`yyyy-MM-ddTHH:mm:ssZ`。', - 'type' => 'string', - 'required' => true, - 'example' => '2022-06-01T03:00:00Z', - ], - ], - [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '获取云盘的秒级监控数据的结束时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC+0时间,格式为`yyyy-MM-ddTHH:mm:ssZ`。', - 'type' => 'string', - 'required' => true, - 'example' => '2022-06-01T05:00:00Z', - ], + 'schema' => ['description' => '异步复制关系中从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制关系中从盘的地域信息。'."\n" + ."\n" + .'> 必须在从盘所属地域下启用故障切换功能。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'Period', + 'name' => 'ReplicaPairId', 'in' => 'query', - 'schema' => [ - 'description' => '获取云盘的秒级监控数据的间隔时间。单位:秒。取值范围:'."\n" - ."\n" - .'- 5。'."\n" - .'- 60。'."\n" - ."\n" - .'默认值:5。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '5', - ], + 'schema' => ['description' => '异步复制关系的ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****'], ], [ - 'name' => 'Type', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '磁盘监控数据类型。取值范围:'."\n" - ."\n" - .'- basic:基础性能数据。'."\n" - ."\n" - .'- pro:包含Burst IO数据。', - 'type' => 'string', - 'required' => false, - 'example' => 'basic', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ @@ -10861,160 +6007,59 @@ 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'TotalCount' => [ - 'description' => '查询结果总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '15', - ], - 'MonitorData' => [ - 'description' => '云盘的秒级监控数据集合。', - 'type' => 'array', - 'items' => [ - 'description' => '云盘的秒级监控数据集合。', - 'type' => 'object', - 'properties' => [ - 'ReadBPS' => [ - 'description' => '云盘读带宽,单位:MBps。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'WriteBPS' => [ - 'description' => '云盘写带宽,单位:MBps。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '204', - ], - 'DiskId' => [ - 'description' => '云盘ID。', - 'type' => 'string', - 'example' => 'd-bp1bq5g3dxxo1x4o****', - ], - 'ReadIOPS' => [ - 'description' => '每秒读操作的次数上限,单位:次/s。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2000', - ], - 'WriteIOPS' => [ - 'description' => '每秒写操作的次数上限,单位:次/s。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2000', - ], - 'IOPSPercent' => [ - 'description' => '云盘IOPS水位占比。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '80(%)', - ], - 'BPSPercent' => [ - 'description' => '云盘BPS水位占比。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '80(%)', - ], - 'Timestamp' => [ - 'description' => '查询云盘的秒级监控数据的时间戳。按照[ISO 8601](~~25696~~)标准表示,并使用UTC +0时间,格式为`yyyy-MM-ddTHH:mm:ssZ`。', - 'type' => 'string', - 'example' => '2022-06-01T08:00:00Z', - ], - 'BurstIOCount' => [ - 'description' => '云盘Burst IO数量。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'ReadBlockSize' => [ - 'description' => '读IO块大小,单位:Bytes', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '4096', - ], - 'WriteBlockSize' => [ - 'description' => '写IO块大小,单位:Bytes', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '4096', - ], - 'ReadLatency' => [ - 'description' => '读延迟,单位:微秒', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'WriteLatency' => [ - 'description' => '写延迟,单位:微秒', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - ], - ], - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', '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.', - ], + ['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.', - ], + ['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.', - ], + ['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 \\"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":"<DescribeDiskMonitorDataResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <TotalCount>15</TotalCount>\\n <MonitorData>\\n <ReadBPS>10</ReadBPS>\\n <WriteBPS>204</WriteBPS>\\n <DiskId>d-bp1bq5g3dxxo1x4o****</DiskId>\\n <ReadIOPS>2000</ReadIOPS>\\n <WriteIOPS>2000</WriteIOPS>\\n <Timestamp>2022-06-01T08:00:00Z</Timestamp>\\n <BurstIOCount>0</BurstIOCount>\\n </MonitorData>\\n</DescribeDiskMonitorDataResponse>","errorExample":""}]', - 'title' => '查询云盘监控(API下线中)', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<FailoverDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</FailoverDiskReplicaPairResponse>","errorExample":""}]', + 'title' => '启用云盘异步复制故障切换', 'description' => '## 接口说明'."\n" ."\n" - .'- 查询结果一次最多返回400条数据,即指定的`(EndTime-StartTime)/Period`不能超过400。'."\n" - ."\n" - .'- 查询结果一次最多能查询近3天内的监控信息,即`StartTime`指定的时间与当前时间相差不能超过3天。', - ], - 'DescribeDiskEvents' => [ - 'summary' => '查询云盘风险事件。API正在下线中,请切换至新API:DescribeEvents。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + .'- 异步复制关系不能处于**失效**(`invalid`)或**已删除**(`deleted`)状态。'."\n" + .'- 故障切换完成后,异步复制关系处于**故障切换完成**(`failovered`)状态。', + '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' => [], @@ -11023,654 +6068,406 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '114018', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeCode' => '209319', + 'abilityTreeNodes' => ['FEATUREdisk2F270T'], ], 'parameters' => [ [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询块存储数据洞察支持的地域列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'DiskCategory', - 'in' => 'query', - 'schema' => [ - 'description' => '云盘类型。取值范围:'."\n" - ."\n" - .'- cloud_efficiency:高效云盘。'."\n" - ."\n" - .'- cloud_ssd:SSD盘。'."\n" - ."\n" - .'- cloud_essd:ESSD云盘。'."\n" - ."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cloud_essd', - ], - ], - [ - 'name' => 'Type', - 'in' => 'query', - 'schema' => [ - 'description' => '事件类型。当前仅支持DataNeedProtect(数据需要保护)。', - 'type' => 'string', - 'required' => false, - 'example' => 'DataNeedProtect', - ], - ], - [ - 'name' => 'DiskId', - 'in' => 'query', - 'schema' => [ - 'description' => '云盘ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'd-bp67acfmxazb4p****', - ], - ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => '获取云盘的秒级监控数据的起始时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', - 'type' => 'string', - 'required' => false, - 'example' => '2022-06-01T03:00:00Z', - ], + 'name' => 'ReportId', + 'in' => 'formData', + 'schema' => ['title' => 'ReportType=history时,必须传入ReportId,根据ReportId查询历史报告。', 'description' => 'ReportType=history时,必须传入ReportId,根据ReportId查询历史报告。', 'type' => 'string', 'required' => false, 'example' => 'report-74fbea80e802xxxx'], ], [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => '获取云盘的秒级监控数据的结束时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', - 'type' => 'string', - 'required' => false, - 'example' => '2022-06-01T05:00:00Z', - ], + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => ['title' => '', 'description' => '必填,region名称', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'MaxResults', + 'name' => 'ReportType', 'in' => 'query', - 'schema' => [ - 'description' => '分页查询时每页行数。最大值为100。'."\n" - ."\n" - .'默认值:'."\n" - ."\n" - .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" - ."\n" - .'- 当设置的值大于100时,默认值为100。', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['title' => '可选值:history/present', 'description' => '可选值:history/present', 'type' => 'string', 'required' => false, 'example' => 'history'], ], [ - 'name' => 'NextToken', + 'name' => 'AppName', 'in' => 'query', - 'schema' => [ - 'description' => '查询凭证(Token),取值为上一次API调用返回的`NextToken`参数值。', - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], + 'schema' => ['title' => '可选值,只在ReportType=present时AppName才会生效', 'description' => '可选值,只在ReportType=present时AppName才会生效', 'type' => 'string', 'required' => false, 'example' => 'App1'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => 'GetReportResponse', + 'description' => 'GetReportResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'TotalCount' => [ - 'description' => '查询结果总条数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '20', - ], - 'NextToken' => [ - 'description' => '查询凭证(Token)。', - 'type' => 'string', - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], - 'DiskEvents' => [ - 'description' => '云盘事件类型列表。', + 'Datas' => [ + 'description' => '数据详情', 'type' => 'array', 'items' => [ - 'description' => '云盘事件类型列表。', 'type' => 'object', 'properties' => [ - 'Type' => [ - 'description' => '事件类型。当前仅支持DataNeedProtect(数据需要保护)。', - 'type' => 'string', - 'example' => 'DataNeedProtect', - ], - 'DiskId' => [ - 'description' => '云盘ID。', - 'type' => 'string', - 'example' => 'd-bp1bq5g3dxxo1x4o****', - ], - 'Status' => [ - 'description' => '事件状态。可能值:'."\n" - ."\n" - .'- Solved:已解决。'."\n" - ."\n" - .'- UnSolved:未解决。', - 'type' => 'string', - 'example' => 'Solved', - ], - 'Timestamp' => [ - 'description' => '时间发生的时间点。按照[ISO 8601](~~25696~~)标准表示,并使用UTC +0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', - 'type' => 'string', - 'example' => '2022-06-01T08:00:00Z', - ], - 'Description' => [ - 'description' => '事件描述。', - 'type' => 'string', - 'example' => 'This is description.', - ], - 'RecommendAction' => [ - 'description' => '事件发生后的推荐操作。可能值:'."\n" - ."\n" - .'- Resize:扩容云盘。'."\n" - ."\n" - .'- ModifySpec:变更云盘类型。'."\n" - ."\n" - .'- NoAction:无需操作。', - 'type' => 'string', - 'example' => 'NoAction', - ], - 'RegionId' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'example' => 'cn-hangzhou', + 'Title' => ['description' => '数据标题', 'type' => 'string', 'example' => 'disk_count_percent_by_category'], + 'Data' => [ + 'description' => '数据', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Labels' => ['description' => '数据标签', 'type' => 'object', 'example' => '{'."\n" + .' "category": "cloud"'."\n" + .'}'], + 'DataPoints' => ['description' => '数据值', '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" + .'}'], + ], + 'description' => '', + ], ], ], + 'description' => '', ], ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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 \\"TotalCount\\": 20,\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"DiskEvents\\": [\\n {\\n \\"Type\\": \\"DataNeedProtect\\",\\n \\"DiskId\\": \\"d-bp1bq5g3dxxo1x4o****\\",\\n \\"Status\\": \\"Solved\\",\\n \\"Timestamp\\": \\"2022-06-01T08:00:00Z\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"RecommendAction\\": \\"NoAction\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDiskEventsResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n <TotalCount>20</TotalCount>\\n <NextToken>caeba0bbb2be03f84eb48b699f0a****</NextToken>\\n <DiskEvents>\\n <Type>DataNeedProtect</Type>\\n <DiskId>d-bp1bq5g3dxxo1x4o****</DiskId>\\n <Status>Solved</Status>\\n <Timestamp>2022-06-01T08:00:00Z</Timestamp>\\n <Description>This is description.</Description>\\n <RecommendAction>NoAction</RecommendAction>\\n <RegionId>cn-hangzhou</RegionId>\\n </DiskEvents>\\n</DescribeDiskEventsResponse>","errorExample":""}]', - 'title' => '查询云盘事件(API下线中)', - ], - 'UpdateSolutionInstanceAttribute' => [ - 'summary' => '更新解决方案实例属性。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => '获取用户云盘使用报告', + 'summary' => '中心化角色:使用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' => '全部资源', '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' => '查询某个可用区支持的异步复制目的地域和可用区。', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '156758', - 'abilityTreeNodes' => [ - 'FEATUREdiskFDS0SW', - ], + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '186462', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '地域', - 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-beijing', - ], + 'schema' => ['title' => '地域ID。', 'description' => '地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'SolutionInstanceId', + 'name' => 'Azone', 'in' => 'query', - 'schema' => [ - 'title' => '解决方案示例id', - 'description' => '解决方案实例ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'inst-***', - ], + 'schema' => ['title' => '可用区ID。', 'description' => '可用区ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou-h'], ], [ - 'name' => 'Name', - 'in' => 'query', - 'schema' => [ - 'title' => '解决方案示例名称', - 'description' => '解决方案实例名称。', - 'type' => 'string', - 'required' => false, - 'example' => 'defaultName', - ], - ], - [ - 'name' => 'Description', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'title' => '解决方案示例描述', - 'description' => '解决方案实例描述。', - 'type' => 'string', - 'required' => false, - 'example' => 'defaultDescription', - ], + 'schema' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。该参数暂未启用。', 'type' => 'string', 'required' => false, 'example' => 'e71d8a535bd9c****'], ], [ - 'name' => 'ClientToken', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '分页查询时每页的最大条目数。取值范围:1~500。该参数暂未启用。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'UpdateSlnInstanceAttributeResponse', - 'description' => 'UpdateSlnInstanceAttributeResponse', + 'title' => 'ListReplicaPairEdgeResponse', + 'description' => 'ListReplicaPairEdgeResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '20758A-585D-4A41-A9B2-28DA8F4F****', + 'SupportedRegions' => [ + 'description' => '地域信息合集。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RegionId' => ['title' => '地域ID', 'description' => '地域ID。', 'type' => 'string', 'example' => 'cn-hangzhou'], + 'Zones' => [ + 'description' => '可用区信息合集。', + 'type' => 'array', + 'items' => [ + 'title' => '是否支持复制时间控制功能。', + 'description' => '可用区信息。', + 'type' => 'object', + 'properties' => [ + 'SupportRtc' => ['title' => '是否支持复制时间控制功能。', 'description' => '是否支持复制时间控制功能。', 'type' => 'boolean', 'example' => 'false'], + 'ZoneId' => ['title' => '可用区ID', 'description' => '可用区ID。', 'type' => 'string', 'example' => 'cn-hangzhou-i'], + ], + ], + ], + ], + 'description' => '', + ], ], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', 'type' => 'string', 'example' => '17EE62D8-064E-5404-8B0D-72122478****'], + 'NextToken' => ['description' => '下一个查询开始的Token,NextToken为空表示没有下一个。', 'type' => 'string', 'example' => 'e71d8a535bd9c****'], + 'MaxResults' => ['description' => '分页查询时每页的最大条目数。'."\n" + ."\n" + .'取值范围:1~500。'."\n" + ."\n" + .'默认值:10。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource.SlnInst', - 'errorMessage' => 'The specified solution instance is not found.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'title' => '查询可用区支持的异步复制目的地域和可用区', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + 'product' => ['code' => 'disk', 'title' => '块存储'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"20758A-585D-4A41-A9B2-28DA8F4F****\\"\\n}","type":"json"}]', - '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"}]', ], - 'TagResources' => [ - 'summary' => '为指定的EBS资源统一绑定标签。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'ListReports' => [ + 'summary' => '中心化角色:查询指定应用历史报告列表', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '200638', + 'abilityTreeNodes' => ['FEATUREdisk2F270T'], ], 'parameters' => [ [ - 'name' => 'ResourceId', + 'name' => 'NextToken', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'title' => '资源ID,n的取值范围为 [1, 50]', - 'description' => '资源ID列表。', - 'type' => 'array', - 'items' => [ - 'description' => '资源ID,最多50个。', - 'type' => 'string', - 'required' => false, - 'example' => 'pair-cn-c4d2t7f****', - ], - 'required' => true, - 'example' => 'disk-123', - 'maxItems' => 51, - ], + 'schema' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'type' => 'string', 'required' => false, 'example' => 'a6792e832ff0XXXXX'], ], [ - 'name' => 'Tag', + 'name' => 'MaxResults', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'title' => '标签键值对。n的取值范围为 [1, 20]', - 'description' => '标签列表,最多包含20个子项。', - 'type' => 'array', - 'items' => [ - 'description' => '资源的标签集合。', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'title' => '资源的标签键', - 'description' => '资源的标签键。N的取值范围:1~20。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => true, - 'example' => 'tag-key', - ], - 'Value' => [ - 'title' => '资源的标签值', - 'description' => '资源的标签值。N的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。', - 'type' => 'string', - 'required' => true, - 'example' => 'tag-value', - ], - ], - 'required' => false, - ], - 'required' => true, - 'maxItems' => 21, - ], + 'schema' => ['title' => 'Token方式最大个数。', 'description' => 'Token方式最大个数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ - 'name' => 'RegionId', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'title' => '地域', - 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '分页查询时设置的每页行数。', 'description' => '分页查询时设置的每页行数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], ], [ - 'name' => 'ResourceType', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'title' => '资源类型定义', - 'description' => '资源类型定义。取值范围:'."\n" - ."\n" - .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" - .'- diskreplicapair:异步复制关系。'."\n" - .'- diskreplicagroup:一致性复制组。', - 'type' => 'string', - 'required' => true, - 'example' => 'diskreplicagroup', - ], + 'schema' => ['title' => '分页模式查询时的页数。', 'description' => '分页模式查询时的页数。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ - 'name' => 'ClientToken', + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => ['description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询块存储数据洞察支持的地域列表。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'AppId', 'in' => 'query', - 'schema' => [ - 'title' => '客户端幂等token', - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。**ClientToken**只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', - ], + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => 'app-xxx'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'TagResponse', - 'description' => 'TagResponse', + 'title' => 'DescribeAppHistoryReportsResponse', + 'description' => 'DescribeAppHistoryReportsResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求 ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', + 'HistoryReports' => [ + 'title' => 'historyReports', + 'description' => 'historyReports', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AppName' => ['description' => '应用名称。', 'type' => 'string', 'example' => 'default'], + 'ReportId' => ['description' => '报告ID。', 'type' => 'string', 'example' => 'report-e19c7b597f5fXX'], + 'ReportTime' => ['description' => '报告生成时间(UTC)。', 'type' => 'string', 'example' => '2024-10-07T02:09:17Z'], + 'SubscribePeriod' => ['description' => '报告订阅周期。', 'type' => 'string', 'example' => 'Weekly'], + 'ReportName' => ['description' => '报告名称。', 'type' => 'string', 'example' => 'default-2024-09-30~2024-10-07-Usage Report'], + ], + 'description' => '', + ], ], + 'NextToken' => ['title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', 'type' => 'string', 'example' => 'a6792e832ff0XXXX'], + 'PageNumber' => ['title' => '分页模式查询时的页数。', 'description' => '分页模式查询时的页数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['title' => '分页模式查询时的单页记录数量。', 'description' => '分页模式查询时的单页记录数量。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['title' => '总个数', 'description' => '总个数。', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'RequestId' => ['description' => '请求ID,阿里云为该请求生成的标识符。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - [ - 'errorCode' => 'Duplicate.TagKey', - 'errorMessage' => 'The Tag.N.Key contain duplicate key.', - ], - [ - 'errorCode' => 'NumberExceed.ResourceIds', - 'errorMessage' => 'The ResourceIds parameter number is exceed , Valid : 50', - ], - [ - 'errorCode' => 'NumberExceed.Tags', - 'errorMessage' => 'NumberExceed.Tags', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'InvalidResourceId.NotFound', - 'errorMessage' => 'The specified ResourceIds are not found in our records.', - ], - [ - 'errorCode' => 'InvalidResourceType.NotFound', - 'errorMessage' => 'The ResourceType provided does not exist in our records.', - ], - [ - 'errorCode' => 'MissingParameter.ResourceType', - 'errorMessage' => 'The parameter - ResourceType should not be null', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], + 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<TagResourcesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</TagResourcesResponse>","errorExample":""}]', - 'title' => '绑定资源标签', - 'description' => '## 接口说明'."\n" - ."\n" - .'绑定标签前,阿里云会校验资源已有标签数量。超过限制值后返回报错信息。更多详情,请参见[使用限制](~~25412~~)。', + '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' => '查询用户使用报告列表', + 'changeSet' => [ + ['createdAt' => '2025-06-10T02:34:55.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2025-05-15T01:56:18.000Z', 'description' => '请求参数发生变更'], + ], + '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' => '全部资源', 'arn' => '*'], + ], + ], + ], + ], ], 'ListTagResources' => [ 'summary' => '查询一个或多个EBS资源已经绑定的标签信息,或查询指定的非默认资源组内的资源ID及标签信息。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -11681,9 +6478,7 @@ 'systemTags' => [ 'operationType' => 'list', 'abilityTreeCode' => '140645', - 'abilityTreeNodes' => [ - 'FEATUREdiskFDS0SW', - ], + 'abilityTreeNodes' => ['FEATUREdiskFDS0SW'], ], 'parameters' => [ [ @@ -11694,12 +6489,7 @@ 'title' => '资源ID,n的取值范围为 [1, 50]', 'description' => '资源ID,最多包含50个子项。', 'type' => 'array', - 'items' => [ - 'description' => '资源ID,N的取值范围为1~50。', - 'type' => 'string', - 'required' => false, - 'example' => 'pair-cn-c4d2t7f****', - ], + 'items' => ['description' => '资源ID,N的取值范围为1~50。', 'type' => 'string', 'required' => false, 'example' => 'pair-cn-c4d2t7f****'], 'required' => false, 'example' => 'disk-123', 'maxItems' => 51, @@ -11716,29 +6506,17 @@ 'items' => [ 'type' => 'object', 'properties' => [ - 'Key' => [ - 'title' => '资源的标签键', - 'description' => '精确查找EBS资源时使用的标签键。标签键长度的取值范围为1~128。N的取值范围为1~20。'."\n" - ."\n" - .'`Tag.N`参数使用说明:用于精确查找绑定了指定标签的EBS资源,由一个键值对组成。'."\n" - ."\n" - .'- 仅指定`Tag.N.Key`时,则返回关联该标签键的所有资源。'."\n" - ."\n" - .'- 仅指定`Tag.N.Value`,则报错`InvalidParameter.TagValue`。'."\n" - ."\n" - .'- 同时指定多个标签键值对时,仅同时满足所有标签键值对的EBS资源会被查找到。'."\n" - .' '."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'tag-key', - ], - 'Value' => [ - 'title' => '资源的标签值', - 'description' => '精确查找EBS资源时使用的标签值。标签值长度的取值范围为1~128。N的取值范围为1~20。', - 'type' => 'string', - 'required' => false, - 'example' => 'tag-value', - ], + 'Key' => ['title' => '资源的标签键', 'description' => '精确查找EBS资源时使用的标签键。标签键长度的取值范围为1~128。N的取值范围为1~20。'."\n" + ."\n" + .'`Tag.N`参数使用说明:用于精确查找绑定了指定标签的EBS资源,由一个键值对组成。'."\n" + ."\n" + .'- 仅指定`Tag.N.Key`时,则返回关联该标签键的所有资源。'."\n" + ."\n" + .'- 仅指定`Tag.N.Value`,则报错`InvalidParameter.TagValue`。'."\n" + ."\n" + .'- 同时指定多个标签键值对时,仅同时满足所有标签键值对的EBS资源会被查找到。'."\n" + .' '."\n", 'type' => 'string', 'required' => false, 'example' => 'tag-key'], + 'Value' => ['title' => '资源的标签值', 'description' => '精确查找EBS资源时使用的标签值。标签值长度的取值范围为1~128。N的取值范围为1~20。', 'type' => 'string', 'required' => false, 'example' => 'tag-value'], ], 'required' => false, ], @@ -11749,50 +6527,26 @@ [ 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'title' => '下一个查询开始Token', - 'description' => '下一个查询开始Token。', - 'type' => 'string', - 'required' => false, - 'example' => 'token123', - ], + 'schema' => ['title' => '下一个查询开始Token', 'description' => '下一个查询开始Token。', 'type' => 'string', 'required' => false, 'example' => 'token123'], ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '地域', - 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '地域', 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'title' => '资源类型定义', - 'description' => '资源类型定义。取值范围:'."\n" - ."\n" - .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" - .'- diskreplicapair:异步复制关系。'."\n" - .'- diskreplicagroup:一致性复制组。', - 'type' => 'string', - 'required' => true, - 'example' => 'diskreplicagroup', - ], + 'schema' => ['title' => '资源类型定义', 'description' => '资源类型定义。取值范围:'."\n" + ."\n" + .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" + .'- diskreplicapair:异步复制关系。'."\n" + .'- diskreplicagroup:一致性复制组。', 'type' => 'string', 'required' => true, 'example' => 'diskreplicagroup'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '客户端幂等token', - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。**ClientToken**只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', - ], + 'schema' => ['title' => '客户端幂等token', 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。**ClientToken**只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], ], ], 'responses' => [ @@ -11802,12 +6556,7 @@ 'description' => 'ListTagResourcesResponse', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'title' => '下一个查询开始Token', - 'description' => '下一个查询开始Token。', - 'type' => 'string', - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], + 'NextToken' => ['title' => '下一个查询开始Token', 'description' => '下一个查询开始Token。', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], 'TagResources' => [ 'title' => '资源标签列表', 'description' => '由资源及其标签组成的集合,包含了资源ID、资源类型和标签键值等信息。', @@ -11815,145 +6564,54 @@ 'items' => [ 'type' => 'object', 'properties' => [ - 'TagKey' => [ - 'title' => '资源的标签键', - 'description' => '资源的标签键。', - 'type' => 'string', - 'example' => 'TestKey', - ], - 'TagValue' => [ - 'title' => '资源的标签值', - 'description' => '资源的标签值。', - 'type' => 'string', - 'example' => 'TestValue', - ], - 'ResourceId' => [ - 'title' => '资源ID', - 'description' => '资源ID。', - 'type' => 'string', - 'example' => 'pair-cn-c4d2t7f****', - ], - 'ResourceType' => [ - 'title' => '资源类型', - 'description' => '资源类型定义。可能值:'."\n" - ."\n" - .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" - .'- diskreplicapair:异步复制关系。'."\n" - .'- diskreplicagroup:一致性复制组。', - 'type' => 'string', - 'example' => 'pair', - ], + 'TagKey' => ['title' => '资源的标签键', 'description' => '资源的标签键。', 'type' => 'string', 'example' => 'TestKey'], + 'TagValue' => ['title' => '资源的标签值', 'description' => '资源的标签值。', 'type' => 'string', 'example' => 'TestValue'], + 'ResourceId' => ['title' => '资源ID', 'description' => '资源ID。', 'type' => 'string', 'example' => 'pair-cn-c4d2t7f****'], + 'ResourceType' => ['title' => '资源类型', 'description' => '资源类型定义。可能值:'."\n" + ."\n" + .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" + .'- diskreplicapair:异步复制关系。'."\n" + .'- diskreplicagroup:一致性复制组。', 'type' => 'string', 'example' => 'pair'], ], ], ], - 'RequestId' => [ - 'title' => '请求 ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '484256DA-D816-44D2-9D86-B6EE4D5B****', - ], + 'RequestId' => ['title' => '请求 ID。无论调用接口成功与否,我们都会返回请求 ID。', 'description' => '请求ID。', 'type' => 'string', 'example' => '484256DA-D816-44D2-9D86-B6EE4D5B****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - [ - 'errorCode' => 'Duplicate.TagKey', - 'errorMessage' => 'The Tag.N.Key contain duplicate key.', - ], - [ - 'errorCode' => 'NumberExceed.ResourceIds', - 'errorMessage' => 'The ResourceIds parameter number is exceed , Valid : 50', - ], - [ - 'errorCode' => 'NumberExceed.Tags', - 'errorMessage' => 'NumberExceed.Tags', - ], - [ - 'errorCode' => 'OperationDenied.QuotaExceed', - 'errorMessage' => 'The quota of tags on resource is beyond permitted range.', - ], - [ - 'errorCode' => 'IdempotentParameterMismatch', - 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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' => '参数“ResourceIds”中包含的“ResourceId”不能超过 50 个。'], + ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'NumberExceed.Tags', 'description' => '标签个数超过最大限制,本操作最多可以操作 20 个标签。'], + ['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' => '如果您提供了一个已经使用过的ClientToken,但其他请求参数有变化。'], ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'InvalidRegionId.NotFound', - 'errorMessage' => 'The specified RegionId does not exist.', - ], - [ - 'errorCode' => 'InvalidResourceId.NotFound', - 'errorMessage' => 'The specified ResourceIds are not found in our records.', - ], - [ - 'errorCode' => 'InvalidResourceType.NotFound', - 'errorMessage' => 'The ResourceType provided does not exist in our records.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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' => '指定的RegionId不存在。'], + ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceIds are not found in our records.', 'description' => '指定的资源不存在,请检查参数ResourceId是否正确。'], + ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', '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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ @@ -11970,663 +6628,561 @@ .'- `Tag.N`(`Tag.N.Key`与`Tag.N.Value`)'."\n" ."\n\n" .'同时指定`Tag.N`和`ResourceId.N`参数时,返回结果中仅包含同时满足这两个条件的EBS资源。', - ], - 'UntagResources' => [ - 'summary' => '为指定的EBS资源统一解绑标签。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:ListTagResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'ModifyApp' => [ + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '140644', - 'abilityTreeNodes' => [ - 'FEATUREdiskFDS0SW', - ], + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '193442', + 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], ], 'parameters' => [ [ - 'name' => 'ResourceId', + 'name' => 'AppName', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => ['title' => 'App名称', 'description' => 'App名称', 'type' => 'string', 'required' => false, 'example' => 'App1'], + ], + [ + 'name' => 'AppTags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'title' => '资源ID,n的取值范围为 [1, 50]', - 'description' => '资源ID,最多包含50个子项。', + 'title' => '用户自定义标签', + 'description' => '用户自定义标签', 'type' => 'array', 'items' => [ - 'description' => '资源ID,N的取值范围为1~50。', - 'type' => 'string', + 'type' => 'object', + 'properties' => [ + 'TagKey' => ['description' => '标签键。', 'type' => 'string', 'required' => false, 'example' => 'key'], + 'TagValue' => ['description' => '标签值。', 'type' => 'string', 'required' => false, 'example' => 'value'], + ], 'required' => false, - 'example' => 'pair-cn-c4d2t7f****', + 'description' => '', ], 'required' => true, - 'example' => 'disk-123', - 'maxItems' => 51, + 'example' => 'default', + 'maxItems' => 100, ], ], [ - 'name' => 'TagKey', + 'name' => 'SubscribeStatus', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['title' => 'App使用报告订阅状态', 'description' => 'App使用报告订阅状态,可选:'."\n" + ."\n" + .'- UnSubscribe'."\n" + .'- Subscribe', 'type' => 'string', 'required' => true, 'example' => 'Subscribe'], + ], + [ + 'name' => 'SubscribePeriod', + 'in' => 'query', + 'schema' => ['title' => 'App使用报告发送间隔', 'description' => 'App使用报告发送间隔,可选'."\n" + .'- Weekly'."\n" + .'- Biweekly'."\n" + .'- Monthly', 'type' => 'string', 'required' => true, 'example' => 'Weekly'], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['title' => 'App简介', 'description' => 'App简介', 'type' => 'string', 'required' => false, 'example' => 'This is description.'], + ], + [ + 'name' => 'ReportSendEnabled', + 'in' => 'query', + 'schema' => ['title' => '发送报告到邮箱和站内信', 'description' => '发送报告到邮箱和站内信', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai'], + ], + [ + 'name' => 'Owner', + 'in' => 'query', + 'schema' => ['description' => '责任人。', 'type' => 'string', 'required' => false, 'example' => 'dev789`'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], + ], + [ + 'name' => 'AppId', + 'in' => 'query', + 'schema' => ['description' => '应用ID。', 'type' => 'string', 'required' => false, 'example' => 'app-xxx'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'title' => '标签键。n 的取值范围为 [1, 20]', - 'description' => '标签键。最多包含20个子项。', - 'type' => 'array', - 'items' => [ - 'description' => '标签键。N的取值范围为1~20。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestKey', + 'title' => 'LensResponse', + 'description' => 'LensResponse', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], + 'Code' => ['description' => '响应码。', 'type' => 'string', 'example' => 'OK'], + 'UserCode' => ['description' => '用户码', 'type' => 'string', 'example' => 'OK'], + 'Message' => ['description' => '返回信息。', 'type' => 'string', 'example' => 'successful'], + 'Success' => ['description' => '请求是否成功,返回值如下:true:请求成功。 false:请求失败。', 'type' => 'boolean', 'example' => 'true'], + 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'], + 'DynamicCode' => ['description' => '错误代码', 'type' => 'string', 'example' => '200'], + 'DynamicMessage' => ['description' => '动态消息,暂无使用,请忽略', 'type' => 'string', 'example' => '-'], + 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'None'], ], - 'required' => false, - 'example' => 'disk-123', - 'maxItems' => 21, ], ], + ], + '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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ], [ - 'name' => 'All', - 'in' => 'query', - 'schema' => [ - 'title' => '是否全部删除,只针对TagKey.N为空时有效', - 'description' => '是否解绑资源上全部的标签。当请求中未设置TagKey.N时,该参数才有效。取值范围:'."\n" - .'- true。'."\n" - .'- false。'."\n" - ."\n" - .'默认值:false。', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', + ['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' => '该请求超时,请稍后再重试。'], + ], + ], + 'title' => '修改App', + 'summary' => '中心化角色:修改App', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + 'product' => ['code' => 'disk', 'title' => '块存储'], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:ModifyApp', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', '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' => [ + 'summary' => '修改专属块存储集群的信息。', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '138430', + 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], + ], + 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '地域', - 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '专属块存储集群所在的地域ID。您可以调用DescribeRegions'."\n" + .'查看最新的阿里云地域列表。', 'description' => '专属块存储集群所属地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan'], ], [ - 'name' => 'ResourceType', + 'name' => 'DbscId', 'in' => 'query', - 'schema' => [ - 'title' => '资源类型定义', - 'description' => '资源类型定义。取值范围:'."\n" - ."\n" - .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" - .'- diskreplicapair:异步复制关系。'."\n" - .'- diskreplicagroup:一致性复制组。', - 'type' => 'string', - 'required' => true, - 'example' => 'diskreplicapair', - ], + 'schema' => ['title' => '专属集群ID', 'description' => '专属块存储集群ID。', 'type' => 'string', 'required' => true, 'example' => 'dbsc-cn-od43bf****'], + ], + [ + 'name' => 'DbscName', + 'in' => 'query', + 'schema' => ['title' => '修改后的专属集群名称,不为空', 'description' => '修改后的专属块存储集群的名称。', 'type' => 'string', 'required' => true, 'example' => 'my-test-dbsc'], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['title' => '修改后的专属集群描述信息', 'description' => '描述信息。', 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '客户端幂等token', - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。**ClientToken**只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', - ], + 'schema' => ['title' => '客户端幂等token', 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。'."\n" + ."\n" + .'ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'TagResponse', - 'description' => 'TagResponse', + 'description' => '请求ID。', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求 ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C46FF5A8-C5F0-4024-8262-B16B6392****', - ], + 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - [ - 'errorCode' => 'Duplicate.TagKey', - 'errorMessage' => 'The Tag.N.Key contain duplicate key.', - ], - [ - 'errorCode' => 'NumberExceed.ResourceIds', - 'errorMessage' => 'The ResourceIds parameter number is exceed , Valid : 50', - ], - [ - 'errorCode' => 'NumberExceed.Tags', - 'errorMessage' => 'NumberExceed.Tags', - ], - [ - 'errorCode' => 'OperationDenied.QuotaExceed', - 'errorMessage' => 'The quota of tags on resource is beyond permitted range.', - ], + ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', '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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => '当前用户无权限对当前资源执行任何操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => '当前用户无权限执行该操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'InvalidResourceId.NotFound', - 'errorMessage' => 'The specified ResourceIds are not found in our records.', - ], - [ - 'errorCode' => 'InvalidResourceType.NotFound', - 'errorMessage' => 'The ResourceType provided does not exist in our records.', - ], - [ - 'errorCode' => 'InvalidRegionId.NotFound', - 'errorMessage' => 'The specified RegionId does not exist.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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' => '指定的RegionId不存在。'], + ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceIds are not found in our records.', 'description' => '指定的资源不存在,请检查参数ResourceId是否正确。'], + ['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' => '参数ResourceType不能为空。'], + ['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.', - ], + ['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.', - ], + ['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":"<UntagResourcesResponse>\\n <RequestId>C46FF5A8-C5F0-4024-8262-B16B6392****</RequestId>\\n</UntagResourcesResponse>","errorExample":""}]', - 'title' => '解绑资源标签', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D0****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDedicatedBlockStorageClusterAttributeResponse>\\n <RequestId>11B55F58-D3A4-4A9B-9596-342420D0****</RequestId>\\n</ModifyDedicatedBlockStorageClusterAttributeResponse>","errorExample":""}]', + 'title' => '修改专属块存储集群属性', 'description' => '## 接口说明'."\n" - ."\n" - .'- 每次解绑的标签数量不能超过20个。'."\n" - ."\n" - .'- 任一标签在解绑后,如果没有绑定任何实例,则该标签会被删除。', - ], - 'ChangeResourceGroup' => [ - 'summary' => '修改EBS资源所在资源组。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .'您可以修改专属块存储集群的名称、描述信息等信息。', + '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' => '修改一致性复制组的名称、描述信息或者RPO。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '152482', - 'abilityTreeNodes' => [ - 'FEATUREdiskFDS0SW', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '115799', + 'abilityTreeNodes' => ['FEATUREdiskPPYCY9'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '地域', - 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '一致性复制组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'ResourceType', + 'name' => 'ReplicaGroupId', 'in' => 'query', - 'schema' => [ - 'title' => '资源类型定义', - 'description' => '资源类型定义。取值范围:'."\n" - ."\n" - .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" - .'- diskreplicapair:异步复制关系。'."\n" - .'- diskreplicagroup:一致性复制组。', - 'type' => 'string', - 'required' => true, - 'example' => 'diskreplicapair', - ], + 'schema' => ['description' => '一致性复制组ID。您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****'], ], [ - 'name' => 'ResourceId', + 'name' => 'GroupName', 'in' => 'query', - 'schema' => [ - 'title' => '资源ID', - 'description' => '资源ID。例如,当ResourceType=diskreplicapair时,则ResourceId可以理解为异步复制对ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'pair-123', - ], + 'schema' => ['description' => '一致性复制组名称。长度为2~128个英文或中文字符。必须以大小写字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。', 'type' => 'string', 'required' => false, 'example' => 'myreplicagrouptest'], ], [ - 'name' => 'NewResourceGroupId', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'title' => '资源ID', - 'description' => '新的企业资源组ID,可在资源组控制台查看可用企业资源组。企业资源组详情请参见[查看资源组基本信息](~~151181~~)。', - 'type' => 'string', - 'required' => true, - 'example' => 'rg-123', - ], + 'schema' => ['description' => '一致性组的描述信息。长度为2~256个英文或中文字符,不能以`http://`或`https://`开头。', 'type' => 'string', 'required' => false, 'example' => 'This is description.'], + ], + [ + 'name' => 'RPO', + 'in' => 'query', + 'schema' => ['description' => '一致性组设定的RPO值,单位:秒。当前仅支持900秒。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '900'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + [ + 'name' => 'Bandwidth', + 'in' => 'query', + 'schema' => ['title' => '带宽值,单位kbps。公共云暂不支持。', 'description' => '带宽值,单位Kbps。'."\n" + .'>该参数暂未开放使用。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'null'], + ], + [ + 'name' => 'EnableRtc', + 'in' => 'query', + 'schema' => ['title' => '是否开启RTC。', 'description' => '是否开启复制时间控制(RTC)。取值范围:'."\n" + ."\n" + .'- false:关闭。'."\n" + .'- true:开启。'."\n" + ."\n" + .'> 如果设置为ture,表示一致性组开启复制时间控制(RTC),加入该一致性组的异步复制对均开启RTC。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'TagResponse', - 'description' => 'TagResponse', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求ID', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - [ - 'errorCode' => 'OperationDenied.QuotaExceed', - 'errorMessage' => 'The quota of tags on resource is beyond permitted range.', - ], - ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.GroupHasPair', 'errorMessage' => 'The group cannot be deleted due to not empty.', 'description' => '当前一致性组中包含有复制对,不能被删除。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', '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' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'InvalidResourceType.NotFound', - 'errorMessage' => 'The ResourceType provided does not exist in our records.', - ], - [ - 'errorCode' => 'InvalidResourceId.NotFound', - 'errorMessage' => 'The specified ResourceId is not found in our records.', - ], - [ - 'errorCode' => 'InvalidResourceGroup.NotFound', - 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', - ], - [ - 'errorCode' => 'MissingParameter.ResourceGroup', - 'errorMessage' => 'The parameter - Resource Group should not be null', - ], - [ - 'errorCode' => 'MissingParameter.ResourceType', - 'errorMessage' => 'The parameter - ResourceType should not be null', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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' => '修改资源组', - ], - 'DescribeSolutionInstanceConfiguration' => [ - 'summary' => '查询解决方案默认配置。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ModifyDiskReplicaGroupResponse>","errorExample":""}]', + 'title' => '修改异步复制组', + 'description' => '## 接口说明'."\n" + ."\n" + .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + ."\n" + .'- 一致性复制组必须处于**已创建**(`created`)或者**已停止**(`stopped`)状态。', + 'changeSet' => [ + ['createdAt' => '2025-07-07T11:22:39.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-03-30T09:09:55.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-08-16T11:40:00.000Z', 'description' => '请求参数发生变更'], + ], + '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' => '修改一个云盘异步复制关系。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '189350', - 'abilityTreeNodes' => [ - 'FEATUREdiskFDS0SW', - ], + 'abilityTreeCode' => '44716', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ - 'name' => 'SolutionId', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '解决方案ID', - 'description' => '解决方案ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'sln-xxxxx', - ], + 'schema' => ['description' => '异步复制关系中主盘或从盘所属的地域ID。您可以调用[DescribeRegions](~~354276~~)查询异步复制功能支持的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'RegionId', + 'name' => 'ReplicaPairId', 'in' => 'query', - 'schema' => [ - 'title' => '地域', - 'description' => '地域。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '异步复制关系的ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****'], ], [ - 'name' => 'Parameters', + 'name' => 'PairName', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'title' => '配置查询参数', - 'description' => '配置查询参数。', - 'type' => 'array', - 'items' => [ - 'description' => '参数信息。', - 'type' => 'object', - 'properties' => [ - 'ParameterKey' => [ - 'description' => '模板中已定义的参数的名称。'."\n" - ."\n" - .'> Parameters为可选参数。若指定了Parameters,则ParameterKey为必选参数。', - 'type' => 'string', - 'required' => true, - 'example' => '***', - ], - 'ParameterValue' => [ - 'description' => '模板中已定义的参数的取值。'."\n" - ."\n" - .'> Parameters为可选参数。若指定了Parameters,则ParameterValue为必选参数。', - 'type' => 'string', - 'required' => true, - 'example' => '***', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 100, - ], + 'schema' => ['description' => '异步复制关系的名称。', 'type' => 'string', 'required' => false, 'example' => 'TestReplicaPair'], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => '异步复制关系的描述信息。', 'type' => 'string', 'required' => false, 'example' => 'This is description.'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + [ + 'name' => 'Bandwidth', + 'in' => 'query', + 'schema' => ['description' => '带宽值,单位Kbps。'."\n" + .'>该参数暂未开放使用。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10240'], + ], + [ + 'name' => 'RPO', + 'in' => 'query', + 'schema' => ['description' => '一致性组设定的RPO值,单位:秒。当前仅支持900秒。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '900'], + ], + [ + 'name' => 'EnableRtc', + 'in' => 'query', + 'schema' => ['title' => '是否开启RTC。', 'description' => '是否开启复制时间控制(RTC)。取值范围:'."\n" + ."\n" + .'- false:关闭。'."\n" + .'- true:开启。'."\n" + ."\n" + .'默认false。'."\n" + ."\n" + .'> 若复制对已加入复制组,则与复制组的属性保持一致。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribeSlnInstanceConfigurationResponse', - 'description' => 'DescribeSlnInstanceConfigurationResponse', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => '结果集。', - 'type' => 'array', - 'items' => [ - 'description' => '结果集。', - 'type' => 'object', - 'additionalProperties' => [ - 'type' => 'any', - 'description' => '结果集。', - 'example' => '[]', - ], - ], - ], - 'RequestId' => [ - 'title' => '请求ID。', - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], - [ - 'errorCode' => 'AssumeRoleFail.solution', - 'errorMessage' => 'Assume role fail, please check RamRole for EBS Laboratory already exist and policy is correct.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', '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' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"key\\": \\"[]\\"\\n }\\n ],\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D0****\\"\\n}","type":"json"}]', - 'title' => '查询解决方案默认配置', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ModifyDiskReplicaPairResponse>","errorExample":""}]', + 'title' => '修改云盘异步复制关系', + 'description' => '## 接口说明'."\n" + ."\n" + .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + .'- 当异步复制关系处于**已创建**(`created`)或**已停止**(`stopped`)状态时,可以修改名称或者描述信息。', + 'changeSet' => [ + ['createdAt' => '2025-07-07T11:22:38.000Z', 'description' => '请求参数发生变更'], + ['createdAt' => '2023-03-30T09:09:55.000Z', 'description' => '错误码发生变更'], + ['createdAt' => '2022-06-23T11:05:57.000Z', 'description' => '错误码发生变更'], + ], + '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' => [ 'summary' => '查询通过SetDedicatedBlockStorageClusterDiskThroughput API设置的专用块存储集群磁盘的吞吐量状态。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -12637,9 +7193,7 @@ 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '207585', - 'abilityTreeNodes' => [ - 'FEATUREdisk1O4P8E', - ], + 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], ], 'parameters' => [ [ @@ -12656,23 +7210,12 @@ [ 'name' => 'RegionId', 'in' => 'formData', - 'schema' => [ - 'description' => '专属块存储集群所属的地域ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '专属块存储集群所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ @@ -12693,96 +7236,41 @@ ."\n" .'- FAIL:失败', 'type' => 'string', - 'enumValueTitles' => [ - 'SUCCESS' => '成功', - 'RUNNING' => '正常运行', - 'WAIT' => '待执行', - 'FAIL' => '失败', - ], + 'enumValueTitles' => ['SUCCESS' => '成功', 'RUNNING' => '正常运行', 'WAIT' => '待执行', 'FAIL' => '失败'], 'example' => 'Running', ], - 'RequestId' => [ - 'title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'type' => 'string', - 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****', - ], + 'RequestId' => ['title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'type' => 'string', 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ @@ -12791,1078 +7279,779 @@ ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Running\\",\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","type":"json"}]', 'title' => '查询设置专属块存储集群云盘吞吐状态', - ], - 'SetDedicatedBlockStorageClusterDiskThroughput' => [ - 'summary' => '弹性型专属存储集群内,方便您实现指定云盘目标的bps值的功能;只需要设置云盘ID和目标吞吐,简化您设置性能控制、修改预配置、调节云盘burst的步骤。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ebs:QueryDedicatedBlockStorageClusterDiskThroughputStatus', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'QueryDedicatedBlockStorageClusterInventoryData' => [ + 'summary' => '调用QueryDedicatedBlockStorageClusterInventoryData查询指定时间范围下,专属块存储集群容量趋势数据,包括可用容量和总容量。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'get', + 'abilityTreeCode' => '149411', + 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], ], 'parameters' => [ [ - 'name' => 'DiskId', + 'name' => 'DbscId', 'in' => 'formData', - 'schema' => [ - 'description' => '云盘ID。', - 'type' => 'string', - 'required' => true, - 'example' => 'd-bp67acfmxazb4p****', - ], + 'schema' => ['title' => '专属块存储集群Id', 'description' => '专属块存储集群Id。', 'type' => 'string', 'required' => true, 'example' => 'dbsc-xxx'], ], [ - 'name' => 'RegionId', + 'name' => 'Period', 'in' => 'formData', 'schema' => [ - 'description' => '专属块存储集群所在的地域ID。', - 'type' => 'string', + 'title' => '数据返回点的间隔时间(秒)', + 'description' => '数据返回点的间隔时间(秒)。', + 'type' => 'integer', + 'format' => 'int32', 'required' => true, - 'example' => 'cn-hangzhou', + 'enumValueTitles' => [60 => '60', 3600 => '3600', 86400 => '86400'], + 'example' => '60', ], ], [ - 'name' => 'Bps', + 'name' => 'StartTime', 'in' => 'formData', - 'schema' => [ - 'description' => '每秒读写(I/O)成功传输的数据数量上限,单位:MB/s。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'example' => '100', - ], + 'schema' => ['title' => '查询开始秒级时间戳', 'description' => '查询开始秒级时间戳。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1606303800'], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => ['title' => '查询结束秒级时间戳', 'description' => '查询结束秒级时间戳。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1606403800'], + ], + [ + 'name' => 'RegionId', + 'in' => 'formData', + 'schema' => ['description' => '专属块存储集群所属地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-shenzhen'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Response', - 'description' => 'Response', + 'title' => 'DescribeDbscInventoryDataResponse', + 'description' => 'DescribeDbscInventoryDataResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'type' => 'string', - 'example' => '17EE62D8-064E-5404-8B0D-72122478****', + 'DbscId' => ['title' => '专属块存储集群Id', 'description' => '专属块存储集群Id。', 'type' => 'string', 'example' => 'dbsc-xxx'], + 'DbscName' => ['title' => '专属块存储集群名', 'description' => '专属块存储集群名。', 'type' => 'string', 'example' => 'myDBSCCluster'], + 'DiskCategory' => ['title' => 'IO类型', 'description' => 'IO类型。', 'type' => 'string', 'example' => 'cloud_essd'], + 'TotalCount' => ['title' => '查询到的数据总数', 'description' => '查询到的数据总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '60'], + 'Data' => [ + 'title' => '云盘的监控数据集合', + 'description' => '云盘的监控数据集合。', + 'type' => 'array', + 'items' => [ + 'description' => '某时刻完整监控数据对象。', + 'type' => 'object', + 'properties' => [ + 'MonitorItems' => [ + 'description' => '监控项数值集合。', + 'type' => 'object', + 'properties' => [ + 'AvailableSize' => ['description' => '专属块存储集群可用容量GiB。', 'type' => 'integer', 'format' => 'int64', 'example' => '61360'], + 'TotalSize' => ['description' => '专属块存储集群总容量GiB。', 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], + ], + ], + 'Timestamp' => ['title' => '查询监控信息的时间戳', 'description' => '查询监控信息的时间戳。', 'type' => 'string', 'example' => '1606403800'], + 'ResourceId' => ['title' => '资源Id', 'description' => '资源Id。', 'type' => 'string', 'example' => 'dbsc-xxx'], + ], + ], ], + 'RequestId' => ['title' => '请求ID', 'description' => '请求id。', 'type' => 'string', 'example' => 'F1A4258A-0C8C-5329-B495-BC5AD7AD****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['errorCode' => 'InvalidTime.Malformed', 'errorMessage' => 'The specified parameter StartTime or EndTime is not valid.', 'description' => '参数StartTime或EndTime不合法。'], + ['errorCode' => 'InvalidParameter.EndTime', 'errorMessage' => 'The specified parameter EndTime is earlier than StartTime.', 'description' => '参数 EndTime 早于 StartTime。'], + ['errorCode' => 'InvalidPeriod.ValueNotSupported', 'errorMessage' => 'The specified parameter Period is not valid', 'description' => '参数Period不合法。'], + ['errorCode' => 'InvalidParameter.TooManyDataQueried', 'errorMessage' => 'Too many data queried.', 'description' => '查询数据过多。'], ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => '当前用户无权限对当前资源执行任何操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => '当前用户无权限执行该操作。请检查您的账号权限或者咨询您的主账号管理员。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', + ['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 \\"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' => '查询专属块存储集群创盘容量趋势数据', + 'description' => 'Period为数据返回点的间隔时间。'."\n" + .'设置为60(分钟间隔)下最多返回数据点个数1440;设置为3600(小时间隔)级精度下最多返回数据点个数744;设置为86400(天间隔)下最多返回数据点个数366。', + '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}'], + ], ], ], - 429 => [ - [ - 'errorCode' => 'BLOCK.LimitedRequest', - 'errorMessage' => 'Request was denied due to user flow control.', + ], + ], + 'RemoveDiskReplicaPair' => [ + 'summary' => '移除一致性复制组中的复制对。移除复制对只是解除了复制对和一致性复制组的绑定关系,不会删除复制对。', + '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' => '一致性复制组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], + ], + [ + 'name' => 'ReplicaGroupId', + 'in' => 'query', + 'schema' => ['description' => '一致性复制组ID。'."\n" + ."\n" + .'您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****'], + ], + [ + 'name' => 'ReplicaPairId', + 'in' => 'query', + 'schema' => ['description' => '复制对ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], + ], ], ], + ], + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.GroupStatusCannotRemovePair', 'errorMessage' => 'The pair cannot be removed in group current status.', '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' => '当前操作不允许执行,因为复制对和一致性组所属的RegionId和ZoneId不一致。'], + ['errorCode' => 'OperationDenied.PairGroupStatusConflict', 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', 'description' => '当前操作不允许执行,因为复制对和一致性组的状态不一致。'], + ['errorCode' => 'OperationDenied.PairInAnotherGroup', 'errorMessage' => 'The operation is not allowed because pair is already in another group.', 'description' => '当前操作不允许执行,因为复制对已被加入另一个一致性组中。'], + ['errorCode' => 'OperationDenied.PairNotInGroup', 'errorMessage' => 'The operation is not allowed because pair is not in any group.', 'description' => '当前操作不允许执行,因为指定的异步复制对未加入任何一致性组中。'], + ['errorCode' => 'OperationDenied.PairStatusCannotRemoveFromGroup', 'errorMessage' => 'The pair cannot be removed in pair current status.', '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.', - ], + ['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.', - ], + ['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' => '设置专属块存储集群AutoPL云盘吞吐上限', - 'description' => '接口限制:'."\n" - ."\n" - .'- 吞吐下限:取值范围:60'."\n" - .'~ 单盘最大吞吐量;更多信息,请参见[云盘性能](~~25382~~)。'."\n" + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<RemoveDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</RemoveDiskReplicaPairResponse>","errorExample":""}]', + 'title' => '移除一致性复制组中的复制对', + 'description' => '## 接口说明'."\n" ."\n" - .'- 吞吐上限:受限于[AutoPL云盘](~~368372~~)规格限制。'."\n" + .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" ."\n" - .'- 云盘限制:规格AutoPL,是running状态的弹性型专属存储集群下的云盘,云盘状态需要是 In_use(使用中)或者Available(待挂载)。', - ], - 'ListReports' => [ - 'summary' => '中心化角色:查询指定应用历史报告列表。', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .'- 一致性复制组必须处于**已创建**(`created`)、**已停止**(`stopped`)或者**失效**(`invalid`)状态。', + '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' => [ + 'summary' => '启用一致性复制组中复制对的反向复制功能。启用反向复制功能后,可以将原灾备站点的云盘数据复制到原生产站点的云盘当中。反向复制数据时,一致性复制组中原有的站点信息不变,主从关系颠倒。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '200638', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '115794', + 'abilityTreeNodes' => ['FEATUREdiskAQUAFH', 'FEATUREdiskVW208V'], ], 'parameters' => [ [ - 'name' => 'NextToken', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'type' => 'string', - 'required' => false, - 'example' => 'a6792e832ff0XXXXX', - ], + 'schema' => ['description' => '一致性复制组中容灾站点所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], ], [ - 'name' => 'MaxResults', + 'name' => 'ReplicaGroupId', 'in' => 'query', - 'schema' => [ - 'title' => 'Token方式最大个数。', - 'description' => 'Token方式最大个数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => '一致性复制组ID。您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****'], ], [ - 'name' => 'PageSize', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '分页查询时设置的每页行数。', - 'description' => '分页查询时设置的每页行数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'PageNumber', + 'name' => 'ReverseReplicate', 'in' => 'query', + 'schema' => ['description' => '反向复制开关:false代表恢复原方向,true代表反向复制。默认值是true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'title' => '分页模式查询时的页数。', - 'description' => '分页模式查询时的页数。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。xxx', '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' => ''], + ], [ - 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询块存储数据洞察支持的地域列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', + ['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":"<ReprotectDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ReprotectDiskReplicaGroupResponse>","errorExample":""}]', + 'title' => '启用异步复制组反向复制', + 'description' => '## 接口说明'."\n" + .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + .'- 一致性复制组必须处于**故障切换完成**(`failovered`)状态。您可以调用`FailoverDiskReplicaPair`启用故障切换功能。'."\n" + ."\n" + .'- 反向复制前,生产站点中的主盘必须从所属的ECS实例上卸载,即处于未挂载的状态。您可以调用[DetachDisk](~~25516~~)卸载云盘。'."\n" + ."\n" + .'- 启用反向复制功能后,您还需要重新调用`StartDiskReplicaGroup`启动异步复制功能,才可以将原灾备站点的云盘数据复制到原生产站点的云盘当中。'."\n" + .'- 通过设置ReverseReplicate参数为false,您可以进行取消**故障切换完成**(`failovered`)状态,恢复原来的复制方向。', + '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' => [ + 'summary' => '启用异步复制关系的反向复制功能。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'AppId', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '71806', + 'abilityTreeNodes' => ['FEATUREdiskAQUAFH', 'FEATUREdiskVW208V'], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'app-xxx', - ], + 'schema' => ['description' => '异步复制关系中从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制关系中从盘的地域信息。'."\n" + ."\n" + .'> 必须在从盘所属地域下启用反向复制功能。', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai'], + ], + [ + 'name' => 'ReplicaPairId', + 'in' => 'query', + 'schema' => ['description' => '异步复制关系的ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + [ + 'name' => 'ReverseReplicate', + 'in' => 'query', + 'schema' => ['description' => '反向复制开关:false代表恢复原方向,true代表反向复制。默认值是true。', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribeAppHistoryReportsResponse', - 'description' => 'DescribeAppHistoryReportsResponse', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'HistoryReports' => [ - 'title' => 'historyReports', - 'description' => 'historyReports', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'AppName' => [ - 'description' => '应用名称。', - 'type' => 'string', - 'example' => 'default', - ], - 'ReportId' => [ - 'description' => '报告ID。', - 'type' => 'string', - 'example' => 'report-e19c7b597f5fXX', - ], - 'ReportTime' => [ - 'description' => '报告生成时间。', - 'type' => 'string', - 'example' => '2024-10-07T02:09:17Z', - ], - 'SubscribePeriod' => [ - 'description' => '报告订阅周期。', - 'type' => 'string', - 'example' => 'Weekly', - ], - 'ReportName' => [ - 'description' => '报告名称。', - 'type' => 'string', - 'example' => 'default-2024-09-30~2024-10-07-Usage Report', - ], - ], - ], - ], - 'NextToken' => [ - 'title' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'description' => '查询凭证(Token),取值为上一次API调用返回的NextToken参数值。', - 'type' => 'string', - 'example' => 'a6792e832ff0XXXX', - ], - 'PageNumber' => [ - 'title' => '分页模式查询时的页数。', - 'description' => '分页模式查询时的页数。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'title' => '分页模式查询时的单页记录数量。', - 'description' => '分页模式查询时的单页记录数量。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'title' => '总个数', - 'description' => '总个数。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'RequestId' => [ - 'description' => '请求ID,阿里云为该请求生成的标识符。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 429 => [ - [ - 'errorCode' => 'BLOCK.LimitedRequest', - 'errorMessage' => 'Request was denied due to user flow control.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], - '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"}]', - 'title' => '查询用户使用报告列表', - ], - 'GetReport' => [ - 'summary' => '中心化角色:使用reportId获取用户使用报告', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<ReprotectDiskReplicaPairResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</ReprotectDiskReplicaPairResponse>","errorExample":""}]', + 'title' => '启用云盘反向异步复制', + 'description' => '## 接口说明'."\n" + ."\n" + .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + .'- 异步复制关系必须处于**故障切换完成**(`failovered`)状态。您可以调用[FailoverDiskReplicaPair](~~354358~~)启用故障切换功能。'."\n" + .'- 异步复制关系中,主盘必须从所属的ECS实例上卸载,即处于未挂载的状态。您可以调用[DetachDisk](~~25516~~)卸载云盘。'."\n" + .'- 启用反向复制功能后,您还需要重新调用[StartDiskReplicaPair](~~354205~~)启动异步复制功能,才可以将原从盘的数据复制到原主盘当中。'."\n" + .'- 通过设置ReverseReplicate参数为false,您可以进行取消**故障切换完成**(`failovered`)状态,恢复原来的复制方向。', + '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' => [ + 'summary' => '弹性型专属存储集群内,方便您实现指定云盘目标的bps值的功能;只需要设置云盘ID和目标吞吐,简化您设置性能控制、修改预配置、调节云盘burst的步骤。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '209319', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - ], - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'ReportId', + 'name' => 'DiskId', 'in' => 'formData', - 'schema' => [ - 'title' => 'ReportType=history时,必须传入ReportId,根据ReportId查询历史报告。', - 'description' => 'ReportType=history时,必须传入ReportId,根据ReportId查询历史报告。', - 'type' => 'string', - 'required' => false, - 'example' => 'report-74fbea80e802xxxx', - ], + 'schema' => ['description' => '云盘ID。', 'type' => 'string', 'required' => true, 'example' => 'd-bp67acfmxazb4p****'], ], [ 'name' => 'RegionId', 'in' => 'formData', - 'schema' => [ - 'title' => '', - 'description' => '必填,region名称', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '专属块存储集群所在的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ReportType', - 'in' => 'query', - 'schema' => [ - 'title' => '可选值:history/present', - 'description' => '可选值:history/present', - 'type' => 'string', - 'required' => false, - 'example' => 'history', - ], + 'name' => 'Bps', + 'in' => 'formData', + 'schema' => ['description' => '每秒读写(I/O)成功传输的数据数量上限,单位:MB/s。', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '100'], ], [ - 'name' => 'AppName', + 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '可选值,只在ReportType=present时AppName才会生效', - 'description' => '可选值,只在ReportType=present时AppName才会生效', - 'type' => 'string', - 'required' => false, - 'example' => 'App1', - ], + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'GetReportResponse', - 'description' => 'GetReportResponse', + 'title' => 'Response', + 'description' => 'Response', 'type' => 'object', 'properties' => [ - 'Datas' => [ - 'description' => '数据详情', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Title' => [ - 'description' => '数据标题', - 'type' => 'string', - 'example' => 'disk_count_percent_by_category', - ], - 'Data' => [ - 'description' => '数据', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Labels' => [ - 'description' => '数据标签', - 'type' => 'object', - 'example' => '{'."\n" - .' "category": "cloud"'."\n" - .'}', - ], - 'DataPoints' => [ - 'description' => '数据值', - '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" - .'}', - ], - ], - ], - ], - ], - ], - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], + 'RequestId' => ['title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'type' => 'string', 'example' => '17EE62D8-064E-5404-8B0D-72122478****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], + ['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.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - '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"}]', - 'title' => '获取用户云盘使用报告', - ], - 'DescribeUserTagKeys' => [ - 'summary' => '中心化角色:查询用户云盘快照tagKeys', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"17EE62D8-064E-5404-8B0D-72122478****\\"\\n}","type":"json"}]', + 'title' => '设置专属块存储集群AutoPL云盘吞吐上限', + 'description' => '接口限制:'."\n" + ."\n" + .'- 吞吐下限:取值范围:60'."\n" + .'~ 单盘最大吞吐量;更多信息,请参见[云盘性能](~~25382~~)。'."\n" + ."\n" + .'- 吞吐上限:受限于[AutoPL云盘](~~368372~~)规格限制。'."\n" + ."\n" + .'- 云盘限制:规格AutoPL,是running状态的弹性型专属存储集群下的云盘,云盘状态需要是 In_use(使用中)或者Available(待挂载)。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:SetDedicatedBlockStorageClusterDiskThroughput', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'StartDiskReplicaGroup' => [ + 'summary' => '启动一致性复制组中复制对的异步复制功能。首次同步时,系统会先进行一次全量同步,之后会按照保证RPO(Recovery Point Object)的时间周期内进行增量同步。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '253920', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - ], - 'tenantRelevance' => 'publicInformation', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'NextToken', - 'in' => 'formData', - 'schema' => [ - 'description' => '本次调用返回的查询凭证(Token)。', - 'type' => 'string', - 'required' => false, - 'example' => 'f07b150eadfa1d7a', - ], + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '一致性复制组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'MaxResults', - 'in' => 'formData', - 'schema' => [ - 'description' => '分页查询时每页行数。最大值为100。'."\n" - ."\n" - .'默认值:'."\n" - ."\n" - .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" - ."\n" - .'- 当设置的值大于100时,默认值为100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'name' => 'ReplicaGroupId', + 'in' => 'query', + 'schema' => ['description' => '一致性复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****'], ], [ - 'name' => 'TagFilterKey', - 'in' => 'formData', - 'schema' => [ - 'description' => '查询过滤的tagKey', - 'type' => 'string', - 'required' => false, - 'example' => 'tagKey', - ], + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'name' => 'OneShot', + 'in' => 'query', + 'schema' => ['description' => '是否立刻进行一次同步。取值范围:'."\n" + ."\n" + .'- true:立刻开始数据同步。'."\n" + ."\n" + .'- false:在RPO时间周期之后才开始数据同步。'."\n" + ."\n\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribeLensUserTagKeyResponse', - 'description' => 'DescribeLensUserTagKeyResponse', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'TagKeys' => [ - 'description' => '符合条件的标签键列表。', - 'type' => 'array', - 'items' => [ - 'description' => '符合条件的标签键列表。', - 'type' => 'string', - 'example' => '{\'TagKey\': []}', - ], - ], - 'NextToken' => [ - 'description' => '下一个查询开始的Token,NextToken为空表示没有下一个。', - 'type' => 'string', - 'example' => 'f07b150eadfa1d7a', - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], - 'MaxResults' => [ - 'description' => '分页查询时每页行数。最大值为100。'."\n" - ."\n" - .'默认值:'."\n" - ."\n" - .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" - ."\n" - .'- 当设置的值大于100时,默认值为100。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['errorCode' => 'OperationDenied.StandbyDeviceAttached', 'errorMessage' => 'The secondary disk is attached.', 'description' => '从盘已挂载,请关闭从端虚拟机或卸载云盘。'], ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => '当前状态下该操作不允许执行。'], + ['errorCode' => 'OperationDenied.ManualSyncLimit', 'errorMessage' => 'One shot start manual syncing too frequently, please try again later.', 'description' => '手动同步冷却时间未满足。'], + ['errorCode' => 'OperationDenied.NoPairInGroup', 'errorMessage' => 'The operation is not allowed because no pair in the group.', 'description' => '当前操作不允许执行,因为指定的一致性组中没有复制对。'], + ['errorCode' => 'OperationDenied.PairGroupStatusConflict', 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', 'description' => '当前操作不允许执行,因为复制对和一致性组的状态不一致。'], + ['errorCode' => 'OperationDenied.PairGroupAZoneConflict', 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'description' => '当前操作不允许执行,因为复制对和一致性组所属的RegionId和ZoneId不一致。'], + ['errorCode' => 'OperationDenied.PairNotInGroup', 'errorMessage' => 'The operation is not allowed because pair is not in any group.', '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' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 429 => [ - [ - 'errorCode' => 'BLOCK.LimitedRequest', - 'errorMessage' => 'Request was denied due to user flow control.', - ], + ['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.', - ], + ['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.', - ], + ['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' => '查询用户标签键', + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<StartDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</StartDiskReplicaGroupResponse>","errorExample":""}]', + 'title' => '开始异步复制组', 'description' => '## 接口说明'."\n" ."\n" - .'查询用户云盘和快照的标签键值,可通过filterTagKey缩小查询范围。', - ], - 'DescribeUserTagValues' => [ - 'summary' => '中心化角色:查询用户云盘快照tagValues', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', + .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + .'- 当使用自动同步(即设置`OneShot`为`false`)时,一致性复制组必须处于**已创建**(`created`)、**同步中**(`syncing`)、**正常**(`normal`)或者**已停止**(`stopped`)状态。'."\n" + ."\n" + .'- 当使用单次同步(即设置`OneShot`为`true`)时,一致性复制组必须处于**已创建**(`created`)、**单次同步中**(`manual_syncing`)或者**已停止**(`stopped`)状态。两次单次同步操作的时间间隔需要大于RPO/2时间。'."\n" + ."\n" + .'- 一致性复制组被启动后,系统会自动进行第一次异步复制操作,此时一致性复制组会处于**初始同步中**(`initial_syncing`)的状态,该次操作会把主盘的全量数据复制到从盘。', + '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' => [ + 'summary' => '为指定的异步复制关系激活异步复制功能。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '253922', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - ], - 'tenantRelevance' => 'publicInformation', + 'operationType' => 'update', + 'abilityTreeCode' => '48741', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ - 'name' => 'TagKey', - 'in' => 'formData', - 'schema' => [ - 'title' => '标签键。最多包含20个子项。', - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'TestKey', - ], - ], - [ - 'name' => 'NextToken', - 'in' => 'formData', - 'schema' => [ - 'title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAdDWBF2', - ], + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['description' => '异步复制关系中主盘或从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ - 'name' => 'MaxResults', - 'in' => 'formData', - 'schema' => [ - 'title' => '分页查询时每页行数。最大值为100。'."\n" - ."\n" - .'默认值:'."\n" - ."\n" - .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" - ."\n" - .'- 当设置的值大于100时,默认值为100。', - 'description' => '分页查询时每页行数。最大值为100。'."\n" - ."\n" - .'默认值:'."\n" - ."\n" - .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" - ."\n" - .'- 当设置的值大于100时,默认值为100。', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'name' => 'ReplicaPairId', + 'in' => 'query', + 'schema' => ['description' => '异步复制关系的ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****'], ], [ - 'name' => 'TagFilterValue', - 'in' => 'formData', - 'schema' => [ - 'description' => '标签内容过滤', - 'type' => 'string', - 'required' => false, - 'example' => 'keyValue', - ], + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ - 'name' => 'RegionId', - 'in' => 'formData', - 'schema' => [ - 'title' => '一致性复制组所属的地域ID。', - 'description' => '一致性复制组所属的地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-beijing', - ], + 'name' => 'OneShot', + 'in' => 'query', + 'schema' => ['description' => '是否立刻进行一次同步。取值范围:'."\n" + .'- true:立刻开始数据同步。'."\n" + .'- false:在RPO时间周期之后才开始数据同步。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribeLensUserTagValueResponse', - 'description' => 'DescribeLensUserTagValueResponse', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'TagValues' => [ - 'title' => '标签键对应的标签值。', - 'description' => '标签键对应的标签值。', - 'type' => 'array', - 'items' => [ - 'title' => '标签键对应的标签值。', - 'description' => '标签键对应的标签值。', - 'type' => 'string', - 'example' => '[\'90349\']', - ], - ], - 'NextToken' => [ - 'title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'description' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', - 'type' => 'string', - 'example' => 'NextToken', - ], - 'RequestId' => [ - 'title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'description' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', - 'type' => 'string', - 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', - ], - 'MaxResults' => [ - 'description' => '分页查询时每页行数。最大值为100。'."\n" - ."\n" - .'默认值:'."\n" - ."\n" - .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" - ."\n" - .'- 当设置的值大于100时,默认值为100。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['errorCode' => 'OperationDenied.StandbyDeviceAttached', 'errorMessage' => 'The secondary disk is attached.', 'description' => '从盘已挂载,请关闭从端虚拟机或卸载云盘。'], ], 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => '当前状态下该操作不允许执行。'], + ['errorCode' => 'OperationDenied.ManualSyncLimit', 'errorMessage' => 'One shot start manual syncing too frequently, please try again later.', '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' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 429 => [ - [ - 'errorCode' => 'BLOCK.LimitedRequest', - 'errorMessage' => 'Request was denied due to user flow control.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], - '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' => '查询用户标签内容', + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","errorExample":""},{"type":"xml","example":"<StartDiskReplicaPairResponse>\\n <RequestId>A37597A6-BB99-19B3-85EA-4C2B91F0****</RequestId>\\n</StartDiskReplicaPairResponse>","errorExample":""}]', + 'title' => '开始云盘异步复制', 'description' => '## 接口说明'."\n" ."\n" - .'> 专属块存储集群功能目前支持华南2(河源)、印度尼西亚(雅加达)以及华南1(深圳)地域。'."\n" + .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" ."\n" - .'- 请求参数的作用类似于一个过滤器,过滤器为逻辑与(AND)关系。如果某一参数为空,则过滤器不起作用。'."\n" - .'- 在分页查询时,推荐您使用MaxResults与NextToken参数进行查询。具体使用说明:分页查询首页时,仅需设置MaxResults以限制返回信息的条目数,返回结果中的NextToken将作为查询后续页的凭证。查询后续页时,将NextToken参数设置为上一次返回结果中获取到的NextToken作为查询凭证,并设置MaxResults限制返回条目数。', - ], - 'DeleteApp' => [ - 'summary' => '中心化角色:删除App', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .'- 只能启动处于**已创建**(`created`)或者**已停止**(`stopped`)状态的异步复制关系。'."\n" + ."\n" + .'- 异步复制被启动后,系统会自动进行第一次异步复制操作,此时异步复制关系会处于**初始同步中**(`initial_syncing`)的状态,该次操作会把主盘的全量数据复制到从盘。', + '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' => [ + 'summary' => '您可以通过演练切换功能确保复制流程持续运行,同时将从盘最近恢复点的数据克隆至一块新的云盘,定期验证容灾站点应用的完整性和正确性。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -13871,1224 +8060,2193 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '193443', - 'abilityTreeNodes' => [ - 'FEATUREdisk7F2R1Z', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '186458', + 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => '异步复制对中从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制对的当前从盘所属地域。'."\n" + ."\n" + .'> 必须在当前从端所属地域下启用容灾演练功能。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'Owner', + 'name' => 'PairId', 'in' => 'query', - 'schema' => [ - 'description' => '应用责任人。', - 'type' => 'string', - 'required' => false, - 'example' => 'anchashi', - ], + 'schema' => ['title' => '复制对ID。', 'description' => '复制对ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询异步复制对列表,获得复制对ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-xxxx'], ], [ 'name' => 'ClientToken', 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', + 'title' => 'StartPairDrillResponse', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'DrillId' => ['title' => '演练ID。', 'description' => '演练ID。', 'type' => 'string', 'example' => 'drill-xxx'], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', '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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.RecoverPointNotFound', 'errorMessage' => 'Recover point is not found.', 'description' => '当前复制对或复制组不存在可用的恢复点。'], + ['errorCode' => 'OperationDenied.StartDrillShouldOnDestRegion', 'errorMessage' => 'Operation should be executed on the secondary region.', 'description' => '当前操作应当在从端执行。'], + ], [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'app-xxx', + ['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 \\"DrillId\\": \\"drill-xxx\\",\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<StartPairDrillResponse>\\n <DrillId>drill-xxx</DrillId>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</StartPairDrillResponse>","errorExample":""}]', + 'title' => '对异步复制对的从盘启动容灾演练', + 'description' => '从盘容灾演练任务完成后,会在从盘所在可用区创建一块与从盘类型及大小相同的云盘,称之为演练盘,该云盘是按量付费模式,持有最近恢复点的数据,可用于验证应用的完整性和正确性。', + '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' => [ + 'summary' => '您可以通过演练切换功能确保复制流程持续运行,同时将从盘最近恢复点的数据克隆至一块新的云盘,定期验证容灾站点应用的完整性和正确性。', + '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' => '地域ID。', 'description' => '异步复制组的当前从端所属地域ID。您可以通过[DescribeDiskReplicaGroups](~~426614~~)接口查询异步复制组的当前从端地域。'."\n" + .'> 必须在当前从端所属地域下启用容灾演练功能。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => ['title' => '复制组ID。', 'description' => '复制组ID。您可以通过[DescribeDiskReplicaGroups](~~426614~~)接口查询异步复制组列表,获得复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'pg-xxxx'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'LensResponse', - 'description' => 'LensResponse', + 'title' => 'StartPairGroupDrillResponse', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '1F58EB6E-7B7A-5437-9612-F14D50822A61', - ], + 'DrillId' => ['title' => '演练ID。', 'description' => '演练ID。', 'type' => 'string', 'example' => 'pg-drill-xxxx'], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'OperationDenied.RecoverPointNotFound', 'errorMessage' => 'Recover point is not found.', 'description' => '当前复制对或复制组不存在可用的恢复点。'], + ['errorCode' => 'OperationDenied.StartDrillShouldOnDestRegion', 'errorMessage' => 'Operation should be executed on the secondary region.', 'description' => '当前操作应当在从端执行。'], ], [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', + ['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 \\"DrillId\\": \\"pg-drill-xxxx\\",\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<StartReplicaGroupDrillResponse>\\n <DrillId>pg-drill-xxxx</DrillId>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</StartReplicaGroupDrillResponse>","errorExample":""}]', + 'title' => '对异步复制组的从盘启动容灾演练', + 'description' => '从盘容灾演练任务完成后,会给每个复制对在从盘所在可用区创建一块与从盘类型及大小相同的云盘,称之为演练盘,该云盘是按量付费模式,持有最近恢复点的数据,可用于验证应用的完整性和正确性。', + '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}'], + ], ], ], - 429 => [ - [ - 'errorCode' => 'BLOCK.LimitedRequest', - 'errorMessage' => 'Request was denied due to user flow control.', + ], + ], + 'StopDiskReplicaGroup' => [ + 'summary' => '停止一致性复制组中复制对的异步复制功能。', + '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' => '一致性复制组所属的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], + ], + [ + 'name' => 'ReplicaGroupId', + 'in' => 'query', + 'schema' => ['description' => '一致性复制组ID。您可以调用[DescribeDiskReplicaGroups](~~426614~~)查询一致性复制组ID。', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], + ], ], ], + ], + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => '当前状态下该操作不允许执行。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', '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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => '该请求超时,请稍后再重试。'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1F58EB6E-7B7A-5437-9612-F14D50822A61\\"\\n}","type":"json"}]', - 'title' => '删除App', - ], - 'DescribeApps' => [ - 'summary' => '中心化角色:查询App信息', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"<StopDiskReplicaGroupResponse>\\n <RequestId>C123F94F-4E38-19AE-942A-A8D6F44F****</RequestId>\\n</StopDiskReplicaGroupResponse>","errorExample":""}]', + 'title' => '停止异步复制组', + 'description' => '## 接口说明'."\n" + ."\n" + .'- 一致性复制组功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + .'- 一致性复制组必须处于**单次同步中**(`manual_syncing`)、**同步中**(`syncing`)、**正常**(`normal`)、**停止中**(`stopping`)、**停止失败**(`stop_failed`)或者**已停止**(`stopped`)状态。'."\n" + .'- 异步复制停止后,一致性复制组将处于**已停止**(`stopped`)状态。如果停止失败,则一致性复制组的状态不会改变或者状态为**停止失败**(`stop_failed`),请稍后重试。', + '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' => [ + 'summary' => '为指定的异步复制关系停止异步复制功能。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '193441', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - 'FEATUREdiskLP80G7', - ], + 'operationType' => 'none', + 'abilityTreeCode' => '48742', + 'abilityTreeNodes' => ['FEATUREdiskVW208V'], ], 'parameters' => [ [ - 'name' => 'AppNames', + 'name' => 'RegionId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'title' => '要查询的App列表,空值则查询所有App信息', - 'description' => '要查询的App列表,空值则查询所有App信息', - 'type' => 'array', - 'items' => [ - 'description' => '应用名。', - 'type' => 'string', - 'required' => false, - 'example' => 'default', - ], - 'required' => false, - 'example' => 'App1,App2', - 'maxItems' => 100, - ], + 'schema' => ['description' => '异步复制关系中主盘或从盘所属的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'RegionId', + 'name' => 'ReplicaPairId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。您可以调用[DescribeRegions](~~354276~~)查询块存储数据洞察支持的地域列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => '异步复制关系的ID。', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****'], ], [ - 'name' => 'Owner', + 'name' => 'ClientToken', 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '用户Uid', - 'type' => 'string', - 'required' => false, - 'example' => '1485558146415628', + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => '请求ID。', 'type' => 'string', 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****'], + ], ], ], + ], + 'errorCodes' => [ + 403 => [ + ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => '当前状态下该操作不允许执行。'], + ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => '当前操作不允许执行。'], + ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => '当前用户无权限对当前资源执行任何操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => '当前用户无权限执行该操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ], [ - 'name' => 'ClientToken', + ['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\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","errorExample":""},{"type":"xml","example":"<StopDiskReplicaPairResponse>\\n <RequestId>A37597A6-BB99-19B3-85EA-4C2B91F0****</RequestId>\\n</StopDiskReplicaPairResponse>","errorExample":""}]', + 'title' => '停止云盘异步复制', + 'description' => '## 接口说明'."\n" + ."\n" + .'- 异步复制功能支持的地域请参见[云盘异步复制概述](~~314563~~)。'."\n" + .'- 只能停止处于**初始同步中**(`initial_syncing`)、**同步中**(`syncing`)、**单次同步中**(`manual_syncing`)或者**正常**(`normal`)状态的异步复制关系。异步复制停止后,将处于已停止(`stopped`)状态,此时从盘中数据将自动回滚到最近一次完成的异步复制后的数据(即最后一次正在进行中的异步复制对应的数据将丢失)。', + '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' => [ + 'summary' => '为指定的EBS资源统一绑定标签。', + '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' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', + 'title' => '资源ID,n的取值范围为 [1, 50]', + 'description' => '资源ID列表。', + 'type' => 'array', + 'items' => ['description' => '资源ID,最多50个。', 'type' => 'string', 'required' => false, 'example' => 'pair-cn-c4d2t7f****'], + 'required' => true, + 'example' => 'disk-123', + 'maxItems' => 51, ], ], [ - 'name' => 'AppIds', + 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '指定要操作的app编号,一个带有格式的 JSON 数组,最多支持 100 个 AppId,用半角逗号(,)隔开。', + 'title' => '标签键值对。n的取值范围为 [1, 20]', + 'description' => '标签列表,最多包含20个子项。', 'type' => 'array', 'items' => [ - 'description' => '指定要操作的app编号,一个带有格式的 JSON 数组,最多支持 100 个 AppId,用半角逗号(,)隔开。', - 'type' => 'string', + 'description' => '资源的标签集合。', + 'type' => 'object', + 'properties' => [ + 'Key' => ['title' => '资源的标签键', 'description' => '资源的标签键。N的取值范围:1~20。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => true, 'example' => 'tag-key'], + 'Value' => ['title' => '资源的标签值', 'description' => '资源的标签值。N的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => true, 'example' => 'tag-value'], + ], 'required' => false, - 'example' => 'app-25603551', ], - 'required' => false, - 'maxItems' => 100, + 'required' => true, + 'maxItems' => 21, ], ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => ['title' => '地域', 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['title' => '资源类型定义', 'description' => '资源类型定义。取值范围:'."\n" + ."\n" + .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" + .'- diskreplicapair:异步复制关系。'."\n" + .'- diskreplicagroup:一致性复制组。', 'type' => 'string', 'required' => true, 'example' => 'diskreplicagroup'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['title' => '客户端幂等token', 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。**ClientToken**只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribeAppsResponse', - 'description' => 'DescribeAppsResponse', + 'title' => 'TagResponse', + 'description' => 'TagResponse', 'type' => 'object', 'properties' => [ - 'AppInfos' => [ - 'title' => 'App信息。', - 'description' => 'App信息。', - 'type' => 'array', - 'items' => [ - 'description' => '应用的详细信息。', - 'type' => 'object', - 'properties' => [ - 'AppName' => [ - 'description' => '可选值,只在ReportType=present时AppName才会生效', - 'type' => 'string', - 'example' => 'app1', - ], - 'AppTags' => [ - 'title' => '用户自定义标签,多个标签用', - 'description' => '用户App所包含的标签', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'TagKey' => [ - 'description' => '标签键。', - 'type' => 'string', - 'example' => 'ebs', - ], - 'TagValue' => [ - 'description' => '标签值。', - 'type' => 'string', - 'example' => 'test', - ], - ], - ], - 'example' => 'default', - ], - 'SubscribeStatus' => [ - 'description' => '订阅状态。取值:'."\n" - .'- Subscribe:订阅'."\n" - .'- UnSubscribe:未订阅', - 'type' => 'string', - 'example' => 'Subscribe', - ], - 'SubscribePeriod' => [ - 'description' => '报告订阅周期。', - 'type' => 'string', - 'example' => 'Weekly', - ], - 'Description' => [ - 'description' => '事件描述。', - 'type' => 'string', - 'example' => '这个app用于统计云盘全网用量', - ], - 'ReportSendEnabled' => [ - 'description' => '是否发送报告标志位', - 'type' => 'boolean', - 'example' => 'true', - ], - 'SlsSendEnabled' => [ - 'description' => '是否投递Sls标志位', - 'type' => 'boolean', - ], - 'EventBridgeSendEnabled' => [ - 'description' => '是否投递EventBridge标志位', - 'type' => 'boolean', - ], - 'MonitorSendEnabled' => [ - 'description' => '是否投递Monitor标志位', - 'type' => 'boolean', - ], - 'ModifyTime' => [ - 'description' => '修改时间(UTC 时间)', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2025-11-14T02:11:32Z', - ], - 'Default' => [ - 'description' => '默认时区。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'app-bd5e3533', - ], - ], - ], - ], - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'A1C00637-AC84-5EFD-89B5-D5CE39F0F2B1', - ], - 'Code' => [ - 'description' => '内部错误码。', - 'type' => 'string', - 'example' => 'OK', - ], - 'UserCode' => [ - 'description' => '用户错误码', - 'type' => 'string', - 'example' => 'OK', - ], - 'Message' => [ - 'description' => '消息。', - 'type' => 'string', - 'example' => 'success', - ], - 'Success' => [ - 'description' => '请求成功与否标识。', - 'type' => 'boolean', - 'example' => 'True', - ], - 'HttpStatusCode' => [ - 'description' => 'HTTP状态码', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'DynamicCode' => [ - 'description' => '动态错误码', - 'type' => 'string', - 'example' => 'OK', - ], - 'DynamicMessage' => [ - 'description' => '动态错误信息,用于替换返回参数ErrMessage错误信息中的%s。', - 'type' => 'string', - 'example' => '-', - ], - 'AccessDeniedDetail' => [ - 'description' => '访问被拒绝的详细原因。', - 'type' => 'string', - 'example' => 'None', - ], + 'RequestId' => ['title' => '请求 ID。无论调用接口成功与否,我们都会返回请求 ID。', 'description' => '请求ID。', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 429 => [ - [ - 'errorCode' => 'BLOCK.LimitedRequest', - 'errorMessage' => 'Request was denied due to user flow control.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - '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\\": true,\\n \\"EventBridgeSendEnabled\\": true,\\n \\"MonitorSendEnabled\\": true,\\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"}]', - 'title' => '查询应用详情', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"<TagResourcesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>\\n</TagResourcesResponse>","errorExample":""}]', + 'title' => '绑定资源标签', 'description' => '## 接口说明'."\n" ."\n" - .'查询用户定义的App所包含的云盘和快照的标签键值,可通过filterTagKey缩小查询范围。', - ], - 'CreateApp' => [ - 'summary' => '中心化角色:创建App', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + .'绑定标签前,阿里云会校验资源已有标签数量。超过限制值后返回报错信息。更多详情,请参见[使用限制](~~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' => [ + 'summary' => '调用UnbindEnterpriseSnapshotPolicy为云盘解除企业级快照策略绑定。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '193444', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - 'FEATUREdiskLP80G7', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '159100', + 'abilityTreeNodes' => ['FEATUREdiskAAH44P'], ], 'parameters' => [ [ - 'name' => 'AppName', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => 'App名称', - 'description' => 'App名称', - 'type' => 'string', - 'required' => true, - 'example' => 'App1', - ], + 'schema' => ['title' => '地域ID', 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'AppTags', + 'name' => 'PolicyId', + 'in' => 'query', + 'schema' => ['title' => 'the id of the snapshot policy', 'description' => '要解除绑定的策略ID。', 'type' => 'string', 'required' => true, 'example' => 'esp-xxs'], + ], + [ + 'name' => 'DiskTargets', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'title' => '用户自定义标签,多个标签用', - 'description' => '用户自定义标签,多个标签用', + 'title' => 'the disk targets', + 'description' => '要解除绑定的云盘列表。', 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'TagKey' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'controlledBy', - ], - 'TagValue' => [ - 'description' => '专属集群的标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'ear', - ], - ], - 'required' => false, - ], - 'required' => true, - 'example' => 'default', - 'maxItems' => 100, + 'items' => ['description' => '磁盘ID。', 'type' => 'string', 'required' => false, 'example' => 'd-xxx'], + 'required' => false, + 'maxItems' => 10, ], ], [ - 'name' => 'SubscribeStatus', + 'name' => 'ClientToken', 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'title' => 'App使用报告订阅状态', - 'description' => 'App使用报告订阅状态,可选:'."\n" - .'- UnSubscribe'."\n" - .'- Subscribe', - 'type' => 'string', - 'required' => true, - 'example' => 'Subscribe', + 'title' => 'Response', + 'description' => '应答', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => '请求ID', 'description' => '请求ID', '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' => ''], + ], [ - 'name' => 'SubscribePeriod', + ['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":"<UnbindEnterpriseSnapshotPolicyResponse>\\n <RequestId>xxx</RequestId>\\n</UnbindEnterpriseSnapshotPolicyResponse>","errorExample":""}]', + 'title' => '解除企业级快照策略绑定', + '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' => [ + 'summary' => '为指定的EBS资源统一解绑标签。', + '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' => 'App使用报告发送间隔', - 'description' => 'App使用报告发送间隔,可选:'."\n" - .'- Weekly'."\n" - .'- Biweekly'."\n" - .'- Monthly。'."\n" - .'默认Weekly。', - 'type' => 'string', + 'title' => '资源ID,n的取值范围为 [1, 50]', + 'description' => '资源ID,最多包含50个子项。', + 'type' => 'array', + 'items' => ['description' => '资源ID,N的取值范围为1~50。', 'type' => 'string', 'required' => false, 'example' => 'pair-cn-c4d2t7f****'], 'required' => true, - 'example' => 'Weekly', + 'example' => 'disk-123', + 'maxItems' => 51, ], ], [ - 'name' => 'Description', + 'name' => 'TagKey', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => 'App简介', - 'description' => 'App简介', - 'type' => 'string', + 'title' => '标签键。n 的取值范围为 [1, 20]', + 'description' => '标签键。最多包含20个子项。', + 'type' => 'array', + 'items' => ['description' => '标签键。N的取值范围为1~20。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], 'required' => false, - 'example' => 'test', + 'example' => 'disk-123', + 'maxItems' => 21, ], ], [ - 'name' => 'ReportSendEnabled', + 'name' => 'All', 'in' => 'query', - 'schema' => [ - 'title' => '发送报告到邮箱和站内信', - 'description' => '发送报告到邮箱和站内信', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['title' => '是否全部删除,只针对TagKey.N为空时有效', 'description' => '是否解绑资源上全部的标签。当请求中未设置TagKey.N时,该参数才有效。取值范围:'."\n" + .'- true。'."\n" + .'- false。'."\n" + ."\n" + .'默认值:false。', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'description' => '地域ID。您可以调用[DescribeRegions](~~2680071~~)查看最新的阿里云地域列表。', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '地域', 'description' => '资源所属的地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'Owner', + 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'description' => '基线责任人的阿里云uid。', - 'type' => 'string', - 'required' => false, - 'example' => '1/0', - ], + 'schema' => ['title' => '资源类型定义', 'description' => '资源类型定义。取值范围:'."\n" + ."\n" + .'- dedicatedblockstoragecluster:专属块存储集群。'."\n" + .'- diskreplicapair:异步复制关系。'."\n" + .'- diskreplicagroup:一致性复制组。', 'type' => 'string', 'required' => true, 'example' => 'diskreplicapair'], ], [ 'name' => 'ClientToken', 'in' => 'query', - 'schema' => [ - 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'type' => 'string', - 'required' => false, - 'example' => '123e4567-e89b-12d3-a456-42665544****', - ], + 'schema' => ['title' => '客户端幂等token', 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。**ClientToken**只支持ASCII字符,且不能超过64个字符。更多详情,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'LensResponse', - 'description' => 'LensResponse', + 'title' => 'TagResponse', + 'description' => 'TagResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => 'E604ABBF-FD0F-5080-BE2B-BCF674A9E941', - ], - 'Code' => [ - 'description' => '状态码。返回200代表成功。', - 'type' => 'string', - 'example' => 'OK', - ], - 'UserCode' => [ - 'description' => '状态码。', - 'type' => 'string', - 'example' => 'OK', - ], - 'Message' => [ - 'description' => '附加信息。取值说明如下:请求正常,返回success。请求异常,返回具体异常错误码。', - 'type' => 'string', - 'example' => 'successful', - ], - 'Success' => [ - 'description' => '创建应用是否成功。取值说明如下:true:创建成功。false:创建失败。', - 'type' => 'boolean', - 'example' => 'True', - ], - 'HttpStatusCode' => [ - 'description' => '错误码描述', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'DynamicCode' => [ - 'description' => '动态错误码。', - 'type' => 'string', - 'example' => '200', - ], - 'DynamicMessage' => [ - 'description' => '动态消息,暂无使用,请忽略', - 'type' => 'string', - 'example' => '-', - ], - 'AccessDeniedDetail' => [ - 'description' => '访问被拒绝的详细原因。', - 'type' => 'string', - 'example' => 'None', - ], - 'AppId' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'example' => 'app-bd5e3533', - ], - 'AppName' => [ - 'description' => 'App名称。', - 'type' => 'string', - 'example' => 'TestApp_g5t', - ], + 'RequestId' => ['title' => '请求 ID。无论调用接口成功与否,我们都会返回请求 ID。', 'description' => '请求ID。', 'type' => 'string', 'example' => 'C46FF5A8-C5F0-4024-8262-B16B6392****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', - ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', - ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', - ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', - ], - [ - 'errorCode' => 'App.NumberExceed', - 'errorMessage' => 'The number of apps exceeded.', - ], + ['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.', - ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', - ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', - ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', - ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', - ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', - ], + ['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.', - ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', - ], - ], - 429 => [ - [ - 'errorCode' => 'BLOCK.LimitedRequest', - 'errorMessage' => 'Request was denied due to user flow control.', - ], + ['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.', - ], + ['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.', - ], + ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - '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"}]', - 'title' => '创建App', - ], - 'ModifyApp' => [ - 'summary' => '中心化角色:修改App', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C46FF5A8-C5F0-4024-8262-B16B6392****\\"\\n}","errorExample":""},{"type":"xml","example":"<UntagResourcesResponse>\\n <RequestId>C46FF5A8-C5F0-4024-8262-B16B6392****</RequestId>\\n</UntagResourcesResponse>","errorExample":""}]', + 'title' => '解绑资源标签', + 'description' => '## 接口说明'."\n" + ."\n" + .'- 每次解绑的标签数量不能超过20个。'."\n" + ."\n" + .'- 任一标签在解绑后,如果没有绑定任何实例,则该标签会被删除。', + 'changeSet' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ebs:UntagResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], ], + ], + 'UpdateEnterpriseSnapshotPolicy' => [ + 'summary' => '调用UpdateEnterpriseSnapshotPolicy修改企业级快照策略配置。', + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '193442', - 'abilityTreeNodes' => [ - 'FEATUREdisk2F270T', - 'FEATUREdiskLP80G7', - ], + 'abilityTreeCode' => '159103', + 'abilityTreeNodes' => ['FEATUREdisk1W6OYH'], ], 'parameters' => [ [ - 'name' => 'AppName', + 'name' => 'RegionId', 'in' => 'query', - 'allowEmptyValue' => true, - 'schema' => [ - 'title' => 'App名称', - 'description' => 'App名称', - 'type' => 'string', - 'required' => false, - 'example' => 'App1', - ], + 'schema' => ['title' => '地域ID', 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ - 'name' => 'AppTags', + 'name' => 'PolicyId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'title' => '用户自定义标签', - 'description' => '用户自定义标签', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'TagKey' => [ - 'description' => '标签键。', - 'type' => 'string', - 'required' => false, - 'example' => 'key', - ], - 'TagValue' => [ - 'description' => '标签值。', - 'type' => 'string', - 'required' => false, - 'example' => 'value', - ], - ], - 'required' => false, - ], - 'required' => true, - 'example' => 'default', - 'maxItems' => 100, - ], + 'schema' => ['title' => '策略ID', 'description' => '快照策略ID。', 'type' => 'string', 'required' => true, 'example' => 'esp-xxx'], ], [ - 'name' => 'SubscribeStatus', + 'name' => 'Name', + 'in' => 'query', + 'schema' => ['title' => '名称', 'description' => '要修改的策略ID。', 'type' => 'string', 'required' => false, 'example' => 'xxx'], + ], + [ + 'name' => 'State', 'in' => 'query', 'schema' => [ - 'title' => 'App使用报告订阅状态', - 'description' => 'App使用报告订阅状态,可选:'."\n" + 'title' => '状态', + 'description' => '快照策略状态。取值范围:'."\n" ."\n" - .'- UnSubscribe'."\n" - .'- Subscribe', + .'- ENABLED'."\n" + .'- DISABLED', 'type' => 'string', - 'required' => true, - 'example' => 'Subscribe', + 'required' => false, + 'enumValueTitles' => ['DISABLED' => 'DISABLED', 'ENABLED' => 'ENABLED'], + 'example' => 'ENABLED', ], ], [ - 'name' => 'SubscribePeriod', + 'name' => 'Desc', 'in' => 'query', - 'schema' => [ - 'title' => 'App使用报告发送间隔', - 'description' => 'App使用报告发送间隔,可选'."\n" - .'- Weekly'."\n" - .'- Biweekly'."\n" - .'- Monthly', - 'type' => 'string', - 'required' => true, - 'example' => 'Weekly', - ], + 'schema' => ['title' => '描述', 'description' => '快照策略描述信息。', 'type' => 'string', 'required' => false, 'example' => 'xxx'], ], [ - 'name' => 'Description', + 'name' => 'Schedule', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'title' => 'App简介', - 'description' => 'App简介', - 'type' => 'string', + 'title' => '调度规则', + 'description' => '调度规则。', + 'type' => 'object', + 'properties' => [ + 'CronExpression' => ['title' => 'cron tab 表达式', 'description' => '策略执行的周期和时间。使用cron表达式。'."\n" + ."\n" + .'例如:`0 0 4 1/1 * ?`表示从每月第一天上午4时开始,每天的上午4时执行快照操作。', 'type' => 'string', 'required' => true, 'example' => '0 0 */24 * * *'], + ], 'required' => false, - 'example' => 'This is description.', ], ], [ - 'name' => 'ReportSendEnabled', + 'name' => 'RetainRule', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'title' => '发送报告到邮箱和站内信', - 'description' => '发送报告到邮箱和站内信', - 'type' => 'boolean', + 'title' => '保留规则', + 'description' => '保留规则。', + 'type' => 'object', + 'properties' => [ + 'Number' => ['title' => '保留个数', 'description' => '个数。取值范围 [1, 256]。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], + 'TimeInterval' => ['title' => '保留时间值', 'description' => '保留规则的时间间隔,单位通过参数TimeUnit指定,取值范围大于 1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '14'], + 'TimeUnit' => [ + 'title' => '保留时间单位', + 'description' => '保留时间单位。取值范围:'."\n" + ."\n" + .'- DAYS'."\n" + .'- WEEKS', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['WEEKS' => 'WEEKS', 'DAYS' => 'DAYS'], + 'example' => 'DAYS', + ], + ], 'required' => false, - 'example' => 'true', ], ], [ - 'name' => 'RegionId', + 'name' => 'SpecialRetainRules', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', - 'type' => 'string', + 'title' => '特殊保留规则', + 'description' => '特殊保留规则。', + 'type' => 'object', + 'properties' => [ + 'Enabled' => [ + 'title' => '是否启用特殊保留时间', + 'description' => '是否启用特殊保留。取值范围:'."\n" + ."\n" + .'- true'."\n" + .'- false', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], + 'example' => 'false', + ], + 'Rules' => [ + 'title' => '特殊保留规则', + 'description' => '特殊保留规则列表,支持多个规则。', + 'type' => 'array', + 'items' => [ + 'description' => '特殊保留规则。', + 'type' => 'object', + 'properties' => [ + 'SpecialPeriodUnit' => [ + 'title' => '特殊周期单位', + 'description' => '特殊保留的快照的周期单位,如果配置成WEEKS,则为每周的第一个快照提供特殊保留,保留的时间由TimeUnit,TimeInterval决定。取值范围为:'."\n" + ."\n" + .'- WEEKS'."\n" + .'- MONTHS'."\n" + .'- YEARS', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['MONTHS' => 'MONTHS', 'YEARS' => 'YEARS', 'WEEKS' => 'WEEKS'], + 'example' => 'WEEKS', + ], + 'TimeInterval' => ['title' => '保留时间值', 'description' => '保留规则的时间间隔,单位通过参数TimeUnit指定,取值范围大于 1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30'], + 'TimeUnit' => [ + 'title' => '保留时间单位', + 'description' => '特殊快照的保留时间单位。取值范围:'."\n" + ."\n" + .'- DAYS'."\n" + .'- WEEKS', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['WEEKS' => 'WEEKS', 'DAYS' => 'DAYS'], + 'example' => 'DAYS', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], 'required' => false, - 'example' => 'cn-shanghai', ], ], [ - 'name' => 'Owner', + 'name' => 'CrossRegionCopyInfo', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => '责任人。', - 'type' => 'string', + 'title' => '快照复制目的信息', + 'description' => '快照复制目的信息。', + 'type' => 'object', + 'properties' => [ + 'Enabled' => [ + 'title' => '是否启用跨地域复制', + 'description' => '是否启用跨地域复制。取值范围:'."\n" + ."\n" + .'- true'."\n" + .'- false', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], + 'example' => 'false', + ], + 'Regions' => [ + 'title' => '目的地域信息', + 'description' => '目的地域信息。', + 'type' => 'array', + 'items' => [ + 'description' => '复制目的地域信息。', + 'type' => 'object', + 'properties' => [ + 'RegionId' => ['title' => '快照复制目的地', 'description' => '快照复制目的地域ID。您可以调用[DescribeDiskReplicaPairs](~~354206~~)查询存量异步复制关系的地域信息。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], + 'RetainDays' => ['title' => '目的地快照保留天数', 'description' => '目的地快照保留天数。取值范围大于1。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '7'], + ], + 'required' => false, + ], + 'required' => false, + ], + ], 'required' => false, - 'example' => 'dev789`', ], ], [ 'name' => 'ClientToken', 'in' => 'query', + 'schema' => ['description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + [ + 'name' => 'StorageRule', + 'in' => 'query', + 'style' => 'json', 'schema' => [ 'title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'description' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', - 'type' => 'string', + 'description' => '高级快照特性。', + 'type' => 'object', + 'properties' => [ + 'EnableImmediateAccess' => [ + 'title' => '是否启动快照极速可用', + 'description' => '是否启动快照极速可用。取值范围:'."\n" + ."\n" + .'- true'."\n" + .'- false', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], + 'example' => 'false', + ], + ], 'required' => false, - 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****', ], ], - [ - 'name' => 'AppId', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '应用ID。', - 'type' => 'string', - 'required' => false, - 'example' => 'app-xxx', + 'title' => 'Response', + 'description' => '应答', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID', 'type' => 'string', 'example' => 'FED145A8-7D5F-5C60-B054-4EB2899A5996'], + ], + ], + ], + ], + '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' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => '当前用户无权限创建SLR。'], + ['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\\": \\"FED145A8-7D5F-5C60-B054-4EB2899A5996\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateEnterpriseSnapshotPolicyResponse>\\n <RequestId>xxx</RequestId>\\n</UpdateEnterpriseSnapshotPolicyResponse>","errorExample":""}]', + 'gatewayOptions' => [ + 'gatewayProtocols' => [], + ], + 'title' => '修改企业级快照策略', + 'changeSet' => [ + ['createdAt' => '2024-10-08T07:16:34.000Z', 'description' => '响应参数发生变更'], + ], + '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' => [ + 'summary' => '更新解决方案实例属性。', + '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' => '地域ID。您可以调用[DescribeRegions](~~25609~~)查看最新的阿里云地域列表。', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], + ], + [ + 'name' => 'SolutionInstanceId', + 'in' => 'query', + 'schema' => ['title' => '解决方案示例id', 'description' => '解决方案实例ID。', 'type' => 'string', 'required' => true, 'example' => 'inst-***'], + ], + [ + 'name' => 'Name', + 'in' => 'query', + 'schema' => ['title' => '解决方案示例名称', 'description' => '解决方案实例名称。', 'type' => 'string', 'required' => false, 'example' => 'defaultName'], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['title' => '解决方案示例描述', 'description' => '解决方案实例描述。', 'type' => 'string', 'required' => false, 'example' => 'defaultDescription'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['title' => '服务端生成的一串字符串,作为客户端进行请求的一个标识。', 'description' => '保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见[如何保证幂等性](~~25693~~)。', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], + ], + ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'LensResponse', - 'description' => 'LensResponse', + 'title' => 'UpdateSlnInstanceAttributeResponse', + 'description' => 'UpdateSlnInstanceAttributeResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '请求ID。', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', - ], - 'Code' => [ - 'description' => '响应码。', - 'type' => 'string', - 'example' => 'OK', - ], - 'UserCode' => [ - 'description' => '用户码', - 'type' => 'string', - 'example' => 'OK', - ], - 'Message' => [ - 'description' => '返回信息。', - 'type' => 'string', - 'example' => 'successful', - ], - 'Success' => [ - 'description' => '请求是否成功,返回值如下:true:请求成功。 false:请求失败。', - 'type' => 'boolean', - 'example' => 'true', - ], - 'HttpStatusCode' => [ - 'description' => 'HTTP状态码。', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], - 'DynamicCode' => [ - 'description' => '错误代码', - 'type' => 'string', - 'example' => '200', - ], - 'DynamicMessage' => [ - 'description' => '动态消息,暂无使用,请忽略', - 'type' => 'string', - 'example' => '-', - ], - 'AccessDeniedDetail' => [ - 'description' => '访问被拒绝详细信息。', - 'type' => 'string', - 'example' => 'None', - ], + 'RequestId' => ['title' => '请求ID。', 'description' => '请求ID。', 'type' => 'string', 'example' => '20758A-585D-4A41-A9B2-28DA8F4F****'], ], ], ], ], 'errorCodes' => [ 400 => [ - [ - 'errorCode' => 'InvalidParameter', - 'errorMessage' => 'The parameter %s is invalid.', + ['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' => '更新解决方案实例属性', + '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}'], + ], ], - [ - 'errorCode' => 'InvalidParameter.Conflict', - 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', + ], + ], + ], + ], + 'endpoints' => [ + ['regionId' => 'cn-qingdao', 'regionName' => '华北1(青岛)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-qingdao.aliyuncs.com', 'endpoint' => 'ebs.cn-qingdao.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-qingdao.aliyuncs.com'], + ['regionId' => 'cn-beijing', 'regionName' => '华北2(北京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-beijing.aliyuncs.com', 'endpoint' => 'ebs.cn-beijing.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-beijing.aliyuncs.com'], + ['regionId' => 'cn-zhangjiakou', 'regionName' => '华北3(张家口)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-zhangjiakou.aliyuncs.com', 'endpoint' => 'ebs.cn-zhangjiakou.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-zhangjiakou.aliyuncs.com'], + ['regionId' => 'cn-zhengzhou-jva', 'regionName' => '郑州(联通合营)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '华北5(呼和浩特)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-huhehaote.aliyuncs.com', 'endpoint' => 'ebs.cn-huhehaote.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-huhehaote.aliyuncs.com'], + ['regionId' => 'cn-wulanchabu', 'regionName' => '华北6(乌兰察布)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-wulanchabu.aliyuncs.com', 'endpoint' => 'ebs.cn-wulanchabu.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-wulanchabu.aliyuncs.com'], + ['regionId' => 'cn-hangzhou', 'regionName' => '华东1(杭州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-hangzhou.aliyuncs.com', 'endpoint' => 'ebs.cn-hangzhou.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-hangzhou.aliyuncs.com'], + ['regionId' => 'cn-shanghai', 'regionName' => '华东2(上海)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-shanghai.aliyuncs.com', 'endpoint' => 'ebs.cn-shanghai.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-shanghai.aliyuncs.com'], + ['regionId' => 'cn-nanjing', 'regionName' => '华东5(南京-本地地域)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-nanjing.aliyuncs.com', 'endpoint' => 'ebs.cn-nanjing.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-nanjing.aliyuncs.com'], + ['regionId' => 'cn-fuzhou', 'regionName' => '华东6(福州-本地地域)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-fuzhou.aliyuncs.com', 'endpoint' => 'ebs.cn-fuzhou.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-fuzhou.aliyuncs.com'], + ['regionId' => 'cn-shenzhen', 'regionName' => '华南1(深圳)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-shenzhen.aliyuncs.com', 'endpoint' => 'ebs.cn-shenzhen.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-shenzhen.aliyuncs.com'], + ['regionId' => 'cn-heyuan', 'regionName' => '华南2(河源)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-heyuan.aliyuncs.com', 'endpoint' => 'ebs.cn-heyuan.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-heyuan.aliyuncs.com'], + ['regionId' => 'cn-guangzhou', 'regionName' => '华南3(广州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-guangzhou.aliyuncs.com', 'endpoint' => 'ebs.cn-guangzhou.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-guangzhou.aliyuncs.com'], + ['regionId' => 'cn-chengdu', 'regionName' => '西南1(成都)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-chengdu.aliyuncs.com', 'endpoint' => 'ebs.cn-chengdu.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-chengdu.aliyuncs.com'], + ['regionId' => 'cn-wuhan-lr', 'regionName' => '华中1(武汉-本地地域)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '中国香港', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'ebs.cn-hongkong.aliyuncs.com', 'endpoint' => 'ebs.cn-hongkong.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-hongkong.aliyuncs.com'], + ['regionId' => 'ap-northeast-1', 'regionName' => '日本(东京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '韩国(首尔)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '新加坡', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '澳大利亚(悉尼)已关停', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '马来西亚(吉隆坡)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '印度尼西亚(雅加达)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '菲律宾(马尼拉)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '泰国(曼谷)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', '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' => '美国(弗吉尼亚)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', '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' => '美国(硅谷)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', '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' => '英国(伦敦)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', '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' => '德国(法兰克福)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', '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' => '墨西哥', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'ebs.na-south-1.aliyuncs.com', 'endpoint' => 'ebs.na-south-1.aliyuncs.com', 'vpc' => ''], + ['regionId' => 'us-southeast-1', 'regionName' => '美国(亚特兰大)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'ebs.us-southeast-1.aliyuncs.com', 'endpoint' => 'ebs.us-southeast-1.aliyuncs.com', 'vpc' => ''], + ['regionId' => 'me-east-1', 'regionName' => '阿联酋(迪拜)', 'areaId' => 'middleEast', 'areaName' => '中东', 'public' => 'ebs.me-east-1.aliyuncs.com', 'endpoint' => 'ebs.me-east-1.aliyuncs.com', 'vpc' => ''], + ['regionId' => 'me-central-1', 'regionName' => '沙特(利雅得)', 'areaId' => 'middleEast', 'areaName' => '中东', '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' => '华东1 金融云', 'areaId' => 'industryCloud', 'areaName' => '行业云', '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' => '华东2 金融云', 'areaId' => 'industryCloud', 'areaName' => '行业云', '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' => '华南1 金融云', 'areaId' => 'industryCloud', 'areaName' => '行业云', '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' => '华北2 金融云(邀测)', 'areaId' => 'industryCloud', 'areaName' => '行业云', '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' => '无集团上云商品标签,不允许集团内部用户购买。'], + ['code' => 'App.NumberExceed', 'message' => 'The number of apps exceeded.', 'http_code' => 400, 'description' => 'app数量超过限制'], + ['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' => '指定磁盘为挂载状态'], + ['code' => 'DocumentConvertFailed.ExceedFileSizeLimit', 'message' => 'The conversion has been failed, exceed file size limit.', 'http_code' => 400, 'description' => '文档转换失败,文件大小超过系统限额。'], + ['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' => '当前用户无权限对当前资源执行任何操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ['code' => 'Forbidden.Action', 'message' => 'User is not authorized to operate this action.', 'http_code' => 403, 'description' => '当前用户无权限执行该操作。请检查您的账号权限或者咨询您的主账号管理员。'], + ['code' => 'IdempotentParameterMismatch', 'message' => 'The specified parameter has changed while using an already used clientToken.', 'http_code' => 400, 'description' => '如果您提供了一个已经使用过的ClientToken,但其他请求参数有变化。'], + ['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' => '内部错误。'], + ['code' => 'InternalInvokeError', 'message' => 'The internal invoking has failed.', 'http_code' => 400, 'description' => '服务不可用,请过一段时间后再重试'], + ['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' => '当前操作不支持您指定的磁盘类型。请检查您的输入参数和API文档。'], + ['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' => '无效的指标名。'], + ['code' => 'InvalidParameter', 'message' => 'The parameter %s is invalid.', 'http_code' => 400, 'description' => '参数错误'], + ['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' => '参数 EndTime 早于 StartTime。'], + ['code' => 'InvalidParameter.Format', 'message' => 'Specified parameter format is not valid.', 'http_code' => 400, 'description' => '返回值格式不正确(Format 不支持)。返回格式支持 XML 与 JSON,默认为 XML。'], + ['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' => '查询过多数据。'], + ['code' => 'InvalidPayMethod', 'message' => 'The specified pay method is not valid.', 'http_code' => 403, 'description' => '不支持该购买方式。请检查您传入的参数chargeType是否正确。'], + ['code' => 'InvalidPeriod.ValueNotSupported', 'message' => 'The specified parameter Period is not valid', 'http_code' => 400, 'description' => '参数Period不合法。'], + ['code' => 'InvalidPeriod.ValueNotSupported', 'message' => 'The specified parameter "Period" is not valid.', 'http_code' => 400, 'description' => '"Period"字段无效。'], + ['code' => 'InvalidRegionId.NotFound', 'message' => 'The specified RegionId does not exist.', 'http_code' => 404, 'description' => '指定的RegionId不存在。'], + ['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' => '指定的资源不存在,请检查参数ResourceId是否正确。'], + ['code' => 'InvalidResourceId.NotFound', 'message' => 'The specified ResourceIds are not found in our records.', 'http_code' => 404, 'description' => '指定的资源不存在,请检查参数ResourceId是否正确。'], + ['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' => '参数StartTime或EndTime不合法。'], + ['code' => 'InvalidTime.Malformed', 'message' => 'The specified parameter "StartTime" or "EndTime" is not valid.', 'http_code' => 400, 'description' => '"StartTime"或“EndTime”参数字段格式错误。'], + ['code' => 'InvalidZoneId.NotFound', 'message' => 'The specified ZoneId does not exist.', 'http_code' => 404, 'description' => '指定的ZoneId不存在。'], + ['code' => 'INVALID_COMPONENT', 'message' => 'The order configuration parameters do not meet the validation criteria. Please reselect the parameters.', 'http_code' => 403, 'description' => '订单配置参数不符合校验条件,请重新选配商品!'], + ['code' => 'LastTokenProcessing', 'message' => 'The last token request is processing.', 'http_code' => 403, 'description' => '相同clientToken的请求正在执行,请稍后再重试。'], + ['code' => 'MissingParameter', 'message' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'http_code' => 400, 'description' => '参数缺失。'], + ['code' => 'MissingParameter.ResourceGroup', 'message' => 'The parameter - Resource Group should not be null', 'http_code' => 404, 'description' => '参数ResourceGroup不能为空。'], + ['code' => 'MissingParameter.ResourceIdsOrTags', 'message' => 'You must specify ResourceId.N or Tags', 'http_code' => 404, 'description' => '参数ResourceId.N和Tags不得同时为空,您必须至少指定参数ResourceId.N或Tags中的一个。'], + ['code' => 'MissingParameter.ResourceType', 'message' => 'The parameter - ResourceType should not be null', 'http_code' => 404, 'description' => '参数ResourceType不能为空。'], + ['code' => 'NoPermission.SLR', 'message' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'http_code' => 403, 'description' => '当前用户无权限创建SLR。'], + ['code' => 'NoSuchResource', 'message' => 'The specified resource does not exist.', 'http_code' => 404, 'description' => '指定的资源不存在。'], + ['code' => 'NoSuchResource.Disk', 'message' => 'The specified disk does not exist.', 'http_code' => 404, 'description' => '磁盘不存在。'], + ['code' => 'NoSuchResource.Pair', 'message' => 'The specified replica pair does not exist.', 'http_code' => 404, 'description' => '复制对不存在。'], + ['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' => '当前Region停售或无库存。'], + ['code' => 'NotOnSale.Zone', 'message' => 'The specified zone is not on sale.', 'http_code' => 403, 'description' => '当前Zone停售或无库存。'], + ['code' => 'NumberExceed.ResourceIds', 'message' => 'The ResourceIds parameter number is exceed , Valid : 50', 'http_code' => 400, 'description' => '参数“ResourceIds”中包含的“ResourceId”不能超过 50 个。'], + ['code' => 'NumberExceed.Tags', 'message' => 'NumberExceed.Tags', 'http_code' => 400, 'description' => '标签个数超过最大限制,本操作最多可以操作 20 个标签。'], + ['code' => 'OperationDenied', 'message' => 'The operation is not allowed.', 'http_code' => 403, 'description' => '当前操作不允许执行。'], + ['code' => 'OperationDenied.GroupHasPair', 'message' => 'The group cannot be deleted due to not empty.', 'http_code' => 403, 'description' => '当前一致性组中包含有复制对,不能被删除。'], + ['code' => 'OperationDenied.GroupStatusCannotAddPair', 'message' => 'The pair cannot be added in group current status.', 'http_code' => 403, 'description' => '一致性组的当前状态不允许复制对加入。'], + ['code' => 'OperationDenied.GroupStatusCannotRemovePair', 'message' => 'The pair cannot be removed in group current status.', 'http_code' => 403, 'description' => '一致性组的当前状态不允许复制对移除。'], + ['code' => 'OperationDenied.GroupTotalDiskCapacityLimit', 'message' => 'The disk space in the replication pair-consistent group exceeds the upper limit.', 'http_code' => 403, 'description' => '复制组中的云盘总容量过大。'], + ['code' => 'OperationDenied.InvalidStatus', 'message' => 'The operation is not allowed in current status.', 'http_code' => 403, 'description' => '当前状态下该操作不允许执行。'], + ['code' => 'OperationDenied.ManualSyncLimit', 'message' => 'One shot start manual syncing too frequently, please try again later.', 'http_code' => 403, 'description' => '手动同步冷却时间未满足。'], + ['code' => 'OperationDenied.NoPairInGroup', 'message' => 'The operation is not allowed because no pair in the group.', 'http_code' => 403, 'description' => '当前操作不允许执行,因为指定的一致性组中没有复制对。'], + ['code' => 'OperationDenied.OperateNotAllowedForPrimary', 'message' => 'Operation is not allowed on the primary site.', 'http_code' => 403, 'description' => '当前操作在主端不被允许。'], + ['code' => 'OperationDenied.OperateNotAllowedForStandby', 'message' => 'Operation is not allowed on the secondary site.', 'http_code' => 403, 'description' => '当前操作在从端不被允许。'], + ['code' => 'OperationDenied.PairGroupAZoneConflict', 'message' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'http_code' => 403, 'description' => '当前操作不允许执行,因为复制对和一致性组所属的RegionId和ZoneId不一致。'], + ['code' => 'OperationDenied.PairGroupStatusConflict', 'message' => 'The operation is not allowed due to pair and group status are not consistent.', 'http_code' => 403, 'description' => '当前操作不允许执行,因为复制对和一致性组的状态不一致。'], + ['code' => 'OperationDenied.PairInAnotherGroup', 'message' => 'The operation is not allowed because pair is already in another group.', 'http_code' => 403, 'description' => '当前操作不允许执行,因为复制对已被加入另一个一致性组中。'], + ['code' => 'OperationDenied.PairInitializing', 'message' => 'The operation is not allowed due to pair initializing, please try again later.', 'http_code' => 403, 'description' => '当前操作不允许执行,因为复制对仍在初始化中,请稍后再重试。'], + ['code' => 'OperationDenied.PairNotInGroup', 'message' => 'The operation is not allowed because pair is not in any group.', 'http_code' => 403, 'description' => '当前操作不允许执行,因为指定的异步复制对未加入任何一致性组中。'], + ['code' => 'OperationDenied.PairsExceedInGroup', 'message' => 'The operation is not allowed due to too much pair in the group.', 'http_code' => 403, 'description' => '当前操作不允许执行,因为已超过一致性组可支持的最大复制对数量。'], + ['code' => 'OperationDenied.PairStatusCannotAddToGroup', 'message' => 'The pair cannot be added in pair current status.', 'http_code' => 403, 'description' => '复制对的当前状态不允许复制对加入到一致性组中。'], + ['code' => 'OperationDenied.PairStatusCannotRemoveFromGroup', 'message' => 'The pair cannot be removed in pair current status.', 'http_code' => 403, 'description' => '复制对的当前状态不允许复制对从一致性组中移除。'], + ['code' => 'OperationDenied.QuotaExceed', 'message' => 'The operation is not allowed due to quota exceed.', 'http_code' => 403, 'description' => '当前操作已超过使用配额。'], + ['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' => '您的请求超过了配额上限。'], + ['code' => 'OperationDenied.RecoverPointNotFound', 'message' => 'Recover point is not found.', 'http_code' => 403, 'description' => '当前复制对或复制组不存在可用的恢复点。'], + ['code' => 'OperationDenied.StandbyDeviceAttached', 'message' => 'The secondary disk is attached.', 'http_code' => 400, 'description' => '从盘已挂载,请关闭从端虚拟机或卸载云盘。'], + ['code' => 'OperationDenied.StartDrillShouldOnDestRegion', 'message' => 'Operation should be executed on the secondary region.', 'http_code' => 403, 'description' => '当前操作应当在从端执行。'], + ['code' => 'OperationDenied.TooMuchEmptyGroup', 'message' => 'Operation failed because of too many empty groups.', 'http_code' => 403, 'description' => '同一用户创建了过多的空复制组。'], + ['code' => 'RequestTimeout', 'message' => 'The request is timeout, please try again later.', 'http_code' => 504, 'description' => '该请求超时,请稍后再重试。'], + ['code' => 'AssumeRoleFail.solution', 'message' => 'Assume role fail, please check RamRole for EBS Laboratory already exist and policy is correct.', 'http_code' => 403, 'description' => '角色扮演失败,请检查EBS实验室所需要的RAM角色是否存在且关联的权限策略正确。'], + ], + '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' => '块存储'], + ], + 'ram' => [ + 'productCode' => 'EBS', + 'productName' => '块存储', + 'ramCodes' => ['ebs'], + 'ramLevel' => '资源级', + '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}'], ], - [ - 'errorCode' => 'InvalidParameter.Format', - 'errorMessage' => 'Specified parameter format is not valid.', + ], + ], + [ + '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}'], ], - [ - 'errorCode' => 'MissingParameter', - 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', + ], + ], + [ + '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}'], ], ], - 403 => [ - [ - 'errorCode' => 'Forbidden', - 'errorMessage' => 'User is not authorized to operate.', + ], + [ + 'apiName' => 'DescribeLensServiceStatus', + 'description' => '查询数据洞察服务状态', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ebs:DescribeLensServiceStatus', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], ], - [ - 'errorCode' => 'Forbidden.Action', - 'errorMessage' => 'User is not authorized to operate this action.', + ], + ], + [ + '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}'], ], - [ - 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance', - 'errorMessage' => 'Your account does not have enough balance.', + ], + ], + [ + '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/*'], ], - [ - 'errorCode' => 'LastTokenProcessing', - 'errorMessage' => 'The last token request is processing.', + ], + ], + [ + '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/*'], ], - [ - 'errorCode' => 'NoPermission.SLR', - 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', + ], + ], + [ + '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}'], ], - [ - 'errorCode' => 'OperationDenied', - 'errorMessage' => 'The operation is not allowed.', + ], + ], + [ + 'apiName' => 'DescribeSolutionInstanceConfiguration', + 'description' => '查询解决方案默认配置', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ebs:DescribeSolutionInstanceConfiguration', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], ], ], - [ - [ - 'errorCode' => 'InvalidApi.NotFound', - 'errorMessage' => 'Specified api is not found, please check your url and method.', + ], + [ + '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}'], ], - [ - 'errorCode' => 'NoSuchResource', - 'errorMessage' => 'The specified resource does not exist.', + ], + ], + [ + 'apiName' => 'StartDiskReplicaGroup', + 'description' => 'StartDiskReplicaGroup', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:StartDiskReplicaGroup', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], - 429 => [ - [ - 'errorCode' => 'BLOCK.LimitedRequest', - 'errorMessage' => 'Request was denied due to user flow control.', + ], + [ + 'apiName' => 'StartDiskReplicaPair', + 'description' => 'StartDiskReplicaPair', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:StartDiskReplicaPair', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], - 500 => [ - [ - 'errorCode' => 'InternalError', - 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', + ], + [ + '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}'], ], ], - 504 => [ - [ - 'errorCode' => 'RequestTimeout', - 'errorMessage' => 'The request is timeout, please try again later.', + ], + [ + 'apiName' => 'DescribePairDrills', + 'description' => 'DescribePairDrills', + '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' => '全部资源', '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' => 'FailoverDiskReplicaPair', + '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' => '全部资源', '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' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeReplicaGroupDrills', + 'description' => 'DescribeReplicaGroupDrills', + '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' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ReprotectDiskReplicaPair', + 'description' => 'ReprotectDiskReplicaPair', + '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' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DeleteApp', + 'description' => '删除App', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'ebs:DeleteApp', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', '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' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeMetricData', + 'description' => '查询监控指标', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:DescribeMetricData', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ListReports', + 'description' => '查询用户使用报告列表', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:ListReports', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', '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' => '全部资源', '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' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeRegions', + 'description' => '查询地域信息', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ebs:DescribeRegions', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ListTagResources', + 'description' => '查询资源标签', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:ListTagResources', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'CreateDiagnoseReport', + 'description' => '创建资源诊断报告', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ebs:CreateDiagnoseReport', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', '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' => '创建App', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'ebs:CreateApp', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', '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' => 'StartReplicaGroupDrill', + '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' => '全部资源', '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' => '查询云盘监控(API下线中)', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'ebs:DescribeDiskMonitorData', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'DescribeDiagnoseReport', + 'description' => '查询资源诊断报告', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'ebs:DescribeDiagnoseReport', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'StartPairDrill', + 'description' => 'StartPairDrill', + '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' => '修改App', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:ModifyApp', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'CancelLensService', + 'description' => '取消数据洞察服务', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:CancelLensService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', 'arn' => '*'], + ], + ], + ], + [ + 'apiName' => 'ClearPairDrill', + 'description' => 'ClearPairDrill', + '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' => 'ClearReplicaGroupDrill', + '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' => '设置专属块存储集群AutoPL云盘吞吐上限', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'ebs:SetDedicatedBlockStorageClusterDiskThroughput', + 'authLevel' => 'resource', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => '全部资源', '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"}]', - 'title' => '修改App', - ], - ], - 'endpoints' => [ - [ - 'regionId' => 'cn-qingdao', - 'endpoint' => 'ebs.cn-qingdao.aliyuncs.com', - ], - [ - 'regionId' => 'cn-beijing', - 'endpoint' => 'ebs.cn-beijing.aliyuncs.com', - ], - [ - 'regionId' => 'cn-zhangjiakou', - 'endpoint' => 'ebs.cn-zhangjiakou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-zhengzhou-jva', - 'endpoint' => 'ebs.cn-zhengzhou-jva.aliyuncs.com', - ], - [ - 'regionId' => 'cn-huhehaote', - 'endpoint' => 'ebs.cn-huhehaote.aliyuncs.com', - ], - [ - 'regionId' => 'cn-wulanchabu', - 'endpoint' => 'ebs.cn-wulanchabu.aliyuncs.com', - ], - [ - 'regionId' => 'cn-hangzhou', - 'endpoint' => 'ebs.cn-hangzhou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shanghai', - 'endpoint' => 'ebs.cn-shanghai.aliyuncs.com', - ], - [ - 'regionId' => 'cn-nanjing', - 'endpoint' => 'ebs.cn-nanjing.aliyuncs.com', - ], - [ - 'regionId' => 'cn-fuzhou', - 'endpoint' => 'ebs.cn-fuzhou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shenzhen', - 'endpoint' => 'ebs.cn-shenzhen.aliyuncs.com', - ], - [ - 'regionId' => 'cn-heyuan', - 'endpoint' => 'ebs.cn-heyuan.aliyuncs.com', - ], - [ - 'regionId' => 'cn-guangzhou', - 'endpoint' => 'ebs.cn-guangzhou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-chengdu', - 'endpoint' => 'ebs.cn-chengdu.aliyuncs.com', - ], - [ - 'regionId' => 'cn-wuhan-lr', - 'endpoint' => 'ebs.cn-wuhan-lr.aliyuncs.com', - ], - [ - 'regionId' => 'cn-hongkong', - 'endpoint' => 'ebs.cn-hongkong.aliyuncs.com', - ], - [ - 'regionId' => 'ap-northeast-1', - 'endpoint' => 'ebs.ap-northeast-1.aliyuncs.com', - ], - [ - 'regionId' => 'ap-northeast-2', - 'endpoint' => 'ebs.ap-northeast-2.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-1', - 'endpoint' => 'ebs.ap-southeast-1.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-2', - 'endpoint' => 'ebs.ap-southeast-2.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-3', - 'endpoint' => 'ebs.ap-southeast-3.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-5', - 'endpoint' => 'ebs.ap-southeast-5.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-6', - 'endpoint' => 'ebs.ap-southeast-6.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-7', - 'endpoint' => 'ebs.ap-southeast-7.aliyuncs.com', - ], - [ - 'regionId' => 'us-southeast-1', - 'endpoint' => 'ebs.us-southeast-1.aliyuncs.com', - ], - [ - 'regionId' => 'na-south-1', - 'endpoint' => 'ebs.na-south-1.aliyuncs.com', - ], - [ - 'regionId' => 'eu-central-1', - 'endpoint' => 'ebs.eu-central-1.aliyuncs.com', - ], - [ - 'regionId' => 'eu-west-1', - 'endpoint' => 'ebs.eu-west-1.aliyuncs.com', - ], - [ - 'regionId' => 'us-west-1', - 'endpoint' => 'ebs.us-west-1.aliyuncs.com', - ], - [ - 'regionId' => 'us-east-1', - 'endpoint' => 'ebs.us-east-1.aliyuncs.com', - ], - [ - 'regionId' => 'me-central-1', - 'endpoint' => 'ebs.me-central-1.aliyuncs.com', - ], - [ - 'regionId' => 'me-east-1', - 'endpoint' => 'ebs.me-east-1.aliyuncs.com', - ], - [ - 'regionId' => 'cn-beijing-finance-1', - 'endpoint' => 'ebs.cn-beijing-finance-1.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shenzhen-finance-1', - 'endpoint' => 'ebs.cn-shenzhen-finance-1.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shanghai-finance-1', - 'endpoint' => 'ebs.cn-shanghai-finance-1.aliyuncs.com', ], - [ - 'regionId' => 'cn-hangzhou-finance', - 'endpoint' => 'ebs.cn-hangzhou-finance.aliyuncs.com', + '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/*'], ], ], ]; |
