summaryrefslogtreecommitdiff
path: root/data/zh_cn/expressconnectrouter/2023-09-01
diff options
context:
space:
mode:
authorZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
committerZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
commit1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 (patch)
tree5f0857666365b7e40cdaa3733ebe1f3ba9e13c67 /data/zh_cn/expressconnectrouter/2023-09-01
parent7347bac4ab7e136157fc94777e6cf87ef9e08599 (diff)
downloadafterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.tar.gz
afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.zip
update APIs 20260712
Diffstat (limited to 'data/zh_cn/expressconnectrouter/2023-09-01')
-rw-r--r--data/zh_cn/expressconnectrouter/2023-09-01/api-docs.php10762
1 files changed, 4028 insertions, 6734 deletions
diff --git a/data/zh_cn/expressconnectrouter/2023-09-01/api-docs.php b/data/zh_cn/expressconnectrouter/2023-09-01/api-docs.php
index a5708b3..5f74bc7 100644
--- a/data/zh_cn/expressconnectrouter/2023-09-01/api-docs.php
+++ b/data/zh_cn/expressconnectrouter/2023-09-01/api-docs.php
@@ -1,546 +1,302 @@
<?php return [
'version' => '1.0',
- 'info' => [
- 'style' => 'RPC',
- 'product' => 'ExpressConnectRouter',
- 'version' => '2023-09-01',
- ],
+ 'info' => ['style' => 'RPC', 'product' => 'ExpressConnectRouter', 'version' => '2023-09-01'],
'directories' => [
[
- 'id' => 249196,
- 'title' => '地域',
+ 'children' => ['DescribeExpressConnectRouterRegion', 'ListExpressConnectRouterSupportedRegion', 'SynchronizeExpressConnectRouterInterRegionBandwidth', 'CheckAddRegionToExpressConnectRouter'],
'type' => 'directory',
- 'children' => [
- 'DescribeExpressConnectRouterRegion',
- 'ListExpressConnectRouterSupportedRegion',
- 'SynchronizeExpressConnectRouterInterRegionBandwidth',
- 'CheckAddRegionToExpressConnectRouter',
- ],
+ 'title' => '地域',
+ 'id' => 49099,
],
[
- 'id' => 249201,
- 'title' => '子实例管理',
+ 'children' => ['ModifyExpressConnectRouterChildInstance', 'ModifyExpressConnectRouterAssociation', 'AttachExpressConnectRouterChildInstance', 'DetachExpressConnectRouterChildInstance', 'DescribeExpressConnectRouterChildInstance', 'DescribeInstanceGrantedToExpressConnectRouter', 'RevokeInstanceFromExpressConnectRouter', 'GrantInstanceToExpressConnectRouter'],
'type' => 'directory',
- 'children' => [
- 'ModifyExpressConnectRouterChildInstance',
- 'ModifyExpressConnectRouterAssociation',
- 'AttachExpressConnectRouterChildInstance',
- 'DetachExpressConnectRouterChildInstance',
- 'DescribeExpressConnectRouterChildInstance',
- 'DescribeInstanceGrantedToExpressConnectRouter',
- 'RevokeInstanceFromExpressConnectRouter',
- 'GrantInstanceToExpressConnectRouter',
- ],
+ 'title' => '子实例管理',
+ 'id' => 49104,
],
[
- 'id' => 249210,
- 'title' => '资源关联关系',
+ 'children' => ['CreateExpressConnectRouterAssociation', 'DeleteExpressConnectRouterAssociation', 'DescribeExpressConnectRouterAssociation'],
'type' => 'directory',
- 'children' => [
- 'CreateExpressConnectRouterAssociation',
- 'DeleteExpressConnectRouterAssociation',
- 'DescribeExpressConnectRouterAssociation',
- ],
+ 'title' => '资源关联关系',
+ 'id' => 49111,
],
[
- 'id' => 249214,
- 'title' => '专线网关路由项',
+ 'children' => ['DisableExpressConnectRouterRouteEntries', 'EnableExpressConnectRouterRouteEntries', 'DescribeDisabledExpressConnectRouterRouteEntries', 'DescribeExpressConnectRouterRouteEntries'],
'type' => 'directory',
- 'children' => [
- 'DisableExpressConnectRouterRouteEntries',
- 'EnableExpressConnectRouterRouteEntries',
- 'DescribeDisabledExpressConnectRouterRouteEntries',
- 'DescribeExpressConnectRouterRouteEntries',
- ],
+ 'title' => '专线网关路由项',
+ 'id' => 49115,
],
[
- 'id' => 249219,
- 'title' => '标签及资源组',
+ 'children' => ['CreateExpressConnectRouter', 'DeleteExpressConnectRouter', 'ModifyExpressConnectRouterInterRegionTransitMode', 'ModifyExpressConnectRouterAssociationAllowedPrefix', 'ModifyExpressConnectRouter', 'DescribeExpressConnectRouterInterRegionTransitMode', 'DescribeExpressConnectRouterAllowedPrefixHistory', 'DescribeExpressConnectRouter', 'ForceDeleteExpressConnectRouter'],
'type' => 'directory',
- 'children' => [
- 'MoveResourceGroup',
- 'ListTagResources',
- 'UntagResources',
- ],
+ 'title' => '专线网关(ECR)',
+ 'id' => 49124,
],
[
- 'id' => 249223,
- 'title' => '专线网关(ECR)',
+ 'children' => ['CreateFlowLog', 'DeactivateFlowLog', 'DeleteFlowlog', 'DescribeFlowLogs', 'ActivateFlowLog', 'ModifyFlowLogAttribute'],
'type' => 'directory',
- 'children' => [
- 'CreateExpressConnectRouter',
- 'DeleteExpressConnectRouter',
- 'ModifyExpressConnectRouterInterRegionTransitMode',
- 'ModifyExpressConnectRouterAssociationAllowedPrefix',
- 'ModifyExpressConnectRouter',
- 'DescribeExpressConnectRouterInterRegionTransitMode',
- 'DescribeExpressConnectRouterAllowedPrefixHistory',
- 'DescribeExpressConnectRouter',
- 'ForceDeleteExpressConnectRouter',
- ],
+ 'title' => '流日志',
+ 'id' => 49091,
],
[
- 'id' => 249233,
- 'title' => '流日志',
+ 'children' => ['TagResources', 'UntagResources', 'ListTagResources', 'MoveResourceGroup'],
'type' => 'directory',
- 'children' => [
- 'CreateFlowLog',
- 'DeleteFlowlog',
- 'ModifyFlowLogAttribute',
- 'DescribeFlowLogs',
- 'DeactivateFlowLog',
- 'ActivateFlowLog',
- 'TagResources',
- ],
+ 'title' => '标签及资源组',
+ 'id' => 459434,
],
],
'components' => [
'schemas' => [],
],
'apis' => [
- 'DescribeExpressConnectRouterRegion' => [
- 'summary' => '查询专线网关ECR(Express Connect Router)相关资源的所在地域列表。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'ActivateFlowLog' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199494',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeCode' => '254020',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectH4NOM0'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '要查询的专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-fu8rszhgv7623c****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId可能不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
+ ],
+ [
+ 'name' => 'FlowLogId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '流日志实例ID。', 'type' => 'string', 'required' => true, 'example' => 'flowlog-m5evbtbpt****'."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DescribeEcrRegionResponse>',
- 'description' => 'RpcResponse<DescribeEcrRegionResponse>',
+ 'title' => 'RpcResponse<CreateAssociationResponse>',
+ 'description' => 'RpcResponse<CreateAssociationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage **返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage **返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
- 'RegionIdList' => [
- 'description' => '存在子资源的地域列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => '存在子资源的地域。',
- 'type' => 'string',
- 'example' => '[\\"cn-shanghai\\"]',
- ],
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '05130E79-588D-5C40-A718-C4863A59****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
],
- 404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '启用流日志',
+ 'summary' => '流日志开启日志投递。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ActivateFlowLog'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ActivateFlowLog',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"RegionIdList\\": [\\n \\"[\\\\\\\\\\\\\\"cn-shanghai\\\\\\\\\\\\\\"]\\"\\n ]\\n}","type":"json"}]',
- 'title' => '查询专线网关(ECR)相关资源的所在地域列表',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
],
- 'ListExpressConnectRouterSupportedRegion' => [
- 'summary' => '查询专线网关ECR(Express Connect Router)开服地域列表。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'AttachExpressConnectRouterChildInstance' => [
+ 'summary' => '加载子实例(VBR)至ECR。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '213773',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeCode' => '197608',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectNHSYB7'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'NodeType',
+ 'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的类型。取值:'."\n"
- .'- **TR**:转发路由器实例。'."\n"
- .'- **VBR**:边界路由器实例。'."\n"
- .'- **VPC**:虚拟专有网络实例。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'VBR',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-a5xqrgbeidz1w8****'],
],
[
- 'name' => 'ClientToken',
+ 'name' => 'ChildInstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'RpcResponse<ListEcrSupportedRegionResponse>',
- 'description' => '返回数据结构体。',
- 'type' => 'object',
- 'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n",
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- True:成功。'."\n"
- .'- False:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'SupportedRegionIdList' => [
- 'description' => '开服地域列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => '开服地域。',
- 'type' => 'string',
- 'example' => 'cn-hangzhou',
- ],
- ],
- ],
- ],
+ 'schema' => ['description' => 'VBR实例的ID。', 'type' => 'string', 'required' => true, 'example' => 'vbr-j6cwxhgg0s5nuephp****'],
],
- ],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"SupportedRegionIdList\\": [\\n \\"cn-hangzhou\\"\\n ]\\n}","type":"json"}]',
- 'title' => '查询专线网关(ECR)开服地域列表',
- ],
- 'SynchronizeExpressConnectRouterInterRegionBandwidth' => [
- 'summary' => '同步专线网关ECR(Express Connect Router)的各地域之间的转发带宽限制。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
[
- 'AK' => [],
+ 'name' => 'ChildInstanceType',
+ 'in' => 'formData',
+ 'schema' => ['description' => '网络实例的类型,取值:**VBR**边界路由器。', 'type' => 'string', 'required' => true, 'example' => 'VBR'],
],
- ],
- 'operationType' => 'readAndWrite',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'update',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '197625',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect9IGKFS',
+ [
+ 'name' => 'ChildInstanceRegionId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'VBR实例所在的地域。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'],
],
- ],
- 'parameters' => [
[
- 'name' => 'EcrId',
+ 'name' => 'ChildInstanceOwnerId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-fu8rszhgv7623c****',
- ],
+ 'schema' => ['description' => 'VBR实例所属的阿里云账号ID(主账号)。'."\n"
+ ."\n"
+ .'>如果您要加载跨账号的网络实例,本参数必填。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1905501448682345'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => ['description' => '子实例的描述信息。长度为0~128个字符。', 'type' => 'string', 'required' => false, 'example' => 'test'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<SyncEcrBandwidthResponse>',
- 'description' => 'RpcResponse<SyncEcrBandwidthResponse>',
+ 'title' => 'RpcResponse<AttachChildInstanceResponse>',
+ 'description' => 'RpcResponse<AttachChildInstanceResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsInstanceId**,则代表所传入的请求参数**DtsInstanceId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'IncorrectStatus.EcrAssociation', 'errorMessage' => 'Ecr Association Status does not allow current operation.', 'description' => 'ECR Association实例不允许当前操作。请在进行中的操作完成后,重试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'OperationDenied.CrossAccountDisassociating', 'errorMessage' => 'Unbind cross-account.', 'description' => '当前操作被拒绝,需在跨账号页面解除绑定操作后再执行此操作'],
+ ['errorCode' => 'OperationDenied.EcrAttachmentExisted', 'errorMessage' => 'Ecr and TR have been linked.', 'description' => '当前操作被拒绝,专线网关实例与TR已建立链接,请解除后再执行此操作。'],
+ ['errorCode' => 'OperationDenied.VbrDoesNotSupportMpbgp', 'errorMessage' => 'The VBR does not support Mpbgp configuration.', 'description' => '操作被拒绝,VBR暂不支持Mpbgp,'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'Conflict.ASNOfVBR', 'errorMessage' => 'ASN already used by other VBR.', 'description' => '当前VBR BgpGroup localAsn与ECR asn不一致,请调整一致后重新绑定。'],
+ ['errorCode' => 'OperationDenied.VbrHasRouteEntryInMiddleStatus', 'errorMessage' => 'The operation is not allowed because of VBR has route entry in middle status.', 'description' => '当前操作无法正常执行,边界路由器中存在路由条目处于配置生效中,请等待生效后重试。'],
+ ['errorCode' => 'OperationDenied.VbrHasBgpGroupInMiddleStatus', 'errorMessage' => 'The operation is not allowed because of VBR has BGP group in middle status.', 'description' => '当前操作无法正常执行,边界路由器中存在BGP组处于配置生效中,请等待生效后重试。'],
+ ['errorCode' => 'OperationDenied.VbrAlreadyAttachedToCen', 'errorMessage' => 'VBR has already attached to CEN.', 'description' => '边界路由器已经绑定了云企业网, 请先将边界路由器从云企业网中删除后重试。'],
+ ['errorCode' => 'OperationDenied.VbrAlreadyAttachedToEcr', 'errorMessage' => 'VBR has already attached to ECR.', 'description' => '边界路由器已经关联了专线网关,先将边界路由器从专线网关中删除后重试。'],
+ ['errorCode' => 'ResourceAlreadyExist.ChildInstanceId', 'errorMessage' => 'The specified resource of ChildInstanceId already exists.', 'description' => '指定的资源已经关联到专线网关 ECR, 请核对后重试。'],
+ ['errorCode' => 'UnsupportedFeature.JumboFrame', 'errorMessage' => 'The region where the sub-instance is located does not support the jumbo frame feature and cannot be attached to the express connect router.', 'description' => ''],
+ ['errorCode' => 'InternalErrorTemp', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => '内部错误。建议重试,如果多次重试报错请提交工单。'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
+ ['errorCode' => 'ResourceNotFound.AssociationId', 'errorMessage' => 'EcrAssociationId not found.', 'description' => 'ECR Association实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '加载子实例至专线网关(ECR)',
+ 'description' => '在调用**AttachExpressConnectRouterChildInstance**接口加载子实例(VBR)至专线网关之前,请确保专线网关的状态为**Active**。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AttachExpressConnectRouterChildInstance'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:AttachExpressConnectRouterChildInstance',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '同步专线网关ECR的跨域带宽',
- 'description' => '专线网关实例为**Active**状态时才允许更新。',
],
'CheckAddRegionToExpressConnectRouter' => [
- 'summary' => '检查指定的地域加入专线网关所需的云数据传输服务。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -553,60 +309,36 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '197604',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-fu8rszhgv7623c****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-fu8rszhgv7623c****'],
],
[
'name' => 'FreshRegionId',
'in' => 'formData',
- 'schema' => [
- 'description' => '指定专线网关功能是否开通云数据传输服务的地域。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-hangzhou',
- ],
+ 'schema' => ['description' => '指定专线网关功能是否开通云数据传输服务的地域。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- true:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- false(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- true:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- false(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
@@ -616,388 +348,222 @@
'description' => 'RpcResponse<CheckAssociationCreationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsInstanceId**,则代表所传入的请求参数**DtsInstanceId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
- 'AnyInterRegionLink' => [
- 'description' => '专线网关实例是否存在中国内地跨地域。取值:'."\n"
- .'- **true**:是。'."\n"
- .'- **false**:否。',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'AnyCrossBorderLink' => [
- 'description' => '专线网关实例是否存在中国内地与中国境外跨境。取值:'."\n"
- .'- **true**:是。'."\n"
- .'- **false**:否。',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'IsCdtInterRegionEnabled' => [
- 'description' => '专线网关实例所属账号是否开通云数据传输(CDT)服务。取值:'."\n"
- .'- **true**:是。'."\n"
- .'- **false**:否。',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'IsCdtCrossBorderEnabled' => [
- 'description' => '专线网关实例所属账号是否开通跨境云数据传输(CDT)服务。取值:'."\n"
- .'- **true**:是。'."\n"
- .'- **false**:否。',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'IsUserAllowedToCreateCrossBorderLink' => [
- 'description' => '专线网关实例所属账号是否允许创建跨境。取值:'."\n"
- .'- **true**:是。'."\n"
- .'- **false**:否。',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsInstanceId**,则代表所传入的请求参数**DtsInstanceId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
+ 'AnyInterRegionLink' => ['description' => '专线网关实例是否存在中国内地跨地域。取值:'."\n"
+ .'- **true**:是。'."\n"
+ .'- **false**:否。', 'type' => 'boolean', 'example' => 'true'],
+ 'AnyCrossBorderLink' => ['description' => '专线网关实例是否存在中国内地与中国境外跨境。取值:'."\n"
+ .'- **true**:是。'."\n"
+ .'- **false**:否。', 'type' => 'boolean', 'example' => 'true'],
+ 'IsCdtInterRegionEnabled' => ['description' => '专线网关实例所属账号是否开通云数据传输(CDT)服务。取值:'."\n"
+ .'- **true**:是。'."\n"
+ .'- **false**:否。', 'type' => 'boolean', 'example' => 'true'],
+ 'IsCdtCrossBorderEnabled' => ['description' => '专线网关实例所属账号是否开通跨境云数据传输(CDT)服务。取值:'."\n"
+ .'- **true**:是。'."\n"
+ .'- **false**:否。', 'type' => 'boolean', 'example' => 'true'],
+ 'IsUserAllowedToCreateCrossBorderLink' => ['description' => '专线网关实例所属账号是否允许创建跨境。取值:'."\n"
+ .'- **true**:是。'."\n"
+ .'- **false**:否。', 'type' => 'boolean', 'example' => 'true'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'InternalErrorTemp',
- 'errorMessage' => 'The request processing has failed due to some unknown error.',
- ],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'InternalErrorTemp', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => '内部错误。建议重试,如果多次重试报错请提交工单。'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"AnyInterRegionLink\\": true,\\n \\"AnyCrossBorderLink\\": true,\\n \\"IsCdtInterRegionEnabled\\": true,\\n \\"IsCdtCrossBorderEnabled\\": true,\\n \\"IsUserAllowedToCreateCrossBorderLink\\": true\\n}","type":"json"}]',
+ 'staticInfo' => ['returnType' => 'synchronous'],
'title' => '检查指定的地域加入专线网关(ECR)所需的云数据传输(CDT)服务',
- ],
- 'ModifyExpressConnectRouterChildInstance' => [
- 'summary' => '修改专线网关(ExpressConnectRouter)关联子实例(VBR)的属性。',
- 'methods' => [
- 'post',
+ 'summary' => '检查指定的地域加入专线网关所需的云数据传输服务。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CheckAddRegionToExpressConnectRouter'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:CheckAddRegionToExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"AnyInterRegionLink\\": true,\\n \\"AnyCrossBorderLink\\": true,\\n \\"IsCdtInterRegionEnabled\\": true,\\n \\"IsCdtCrossBorderEnabled\\": true,\\n \\"IsUserAllowedToCreateCrossBorderLink\\": true\\n}","type":"json"}]',
+ ],
+ 'CreateExpressConnectRouter' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '246043',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectY33HGU',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeCode' => '197622',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'EcrId',
+ 'name' => 'Name',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-gny3gqp41n7vrrn5iz',
- ],
+ 'schema' => ['description' => '专线网关实例的名称。'."\n"
+ .'> 名称可以为空或长度为 0~128 个字符,不能以 http://或 https://开头。', 'type' => 'string', 'required' => false, 'example' => 'test'],
],
[
- 'name' => 'ChildInstanceId',
+ 'name' => 'Description',
'in' => 'formData',
- 'schema' => [
- 'description' => 'VBR实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'vbr-t4n6xu2d5q0iaad1yl4le',
- ],
+ 'schema' => ['description' => '专线网关实例的描述。'."\n"
+ ."\n"
+ .'>描述可以为空或长度为 0~256 个字符,不能以 http://或 https://开头。', 'type' => 'string', 'required' => false, 'example' => 'test'],
],
[
- 'name' => 'ChildInstanceType',
+ 'name' => 'ResourceGroupId',
'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的类型。取值:'."\n"
- .'- **VBR**:边界路由器实例。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'VBR',
- ],
+ 'schema' => ['description' => '专线网关实例所属的资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvvajg5q****'],
],
[
- 'name' => 'Description',
+ 'name' => 'AlibabaSideAsn',
'in' => 'formData',
- 'schema' => [
- 'description' => '子实例的描述信息。长度为0~128个字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
+ 'schema' => ['description' => '专线网关实例的ASN。可取值为45104(默认值),64512~65534和4200000000~4294967294,其中65025为阿里云保留值。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '45104'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00**** '],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ 'description' => '标签。'."\n"
."\n"
- .'> '."\n"
- .'> - 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId不一样。',
- 'type' => 'string',
+ .'最多可以绑定20个标签。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => '资源的标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'],
+ 'Value' => ['description' => '监听的标签值。N的取值范围:**1**~**20**。一旦传入该值,可以为空字符串。最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'],
+ ],
+ 'required' => false,
+ ],
'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n",
+ 'maxItems' => 20,
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<ModifyEcrResponse>',
- 'description' => 'RpcResponse<ModifyEcrResponse>',
+ 'title' => 'RpcResponse<CreateEcrResponse>',
+ 'description' => 'RpcResponse<CreateEcrResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => 'DEB383C4-32C9-53DC-9B8B-8DBA26038074',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示成功,返回其他值表示失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'successful',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n"],
+ 'Success' => ['description' => '创建ECR实例是否成功。取值:'."\n"
+ .'- **true**:成功。'."\n"
+ .'- **false**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断创建ECR实例是否成功。返回值为200表示创建成功,返回其他值表示创建失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.Name'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of Name **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
+ 'EcrId' => ['description' => '专线网关实例ID。', 'type' => 'string', 'example' => 'ecr-fu8rszhgv7623c****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'ResourceNotFound.InstanceId',
- 'errorMessage' => 'The instance id does not exist.',
- ],
- [
- 'errorCode' => 'QuotaExceeded.ChildInstanceNum',
- 'errorMessage' => 'The number of sub-instances in the switching group exceeds threshold.',
- ],
- [
- 'errorCode' => 'OperationFailed.NotSupportAcrossRegion',
- 'errorMessage' => 'Switching groups cannot be formed across regional sub-instances.',
- ],
- [
- 'errorCode' => 'OperationFailed.NotSupportAcrossAccount',
- 'errorMessage' => 'Switching groups cannot be formed across account sub-instances.',
- ],
- [
- 'errorCode' => 'ResourceInConfiguring.NodeId',
- 'errorMessage' => 'The current subInstance is not in steady state, please try again later.',
- ],
- [
- 'errorCode' => 'IncorrectStatus.HaVbrGroup',
- 'errorMessage' => 'The current state of the switching group is not steady state, please try again later.',
- ],
- [
- 'errorCode' => 'IncorrectStatus.Vbr',
- 'errorMessage' => 'The current VBR is not in steady state, please try again later.',
- ],
- [
- 'errorCode' => 'OperationFailed.VbrInUsedByOtherHa',
- 'errorMessage' => 'The VBR in the input switching group is already in another switching group.',
- ],
- [
- 'errorCode' => 'OperationFailed.VbrBgpPeerNotEnableBfd',
- 'errorMessage' => 'The configured BGP PEER of the input VBR in the switching group does not enable BFD.',
- ],
- [
- 'errorCode' => 'OperationFailed.VbrEcrNotRelation',
- 'errorMessage' => 'The VBR in the switching group is not bound to ECR.',
- ],
- [
- 'errorCode' => 'DeviceNotSupport.EcrVbrHa',
- 'errorMessage' => 'The access device where the VBR is located does not support configuring a switching group.',
- ],
- [
- 'errorCode' => 'OperationFailed.VbrBgpGroupLocalAsnNotSupport',
- 'errorMessage' => 'The BGP group AS number of the VBR configuration in the switching group is not supported.',
- ],
- [
- 'errorCode' => 'OperationFailed.VbrAccessDeviceSame',
- 'errorMessage' => 'The VBR on the same access device cannot be added to a switching group.',
- ],
- [
- 'errorCode' => 'OperationFailed.VbrBgpGroupLocalAsnNotTheSameWithEcr',
- 'errorMessage' => 'The AS number of the BGP group of the VBR added to the switching group is different from the AS number of the ECR.',
- ],
- [
- 'errorCode' => 'OperationFailed.VbrBgpGroupLocalAsnNotTheSameWithOther',
- 'errorMessage' => 'The BGP group AS number of the VBR configuration in the switching group is not exactly the same.',
- ],
- [
- 'errorCode' => 'OperationFailed.VbrEcrNotConsistent',
- 'errorMessage' => 'The VBR in the switching group is not bound to the same ECR.',
- ],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'OperationFailed.UserNotInWhiteList', 'errorMessage' => 'The current user is not in the whitelist.', 'description' => '专线网关产品通过白名单开放,当前用户没有操作权限。请联系客服人员将当前用户添加至白名单。'],
+ ['errorCode' => 'QuotaExceeded.EcrCountPerUser', 'errorMessage' => 'ECR Quota Exceeded.', 'description' => '您可创建的专线网关实例数量已达到配额上限,请联系您的商务经理申请更大的配额数量'],
+ ['errorCode' => 'Conflict.ASNOfECR', 'errorMessage' => 'ASN already used by other ECR.', 'description' => '指定的ASN被其它专线网关占用,请换成其它未使用的ASN。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParam.AlibabaSideAsn', 'errorMessage' => 'The entered Bgp Asn is incorrect.', 'description' => '当前输入的BgpAsn不正确,请检查后重新输入'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
],
- 404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '新建专线网关(ECR)',
+ 'summary' => '新建专线网关ECR(Express Connect Router)。',
+ 'description' => '创建专线网关实例后,专线网关的实例状态为**Active**。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateExpressConnectRouter'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:CreateExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/*'],
+ ],
+ ],
+ 'additionalActions' => [
+ ['action' => 'expressconnectrouter:CreateServiceLinkedRole'],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DEB383C4-32C9-53DC-9B8B-8DBA26038074\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '修改专线网关关联子实例属性',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.Name\\",\\n \\"DynamicMessage\\": \\"The param format of Name **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"EcrId\\": \\"ecr-fu8rszhgv7623c****\\"\\n}","type":"json"}]',
],
- 'ModifyExpressConnectRouterAssociation' => [
- 'summary' => '修改专线网关ECR(Express Connect Router)关联的子实例属性。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'CreateExpressConnectRouterAssociation' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -1006,1337 +572,738 @@
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '246041',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectY33HGU',
- ],
+ 'abilityTreeCode' => '197620',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0'],
+ 'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****'."\n",
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'AssociationId',
+ 'name' => 'AssociationRegionId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关与VPC或TR的关联ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-assoc-9p2qxx5phpca2m****'."\n",
- ],
+ 'schema' => ['description' => '关联资源所属的地域。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'],
],
[
- 'name' => 'Description',
+ 'name' => 'TransitRouterOwnerId',
'in' => 'formData',
+ 'schema' => ['description' => '转发路由器实例所属阿里云账号(主账号)ID。默认值为当前登录的阿里云账号ID。'."\n"
+ ."\n"
+ .'> 如果您要加载跨账号的网络实例,本参数必填。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '189159362009****'],
+ ],
+ [
+ 'name' => 'TransitRouterId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '转发路由器ID。', 'type' => 'string', 'required' => false, 'example' => 'tr-2ze4i71c6be454e2l****'],
+ ],
+ [
+ 'name' => 'CenId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '云企业网实例ID。', 'type' => 'string', 'required' => false, 'example' => 'cen-of3o1the3i4gwb****'],
+ ],
+ [
+ 'name' => 'VpcOwnerId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'VPC实例所属阿里云账号(主账号)ID。默认为当前登录的阿里云账号ID。'."\n"
+ ."\n"
+ .'> 如果您要加载跨账号的网络实例,本参数必填。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '132193271328****'],
+ ],
+ [
+ 'name' => 'VpcId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'VPC实例ID。', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1h37fchc6jmfyln****'],
+ ],
+ [
+ 'name' => 'AllowedPrefixes',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '子实例的描述信息。长度为0~128个字符。',
- 'type' => 'string',
+ 'description' => '允许的前缀路由列表。',
+ 'type' => 'array',
+ 'items' => ['description' => '允许的前缀路由。', 'type' => 'string', 'required' => false, 'example' => '192.0.20.0/24'],
'required' => false,
- 'example' => 'test',
+ 'maxItems' => 10000,
],
],
[
+ 'name' => 'CreateAttachment',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'ECR绑定TR时是否发起关联。取值:'."\n"
+ ."\n"
+ .'- **true**:不需要在转发路由器侧发起关联。'."\n"
+ .'- **false**:需要在转发路由器侧发起关联。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
+ ],
+ [
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- true:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- false(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00**** '."\n"],
+ ],
+ [
+ 'name' => 'AllowedPrefixesMode',
+ 'in' => 'formData',
+ 'schema' => ['description' => '前缀路由模式,取值:'."\n"
+ .'- MatchMode: 匹配模式, 仅发布配置的路由网段到IDC,对原有发布的明细路由进行回撤。'."\n"
+ .'- IncrementalMode: 增量模式, 发布配置的路由网段到IDC的同时对原有发布落在配置的路由网段内的明细路由进行回撤,未落在配置的网段内的明细路由保持发布。', 'type' => 'string', 'required' => false, 'example' => 'MatchMode'],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => ['description' => '关联资源的描述信息。长度为0~128个字符。', 'type' => 'string', 'required' => false, 'example' => 'test'],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> '."\n"
- .'> - 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['type' => 'string'],
+ 'Value' => ['type' => 'string'],
+ ],
+ ],
+ 'maxItems' => 20,
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<ModifyEcrResponse>',
- 'description' => 'RpcResponse<ModifyEcrResponse>',
+ 'title' => 'RpcResponse<CreateAssociationResponse>',
+ 'description' => 'RpcResponse<CreateAssociationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => 'DFDA79A0-D135-5193-B0AC-3B5608FDB1D0',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示成功,返回其他值表示失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '05130E79-588D-5C40-A718-C4863A59****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
+ 'AssociationId' => ['description' => '专线网关与VPC或TR的关联ID。', 'type' => 'string', 'example' => 'ecr-assoc-9p2qxx5phpca2m****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
+ ['errorCode' => 'QuotaExceeded.VpcCountPerEcr', 'errorMessage' => 'The number of VPC bound to the ECR exceeds the quota.', 'description' => '单个专线网关实例可绑定的VPC数量已达到配额上限,请联系您的商务经理申请更大的配额数量'],
+ ['errorCode' => 'QuotaExceeded.TrCountPerEcr', 'errorMessage' => 'The number of TR bound to the ECR exceeds the quota.', 'description' => '单个专线网关实例可绑定的TR数量已达到配额上限,请联系您的商务经理申请更大的配额数量'],
+ ['errorCode' => 'IllegalParamFormat.AllowedPrefixes', 'errorMessage' => 'The prefix parameter format is invalid. Procedure.', 'description' => '指定的前缀路由网段格式错误。'],
+ ['errorCode' => 'OperationDenied.NotGrantedByNodeOwner', 'errorMessage' => 'The node owner is not authorized.', 'description' => '您当前操作被拒绝,专线网关产品未授权'],
+ ['errorCode' => 'OperationFailed.CdtNotOpened', 'errorMessage' => 'The Cdt function is disabled.', 'description' => '当前操作失败,未开启阿里云数据传输功能'],
+ ['errorCode' => 'OperationFailed.CdtCrossBoarderNotOpened', 'errorMessage' => 'The Cdt cross-border transmission function is disabled.', 'description' => '当前操作失败,未开启阿里云数据跨境传输功能'],
+ ['errorCode' => 'OperationFailed.CrossBorderNotAllowed', 'errorMessage' => 'There is no qualification for creating cross-border links.', 'description' => '操作失败,当前企业不具备创建跨境链路权限,请联系您的商务经理添加此权限。'],
+ ['errorCode' => 'ResourceNotFound.CenId', 'errorMessage' => 'CenId not found.', 'description' => 'Cen实例不存在'],
+ ['errorCode' => 'ResourceNotFound.TrId', 'errorMessage' => 'TRId not found.', 'description' => 'TR实例不存在'],
+ ['errorCode' => 'Conflict.ASNOfVBR', 'errorMessage' => 'ASN already used by other VBR.', 'description' => '当前VBR BgpGroup localAsn与ECR asn不一致,请调整一致后重新绑定。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParamFormat.CenId', 'errorMessage' => 'The format of the entered Cen instance ID is incorrect.', 'description' => '当前输入的Cen实例ID格式不正确'],
+ ['errorCode' => 'OperationDenied.CrossBidAssociating', 'errorMessage' => 'Cross-border binding of resources is subject to compliance constraints.', 'description' => '您当前的绑定资源涉及跨中国站点资源和海外站点资源互通,受限于合规约束请联系您的商务经理沟通处理。'],
+ ['errorCode' => 'ExclusiveParam.TransitRouterIdAndVpcId', 'errorMessage' => 'A private network instance cannot be bound to a forwarding router instance at the same time.', 'description' => '专有网络实例与转发路由器实例无法同时绑定,请调整后选择其中一个实例进行绑定'],
+ ['errorCode' => 'IllegalParamSize.AllowedPrefixes', 'errorMessage' => 'The number of prefix routes exceeded the quota.', 'description' => '您当前输入的前缀路由数量超过配额,请申请扩容。'],
+ ['errorCode' => 'OperationDenied.CrossAccountAttaching', 'errorMessage' => 'If the forwarding router is bound to another account, perform this operation on the same account.', 'description' => '当前操作被拒绝,绑定其他账号转发路由器时,需在该账号做此操作'],
+ ['errorCode' => 'OperationDenied.AttachmentInCurrentRegionExisted', 'errorMessage' => 'Only one forwarding router can be bound to an area.', 'description' => '当前操作被拒绝,专线网关实例在同一区域内只支持绑定一个转发路由器'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'OperationFailed.CallingVpcYaochi', 'errorMessage' => 'The system is abnormal. Please try again later.', 'description' => ' 操作失败,系统内部异常,请稍后重试,若重试仍失败请联系您的商务经理获取帮助。'],
+ ['errorCode' => 'ResourceAlreadyExist.TransitRouterId', 'errorMessage' => 'The specified resource of transit router already exists.', 'description' => '指定的 TR 资源已经关联到专线网关 ECR, 请核对后重试。'],
+ ['errorCode' => 'ResourceAlreadyExist.VpcId', 'errorMessage' => 'The specified resource of VpcId already exists.', 'description' => '指定的 VPC 资源已经关联到专线网关 ECR, 请核对后重试。'],
+ ['errorCode' => 'Conflict.AllowedPrefixes', 'errorMessage' => 'The allowed route prefixes [%s] is conflict.', 'description' => '当前配置的路由前缀已存在,请确认后重新提交。'],
+ ['errorCode' => 'UnsupportedFeature.JumboFrame', 'errorMessage' => 'The region where the sub-instance is located does not support the jumbo frame feature and cannot be attached to the express connect router.', 'description' => ''],
+ ['errorCode' => 'InternalErrorTemp', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => '内部错误。建议重试,如果多次重试报错请提交工单。'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
- [
- 'errorCode' => 'ResourceNotFound.AssociationId',
- 'errorMessage' => 'EcrAssociationId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DFDA79A0-D135-5193-B0AC-3B5608FDB1D0\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
- 'title' => '修改专线网关关联子实例属性',
- ],
- 'AttachExpressConnectRouterChildInstance' => [
- 'summary' => '加载子实例(VBR)至ECR。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '专线网关(ECR)关联资源',
+ 'summary' => '专线网关ECR(Express Connect Router)关联专有网络(VPC)或者转发路由器(TR)。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateExpressConnectRouterAssociation'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:CreateExpressConnectRouterAssociation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"AssociationId\\": \\"ecr-assoc-9p2qxx5phpca2m****\\"\\n}","type":"json"}]',
+ ],
+ 'CreateFlowLog' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197608',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectNHSYB7',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeCode' => '253947',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectH4NOM0'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-a5xqrgbeidz1w8****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'ChildInstanceId',
+ 'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => 'VBR实例的ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'vbr-j6cwxhgg0s5nuephp****',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
- 'name' => 'ChildInstanceType',
+ 'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的类型,取值:**VBR**边界路由器。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'VBR',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
[
- 'name' => 'ChildInstanceRegionId',
+ 'name' => 'FlowLogName',
'in' => 'formData',
- 'schema' => [
- 'description' => 'VBR实例所在的地域。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-hangzhou',
- ],
+ 'schema' => ['description' => '流日志名称。'."\n"
+ .'> 名称可以为空或长度为 0~128 个字符,不能以 http://或 https://开头。', 'type' => 'string', 'required' => false, 'example' => 'myFlowlog'],
],
[
- 'name' => 'ChildInstanceOwnerId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'VBR实例所属的阿里云账号ID(主账号)。'."\n"
- ."\n"
- .'>如果您要加载跨账号的网络实例,本参数必填。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1905501448682345',
- ],
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => ['description' => '流日志的描述信息。'."\n"
+ .'> 描述可以为空或长度为 0~256 个字符,不能以 http://或 https://开头。', 'type' => 'string', 'required' => false, 'example' => 'myFlowlog'],
],
[
- 'name' => 'DryRun',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => ['description' => '网络实例的类型。取值:'."\n"
+ .'- **VBR**:边界路由器实例。', 'type' => 'string', 'required' => true, 'example' => 'VBR'],
],
[
- 'name' => 'ClientToken',
- 'in' => 'formData',
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'VBR 实例 ID。', 'type' => 'string', 'required' => true, 'example' => 'vbr-xxx'."\n"],
+ ],
+ [
+ 'name' => 'Interval',
+ 'in' => 'query',
+ 'schema' => ['description' => '流日志捕获流量的捕获窗口时长。单位:秒。取值:'."\n"
+ ."\n"
+ .'- **60** '."\n"
+ .'- **600**'."\n"
+ ."\n"
+ .'默认值:**600**。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60'],
+ ],
+ [
+ 'name' => 'SamplingRate',
+ 'in' => 'query',
+ 'schema' => ['description' => '采样比例。取值'."\n"
+ ."\n"
+ .'- **1:4096**'."\n"
+ .'- **1:2048**'."\n"
+ .'- **1:1024**'."\n"
+ ."\n"
+ .'默认值:**1:4096**。', 'type' => 'string', 'required' => false, 'example' => '1:4096 '],
+ ],
+ [
+ 'name' => 'ProjectName',
+ 'in' => 'query',
+ 'schema' => ['description' => '存储捕获流量的 Project。'."\n"
+ .'- 如果您已经在当前地域创建了 Project,您可以输入已创建的 Project 的名称。'."\n"
+ .'- 如果您未在当前地域创建 Project,您可以为 Project 自定义名称,系统会帮您自动创建 Project。'."\n"
+ ."\n\n"
+ .'Project 名称在阿里云地域内全局唯一,创建后不可修改。其命名规则如下:'."\n"
+ .' '."\n"
+ .'- Project名称必须全局唯一。'."\n"
+ .'- 只能包括小写'."\n"
+ .'- 字母、数字和短划线(-)。'."\n"
+ .'- 必须以小写字母或者数字开头和结尾。'."\n"
+ .'- 长度为 3~63 字符。', 'type' => 'string', 'required' => true, 'example' => 'flowlog-project'],
+ ],
+ [
+ 'name' => 'LogStoreName',
+ 'in' => 'query',
+ 'schema' => ['description' => '存储捕获流量的 Logstore。'."\n"
+ .'- 如果您已经在当前地域创建了 Logstore,您可以输入已创建的 Logstore 的名称。'."\n"
+ .'- 如果您未在当前地域创建 Logstore,您可以为 Logstore 自定义名称,系统会帮您自动创建 Logstore。 Logstore 名称。其命名规则如下:'."\n"
+ ."\n"
+ .'- 同一个 Project 下,Logstore 名称不可重复。'."\n"
+ .'- 只能包括小写字母、数字、短划线(-)和下划线(_)。'."\n"
+ .'- 必须以小写字母或者数字开头和结尾。'."\n"
+ .'- 长度为 3~63 字符。', 'type' => 'string', 'required' => true, 'example' => 'flowlog-logstore'],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ 'description' => '标签。'."\n"
."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
+ .'最多可以绑定20个标签。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => '资源的标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'],
+ 'Value' => ['description' => '监听的标签值。N的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持128个字符,不能以acs:开头,不能包含http://或者https://。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'],
+ ],
+ 'required' => false,
+ ],
'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
+ 'maxItems' => 20,
],
],
[
- 'name' => 'Description',
+ 'name' => 'ResourceGroupId',
'in' => 'formData',
- 'schema' => [
- 'description' => '子实例的描述信息。长度为0~128个字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
+ 'allowEmptyValue' => false,
+ 'schema' => ['description' => '流日志实例所属的资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2aq7f4va****'."\n"],
+ ],
+ [
+ 'name' => 'TargetSlsRegionId',
+ 'in' => 'query',
+ 'schema' => ['description' => '当前字段代表需要投递的project所属region信息,仅跨地域投递需要填写该字段, 非跨地域投递不需要填写该字段。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<AttachChildInstanceResponse>',
- 'description' => 'RpcResponse<AttachChildInstanceResponse>',
+ 'title' => 'RpcResponse<CreateAssociationResponse>',
+ 'description' => 'RpcResponse<CreateAssociationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n"],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的%**s**。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
+ 'FlowLogId' => ['description' => '流日志实例ID。', 'type' => 'string', 'example' => 'ecr-flog-m5evbtbpt****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'IncorrectStatus.EcrAssociation',
- 'errorMessage' => 'Ecr Association Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'OperationDenied.CrossAccountDisassociating',
- 'errorMessage' => 'Unbind cross-account.',
- ],
- [
- 'errorCode' => 'OperationDenied.EcrAttachmentExisted',
- 'errorMessage' => 'Ecr and TR have been linked.',
- ],
- [
- 'errorCode' => 'OperationDenied.VbrDoesNotSupportMpbgp',
- 'errorMessage' => 'The VBR does not support Mpbgp configuration.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'Conflict.ASNOfVBR',
- 'errorMessage' => 'ASN already used by other VBR.',
- ],
- [
- 'errorCode' => 'OperationDenied.VbrHasRouteEntryInMiddleStatus',
- 'errorMessage' => 'The operation is not allowed because of VBR has route entry in middle status.',
- ],
- [
- 'errorCode' => 'OperationDenied.VbrHasBgpGroupInMiddleStatus',
- 'errorMessage' => 'The operation is not allowed because of VBR has BGP group in middle status.',
- ],
- [
- 'errorCode' => 'OperationDenied.VbrAlreadyAttachedToCen',
- 'errorMessage' => 'VBR has already attached to CEN.',
- ],
- [
- 'errorCode' => 'OperationDenied.VbrAlreadyAttachedToEcr',
- 'errorMessage' => 'VBR has already attached to ECR.',
- ],
- [
- 'errorCode' => 'ResourceAlreadyExist.ChildInstanceId',
- 'errorMessage' => 'The specified resource of ChildInstanceId already exists.',
- ],
- [
- 'errorCode' => 'UnsupportedFeature.JumboFrame',
- 'errorMessage' => 'The region where the sub-instance is located does not support the jumbo frame feature and cannot be attached to the express connect router.',
- ],
- [
- 'errorCode' => 'InternalErrorTemp',
- 'errorMessage' => 'The request processing has failed due to some unknown error.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
+ ['errorCode' => 'ResourceAlreadyExist.FlowLogId', 'errorMessage' => 'The specified resource of FlowLogId[%s] already exists.', 'description' => '创建的流日志已经存在, 请核对后重试。'],
+ ['errorCode' => 'InternalErrorTemp', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => '内部错误。建议重试,如果多次重试报错请提交工单。'],
],
- 404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
- [
- 'errorCode' => 'ResourceNotFound.AssociationId',
- 'errorMessage' => 'EcrAssociationId not found.',
- ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '创建流日志',
+ 'summary' => '创建流日志默认开启日志投递。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateFlowLog'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:CreateFlowLog',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '加载子实例至专线网关(ECR)',
- 'description' => '在调用**AttachExpressConnectRouterChildInstance**接口加载子实例(VBR)至专线网关之前,请确保专线网关的状态为**Active**。',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"FlowLogId\\": \\"ecr-flog-m5evbtbpt****\\"\\n}","type":"json"}]',
],
- 'DetachExpressConnectRouterChildInstance' => [
- 'summary' => '从专线网关ECR(Express Connect Router)卸载边界路由器(VBR)。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'DeactivateFlowLog' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197609',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeCode' => '254021',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectH4NOM0'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- ],
- [
- 'name' => 'ChildInstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'VBR实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'vbr-j6cwxhgg0s5nuephp****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'ChildInstanceType',
+ 'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的类型。取值:**VBR**边界路由器实例。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'VBR',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
- 'name' => 'DryRun',
+ 'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
[
- 'name' => 'ClientToken',
+ 'name' => 'FlowLogId',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n",
- ],
+ 'schema' => ['description' => '流日志实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-flog-m5evbtbpt****'."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DetachChildInstanceResponse>',
- 'description' => 'RpcResponse<DetachChildInstanceResponse>',
+ 'title' => 'RpcResponse<CreateAssociationResponse>',
+ 'description' => 'RpcResponse<CreateAssociationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'IncorrectStatus.EcrAssociation',
- 'errorMessage' => 'Ecr Association Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'OperationDenied.CrossAccountDisassociating',
- 'errorMessage' => 'Unbind cross-account.',
- ],
- [
- 'errorCode' => 'OperationDenied.EcrAttachmentExisted',
- 'errorMessage' => 'Ecr and TR have been linked.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'OperationDenied.VbrHasRouteEntryInMiddleStatus',
- 'errorMessage' => 'The operation is not allowed because of VBR has route entry in middle status.',
- ],
- [
- 'errorCode' => 'OperationDenied.VbrHasBgpGroupInMiddleStatus',
- 'errorMessage' => 'The operation is not allowed because of VBR has BGP group in middle status.',
- ],
- [
- 'errorCode' => 'OperationDenied.VbrUsedInVbrHa',
- 'errorMessage' => 'The border router has been used by the switching group and cannot be bound to the leased line gateway.',
- ],
- [
- 'errorCode' => 'ResourceInUse.HaVbrGroup',
- 'errorMessage' => 'The specified resource of %s is in use.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
],
- 404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
- [
- 'errorCode' => 'ResourceNotFound.AssociationId',
- 'errorMessage' => 'EcrAssociationId not found.',
- ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '停止流日志',
+ 'summary' => '流日志停止日志投递。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeactivateFlowLog'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DeactivateFlowLog',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
- 'title' => '从专线网关(ECR)卸载子实例',
- 'description' => '在调用**DetachExpressConnectRouterChildInstance**接口从专线网关卸载VBR实例之前,请确保专线网关的状态为**Active**。',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
],
- 'DescribeExpressConnectRouterChildInstance' => [
- 'summary' => '查询专线网关ECR(Express Connect Router)加载的边界路由器(VBR)。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'DeleteExpressConnectRouter' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199361',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectNHSYB7',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeCode' => '197616',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- ],
- [
- 'name' => 'AssociationId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关与VBR的关联ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ecr-assoc-9p2qxx5phpca2m****'."\n",
- ],
- ],
- [
- 'name' => 'ChildInstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '待卸载的网络实例ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vbr-j6cwxhgg0s5nuephp****',
- ],
- ],
- [
- 'name' => 'ChildInstanceType',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的类型。取值:**VBR**:边界路由器实例。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'VBR',
- ],
- ],
- [
- 'name' => 'ChildInstanceRegionId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例所在的地域。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou',
- ],
- ],
- [
- 'name' => 'NextToken',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
- .'- 如果有下一次查询,取值为上一次 API 调用返回的 NextToken 值。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****',
- ],
- ],
- [
- 'name' => 'MaxResults',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为20。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '20',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-fu8rszhgv7623c****'."\n"],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00**** '."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DescribeChildInstanceResponse>',
- 'description' => 'RpcResponse<DescribeChildInstanceResponse>',
+ 'title' => 'RpcResponse<DeleteEcrResponse>',
+ 'description' => '返回数据结构体。',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '05130E79-588D-5C40-A718-C4863A59****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
- 'TotalCount' => [
- 'description' => '关联的资源总数。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'MaxResults' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:20。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '20',
- ],
- 'NextToken' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 如果 NextToken 为空表示没有下一次查询。'."\n"
- .'- 如果 NextToken 有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****',
- ],
- 'ChildInstanceList' => [
- 'description' => '子实例列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => '子实例信息。',
- 'type' => 'object',
- 'properties' => [
- 'EcrId' => [
- 'title' => '专线网关实例ID。',
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- 'AssociationId' => [
- 'description' => '专线网关与VPC或TR的关联ID。',
- 'type' => 'string',
- 'example' => 'ecr-assoc-9p2qxx5phpca2m****',
- ],
- 'RegionId' => [
- 'description' => '边界路由器所属地域。',
- 'type' => 'string',
- 'example' => 'cn-hangzhou',
- ],
- 'OwnerId' => [
- 'description' => '边界路由器所属的阿里云账号ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '167509154715****',
- ],
- 'GmtCreate' => [
- 'description' => '创建关联时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。',
- 'type' => 'string',
- 'example' => '2024-01-09T12:18:23Z',
- ],
- 'GmtModified' => [
- 'description' => '修改关联时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。',
- 'type' => 'string',
- 'example' => '2024-01-09T12:18:23Z',
- ],
- 'Status' => [
- 'description' => '关联资源的部署状态。可能值:'."\n"
- ."\n"
- .'- **CREATING**:创建中。'."\n"
- ."\n"
- .'- **ACTIVE**:已创建。'."\n"
- ."\n"
- .'- **ASSOCIATING**:资源绑定中。'."\n"
- ."\n"
- .'- **DISSOCIATING**:资源解绑中。'."\n"
- ."\n"
- .'- **UPDATING**:修改中。'."\n"
- ."\n"
- .'- **DELETING**:删除中。',
- 'type' => 'string',
- 'example' => 'ACTIVE',
- ],
- 'ChildInstanceId' => [
- 'description' => '边界路由器实例ID。',
- 'type' => 'string',
- 'example' => 'vbr-gw8vjq2zjux3ifsc9****',
- ],
- 'ChildInstanceType' => [
- 'description' => '子实例类型。取值:**VBR**边界路由器。',
- 'type' => 'string',
- 'example' => 'VBR',
- ],
- 'ChildInstanceRegionId' => [
- 'description' => '子实例所属地域。',
- 'type' => 'string',
- 'example' => 'cn-hangzhou',
- ],
- 'ChildInstanceOwnerId' => [
- 'description' => '子实例所属的阿里云账号ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '112101171212****',
- ],
- 'Description' => [
- 'description' => '子实例描述信息',
- 'type' => 'string',
- 'example' => 'test ',
- ],
- ],
- ],
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n"],
+ 'Success' => ['description' => '删除ECR实例是否成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断删除ECR实例是否成功。返回值为200表示创建成功,返回其他值表示创建失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'ResourceInUse.Ecr', 'errorMessage' => 'The express connect router is currently in use.', 'description' => '专线网关实例当前正在被使用,请解除VBR/VPC/TR关联后重试。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"TotalCount\\": 1,\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****\\",\\n \\"ChildInstanceList\\": [\\n {\\n \\"EcrId\\": \\"ecr-mezk2idmsd0vx2****\\",\\n \\"AssociationId\\": \\"ecr-assoc-9p2qxx5phpca2m****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"OwnerId\\": 0,\\n \\"GmtCreate\\": \\"2024-01-09T12:18:23Z\\",\\n \\"GmtModified\\": \\"2024-01-09T12:18:23Z\\",\\n \\"Status\\": \\"ACTIVE\\",\\n \\"ChildInstanceId\\": \\"vbr-gw8vjq2zjux3ifsc9****\\",\\n \\"ChildInstanceType\\": \\"VBR\\",\\n \\"ChildInstanceRegionId\\": \\"cn-hangzhou\\",\\n \\"ChildInstanceOwnerId\\": 0,\\n \\"Description\\": \\"test \\"\\n }\\n ]\\n}","type":"json"}]',
- 'title' => '查询专线网关(ECR)绑定的子实例信息',
- ],
- 'DescribeInstanceGrantedToExpressConnectRouter' => [
- 'summary' => '查询授权给专线网关ECR(Express Connect Router)的网络实例。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '删除专线网关(ECR)',
+ 'summary' => '删除专线网关ECR(Express Connect Router)。',
+ 'description' => '在调用DeleteExpressConnectRouter接口删除ECR实例之前,请注意:'."\n"
+ ."\n"
+ .'- 删除专线网关实例前,必须删除专线网关实例上所关联的资源。'."\n"
+ ."\n"
+ .'- 只能删除**Active**状态的专线网关实例。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteExpressConnectRouter'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DeleteExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteExpressConnectRouterAssociation' => [
+ 'summary' => '解除专线网关ECR(Express Connect Router)与专有网络(VPC)或者转发路由器的关联关系。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199352',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeCode' => '197605',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'InstanceRegionId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '授权网络实例所在的地域。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou',
- ],
- ],
- [
- 'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '授权实例的ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vbr-j6cwxhgg0s5nuephp****',
- ],
- ],
- [
- 'name' => 'InstanceOwnerId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '授权网络实例所属阿里云账号(主账号)ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1298452580502345',
- ],
- ],
- [
- 'name' => 'InstanceType',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的类型。取值:'."\n"
- .'- **VBR**:边界路由器实例。'."\n"
- .'- **VPC**:专有网络实例。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'VBR',
- ],
- ],
- [
- 'name' => 'NextToken',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
- .'- 如果有下一次查询,取值为上一次 API 调用返回的 NextToken 值。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gAAAAABkyGzFbZR2NnxnyVk0EiL7F3qMBtBim8Es0mugRT3qb8yEHAMaHGanzuaHUmiEq9QRmok0RgxJAINBOJZa5KPjopEu_Q==',
- ],
- ],
- [
- 'name' => 'MaxResults',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为20。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '20',
- ],
- ],
- [
- 'name' => 'TagModels',
+ 'name' => 'AssociationId',
'in' => 'formData',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => '标签列表。',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'TagKey' => [
- 'description' => '资源的标签键。最多支持输入20个标签键。如果传入该值,则不能输入空字符串。'."\n"
- ."\n"
- .'最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'key',
- ],
- 'TagValue' => [
- 'description' => '资源的标签值。最多支持输入20个标签值。如果传入该值,则不能输入空字符串。'."\n"
- ."\n"
- .'最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'value'."\n",
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- 'maxItems' => 100,
- ],
+ 'schema' => ['description' => '专线网关与VPC或TR的关联ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-assoc-9p2qxx5phpca2m****'],
],
[
- 'name' => 'ResourceGroupId',
+ 'name' => 'DeleteAttachment',
'in' => 'formData',
- 'schema' => [
- 'description' => '实例所属的资源组ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-aek2tsvbnfe****',
- ],
+ 'schema' => ['description' => '专线网关是否是删除与TR或VPC的关联关系。取值:'."\n"
+ .'- **true**:是。'."\n"
+ .'- **false**:否。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n",
- ],
- ],
- [
- 'name' => 'CallerType',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '调用者类型'."\n"
- ."\n"
- .'- ECR'."\n"
- .'- OTHER'."\n"
- ."\n"
- .'默认值: ECR',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ECR',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DescribeInstanceGrantedToEcrResponse>',
- 'description' => 'RpcResponse<DescribeInstanceGrantedToEcrResponse>',
+ 'title' => 'RpcResponse<DeleteAssociationResponse>',
+ 'description' => 'RpcResponse<DeleteAssociationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.Name'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of Name **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
- 'TotalCount' => [
- 'description' => '授权给专线网关的网络实例总数。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'MaxResults' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:20。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '20',
- ],
- 'NextToken' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
- .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'example' => 'FFlMqGuJ10uN3l+FX/cBrGDNXUOUifNeOuAJlT4dc3vsWD6DsNSFAC2FtpeH5QOSG2WFdyRoun7gSLCm5o69YnAQ==',
- ],
- 'EcrGrantedInstanceList' => [
- 'description' => 'ECR授权实例列表。',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'GrantId' => [
- 'description' => '授权ID。',
- 'type' => 'string',
- 'example' => 'gr-8gdelo13mi99g1****',
- ],
- 'Status' => [
- 'description' => '授权网络实例的状态。',
- 'type' => 'string',
- 'example' => 'Active',
- ],
- 'GmtCreate' => [
- 'description' => '创建实例的时间。',
- 'type' => 'string',
- 'example' => '1669023139000',
- ],
- 'GmtModified' => [
- 'description' => '修改实例的时间',
- 'type' => 'string',
- 'example' => '1669023139000',
- ],
- 'EcrId' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- 'NodeId' => [
- 'description' => '授权实例ID。',
- 'type' => 'string',
- 'example' => 'vbr-j6cwxhgg0s5nuephp****'."\n",
- ],
- 'NodeType' => [
- 'description' => '网络实例的类型。取值:'."\n"
- .'- **VBR**:边界路由器实例。'."\n"
- .'- **VPC**:虚拟专有网络实例。',
- 'type' => 'string',
- 'example' => 'VBR',
- ],
- 'NodeRegionId' => [
- 'description' => '授权实例所属地域ID。',
- 'type' => 'string',
- 'example' => 'cn-hangzhou',
- ],
- 'NodeOwnerUid' => [
- 'description' => '实例所属的阿里云账号的ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '129845258050****'."\n",
- ],
- 'NodeOwnerBid' => [
- 'description' => '实例所属的阿里云企业账号ID。',
- 'type' => 'string',
- 'example' => '26842****',
- ],
- 'EcrOwnerAliUid' => [
- 'description' => '接受授权的专线网关实例所属阿里云账号(主账号)ID。',
- 'type' => 'string',
- 'example' => '229845258050****'."\n",
- ],
- ],
- ],
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '05130E79-588D-5C40-A718-C4863A59****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '接口返回信息', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'IncorrectStatus.EcrAssociation', 'errorMessage' => 'Ecr Association Status does not allow current operation.', 'description' => 'ECR Association实例不允许当前操作。请在进行中的操作完成后,重试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'OperationDenied.CrossAccountDisassociating', 'errorMessage' => 'Unbind cross-account.', 'description' => '当前操作被拒绝,需在跨账号页面解除绑定操作后再执行此操作'],
+ ['errorCode' => 'OperationDenied.EcrAttachmentExisted', 'errorMessage' => 'Ecr and TR have been linked.', 'description' => '当前操作被拒绝,专线网关实例与TR已建立链接,请解除后再执行此操作。'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'OperationFailed.UsedInRouteEntryNextHop', 'errorMessage' => 'The VPC also has a static route pointing to the ECR, and it is not allowed to disassociate the ECR.', 'description' => 'VPC还有静态路由指向ECR,不允许解除关联 ECR'],
+ ['errorCode' => 'OperationFailed.CallingVpcYaochi', 'errorMessage' => 'The system is abnormal. Please try again later.', 'description' => ' 操作失败,系统内部异常,请稍后重试,若重试仍失败请联系您的商务经理获取帮助。'],
+ ],
+ 404 => [
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
+ ['errorCode' => 'ResourceNotFound.AssociationId', 'errorMessage' => 'EcrAssociationId not found.', 'description' => 'ECR Association实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.Name\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of Name **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"TotalCount\\": 10,\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"FFlMqGuJ10uN3l+FX/cBrGDNXUOUifNeOuAJlT4dc3vsWD6DsNSFAC2FtpeH5QOSG2WFdyRoun7gSLCm5o69YnAQ==\\",\\n \\"EcrGrantedInstanceList\\": [\\n {\\n \\"GrantId\\": \\"gr-8gdelo13mi99g1****\\",\\n \\"Status\\": \\"Active\\",\\n \\"GmtCreate\\": \\"1669023139000\\",\\n \\"GmtModified\\": \\"1669023139000\\",\\n \\"EcrId\\": \\"ecr-mezk2idmsd0vx2****\\",\\n \\"NodeId\\": \\"vbr-j6cwxhgg0s5nuephp****\\\\n\\",\\n \\"NodeType\\": \\"VBR\\",\\n \\"NodeRegionId\\": \\"cn-hangzhou\\",\\n \\"NodeOwnerUid\\": 0,\\n \\"NodeOwnerBid\\": \\"26842****\\",\\n \\"EcrOwnerAliUid\\": \\"229845258050****\\\\n\\"\\n }\\n ]\\n}","type":"json"}]',
- 'title' => '查询授权给专线网关(ECR)的网络实例',
- ],
- 'RevokeInstanceFromExpressConnectRouter' => [
- 'summary' => '撤销专有网络(VPC)或者边界路由器(VBR)对跨账号的专线网关ECR(Express Connect Router)的授权。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '专线网关(ECR)解除资源关联关系',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteExpressConnectRouterAssociation'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DeleteExpressConnectRouterAssociation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteFlowlog' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -2345,343 +1312,190 @@
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197623',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeCode' => '253978',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectH4NOM0'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- ],
- [
- 'name' => 'EcrOwnerAliUid',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '撤销授权的ECR实例所属阿里云账号(主账号)ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '121012345612****'."\n",
- ],
- ],
- [
- 'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'vbr-j6cwxhgg0s5nuephp****',
- ],
- ],
- [
- 'name' => 'InstanceType',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的类型。取值:'."\n"
- .'- **VBR**:边界路由器实例。'."\n"
- .'- **VPC**:专有网络实例。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'VBR',
- ],
- ],
- [
- 'name' => 'InstanceRegionId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '撤销授权的网络实例所在的地域。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-hangzhou',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n",
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
+ ],
+ [
+ 'name' => 'FlowLogId',
+ 'in' => 'query',
+ 'schema' => ['description' => '流日志实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-flog-m5evbtbpt****'."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<RevokeInstanceFromEcrResponse>',
- 'description' => 'RpcResponse<RevokeInstanceFromEcrResponse>',
+ 'title' => 'RpcResponse<CreateAssociationResponse>',
+ 'description' => 'RpcResponse<CreateAssociationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '撤销授权网络实例是否成功。取值:'."\n"
- ."\n"
- .'- **true**:成功。'."\n"
- ."\n"
- .'- **false**:失败。',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n"],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '撤销网络实例对专线网关(ECR)的授权',
- ],
- 'GrantInstanceToExpressConnectRouter' => [
- 'summary' => '将的专有网络(VPC)或者边界路由器(VBR)授权给跨账号的专线网关ECR(Express Connect Router)。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '删除流日志',
+ 'summary' => '删除流日志。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteFlowlog'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DeleteFlowlog',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
+ ],
+ 'DescribeDisabledExpressConnectRouterRouteEntries' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197607',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeCode' => '199356',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectU328UX'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '关联的专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- ],
- [
- 'name' => 'EcrOwnerAliUid',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '接受授权的专线网关实例所属阿里云账号(主账号)ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '121012345612****',
- ],
- ],
- [
- 'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'vbr-j6cwxhgg0s5nuephp****'."\n",
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'InstanceType',
+ 'name' => 'NextToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的类型。取值:'."\n"
- .'- **VBR**:边界路由器实例。'."\n"
- .'- **VPC**:专有网络实例。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'VBR',
- ],
+ 'schema' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
+ .'- 如果有下一次查询,取值为上一次 API 调用返回的NextToken值。', 'type' => 'string', 'required' => false, 'example' => 'FFv4fzkNPW8Z+cZ+DBXXQ3Gmf3XlCgpBH43oaTYTAAcGc708Zb+pDyAGVJBo/MKsyrtZfPnX9Ztf02vgdIDyaNe8UuZdf/JJk069qxGKzqSKg='],
],
[
- 'name' => 'InstanceRegionId',
+ 'name' => 'MaxResults',
'in' => 'formData',
- 'schema' => [
- 'description' => '授权网络实例所在的地域ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-hangzhou',
- ],
+ 'schema' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n",
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg=='],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<GrantInstanceToEcrResponse>',
- 'description' => 'RpcResponse<GrantInstanceToEcrResponse>',
+ 'title' => 'RpcResponse<DescribeEcrDisabledRouteResponse>',
+ 'description' => 'RpcResponse<DescribeEcrDisabledRouteResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '查询禁用专线网关路由是否成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsInstanceId**,则代表所传入的请求参数**DtsInstanceId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
+ 'TotalCount' => ['description' => '总共的路由条目数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
+ 'MaxResults' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为10。', 'type' => 'integer', 'format' => 'int32', 'example' => '6'],
+ 'NextToken' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 如果NextToken为空表示没有下一次查询。'."\n"
+ .'- 如果NextToken有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'example' => 'gAAAAABkDTaRFnmxUoMLVOn8YTIgYFeL2ch8j0sJs8VCIU8SS5438m3D9X1VqspCcaUEHRN9I_AfVwMhZHAhcNivifK_OtQxJQ=='],
+ 'DisabledRouteEntryList' => [
+ 'description' => '查询的路由列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EcrId' => ['description' => '专线网关实例ID。', 'type' => 'string', 'example' => 'ecr-mezk2idmsd0vx2****'."\n"],
+ 'DestinationCidrBlock' => ['description' => '路由条目的目标网段。', 'type' => 'string', 'example' => '192.168.100.110/32'],
+ 'NexthopInstanceId' => ['description' => '下一跳实例ID。', 'type' => 'string', 'example' => 'br-hp3u4u5f03tfuljis****'."\n"],
+ 'NexthopInstanceRegionId' => ['description' => '下一跳实例所属的地域ID。', 'type' => 'string', 'example' => 'cn-hangzhou'],
+ 'GmtCreate' => ['description' => '创建路由条目的时间。', 'type' => 'string', 'example' => '1682317345'],
+ ],
+ ],
],
],
],
@@ -2689,287 +1503,201 @@
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IllegalParam.EcrOwnerAliUid',
- 'errorMessage' => 'The Ecr instance account parameter is invalid.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'IllegalParam.InstanceOwnerId',
- 'errorMessage' => 'Specified parameter InstanceOwnerId is not valid.',
- ],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
- 'title' => '将网络实例授权给专线网关(ECR)',
- 'description' => '将跨账号的网络实例关联至专线网关实例时,您需要将网络实例授权给专线网关实例。',
- ],
- 'CreateExpressConnectRouterAssociation' => [
- 'summary' => '专线网关ECR(Express Connect Router)关联专有网络(VPC)或者转发路由器(TR)。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '查询禁用的专线网关(ECR)路由',
+ 'summary' => '查询专线网关ECR(Express Connect Router)禁用的路由条目。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDisabledExpressConnectRouterRouteEntries'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeDisabledExpressConnectRouterRouteEntries',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"TotalCount\\": 2,\\n \\"MaxResults\\": 6,\\n \\"NextToken\\": \\"gAAAAABkDTaRFnmxUoMLVOn8YTIgYFeL2ch8j0sJs8VCIU8SS5438m3D9X1VqspCcaUEHRN9I_AfVwMhZHAhcNivifK_OtQxJQ==\\",\\n \\"DisabledRouteEntryList\\": [\\n {\\n \\"EcrId\\": \\"ecr-mezk2idmsd0vx2****\\\\n\\",\\n \\"DestinationCidrBlock\\": \\"192.168.100.110/32\\",\\n \\"NexthopInstanceId\\": \\"br-hp3u4u5f03tfuljis****\\\\n\\",\\n \\"NexthopInstanceRegionId\\": \\"cn-hangzhou\\",\\n \\"GmtCreate\\": \\"1682317345\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'DescribeExpressConnectRouter' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197620',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeCode' => '199357',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => false, 'example' => 'ecr-fu8rszhgv7623c****'],
],
[
- 'name' => 'AssociationRegionId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '关联资源所属的地域。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-hangzhou',
- ],
- ],
- [
- 'name' => 'TransitRouterOwnerId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '转发路由器实例所属阿里云账号(主账号)ID。默认值为当前登录的阿里云账号ID。'."\n"
- ."\n"
- .'> 如果您要加载跨账号的网络实例,本参数必填。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '189159362009****',
- ],
- ],
- [
- 'name' => 'TransitRouterId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '转发路由器ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'tr-2ze4i71c6be454e2l****',
- ],
- ],
- [
- 'name' => 'CenId',
+ 'name' => 'Name',
'in' => 'formData',
- 'schema' => [
- 'description' => '云企业网实例ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cen-of3o1the3i4gwb****',
- ],
+ 'schema' => ['description' => '专线网关实例名称。长度为0~128个字符。', 'type' => 'string', 'required' => false, 'example' => 'test'],
],
[
- 'name' => 'VpcOwnerId',
+ 'name' => 'NextToken',
'in' => 'formData',
- 'schema' => [
- 'description' => 'VPC实例所属阿里云账号(主账号)ID。默认为当前登录的阿里云账号ID。'."\n"
- ."\n"
- .'> 如果您要加载跨账号的网络实例,本参数必填。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '132193271328****',
- ],
+ 'schema' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
+ .'- 如果有下一次查询,取值为上一次 API 调用返回的 NextToken 值。', 'type' => 'string', 'required' => false, 'example' => 'e0a2dbeb69a8beeeb8194e92b702df3fd3e7bfe6ce7bfc16e0b5e8707e68181f'],
],
[
- 'name' => 'VpcId',
+ 'name' => 'MaxResults',
'in' => 'formData',
- 'schema' => [
- 'description' => 'VPC实例ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vpc-bp1h37fchc6jmfyln****',
- ],
+ 'schema' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为20。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
],
[
- 'name' => 'AllowedPrefixes',
+ 'name' => 'Tag',
'in' => 'formData',
'style' => 'repeatList',
'schema' => [
- 'description' => '允许的前缀路由列表。',
+ 'description' => '进行过滤的标签列表。最多支持20个标签。',
'type' => 'array',
'items' => [
- 'description' => '允许的前缀路由。',
- 'type' => 'string',
+ 'description' => '标签信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => '实例的标签键。一旦传入该值,则不允许为空字符串。'."\n"
+ ."\n"
+ .'最多支持64个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'],
+ 'Value' => ['description' => '标签值。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦输入该值,可以为空字符串。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'],
+ ],
'required' => false,
- 'example' => '192.0.20.0/24',
],
'required' => false,
- 'maxItems' => 10000,
+ 'maxItems' => 20,
],
],
[
- 'name' => 'CreateAttachment',
+ 'name' => 'ResourceGroupId',
'in' => 'formData',
- 'schema' => [
- 'description' => 'ECR绑定TR时是否发起关联。取值:'."\n"
- ."\n"
- .'- **true**:不需要在转发路由器侧发起关联。'."\n"
- .'- **false**:需要在转发路由器侧发起关联。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '专线网关实例所属资源组的ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2aq7f4va****'."\n"],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00**** '."\n",
- ],
- ],
- [
- 'name' => 'AllowedPrefixesMode',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '前缀路由模式,取值:'."\n"
- .'- MatchMode: 匹配模式, 仅发布配置的路由网段到IDC,对原有发布的明细路由进行回撤。'."\n"
- .'- IncrementalMode: 增量模式, 发布配置的路由网段到IDC的同时对原有发布落在配置的路由网段内的明细路由进行回撤,未落在配置的网段内的明细路由保持发布。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'MatchMode',
- ],
- ],
- [
- 'name' => 'Description',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '关联资源的描述信息。长度为0~128个字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<CreateAssociationResponse>',
- 'description' => 'RpcResponse<CreateAssociationResponse>',
+ 'title' => 'RpcResponse<DescribeEcrResponse>',
+ 'description' => 'RpcResponse<DescribeEcrResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '05130E79-588D-5C40-A718-C4863A59****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
- 'AssociationId' => [
- 'description' => '专线网关与VPC或TR的关联ID。',
- 'type' => 'string',
- 'example' => 'ecr-assoc-9p2qxx5phpca2m****',
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '查询已创建ECR实例是否成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.Name'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of Name **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
+ 'TotalCount' => ['description' => '专线网关实例总条数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
+ 'MaxResults' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为20。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
+ 'NextToken' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 如果 NextToken 为空表示没有下一次查询。'."\n"
+ .'- 如果 NextToken 有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'example' => 'AAAAAdDWBF2w6Olxc+cMPjUtUMpttDGZkffvHCfhBKKNEyCVaq+WUEzuUWpp9+QOApNf6g=='],
+ 'EcrList' => [
+ 'description' => '专线网关实例列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '专线网关实例。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EcrId' => ['description' => '专线网关实例ID。', 'type' => 'string', 'example' => 'ecr-mezk2idmsd0vx2****'],
+ 'OwnerId' => ['description' => '专线网关实例所属的阿里云账号ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '170646818729****'],
+ 'GmtCreate' => ['description' => '专线网关实例创建时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。', 'type' => 'string', 'example' => '2023-02-16T01:44:50Z'."\n"],
+ 'GmtModified' => ['description' => '专线网关实例修改时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。', 'type' => 'string', 'example' => '2023-02-16T01:44:50Z'],
+ 'Status' => ['description' => '服务实例的部署状态。可能值:'."\n"
+ ."\n"
+ .'- **ACTIVE**:已创建。'."\n"
+ ."\n"
+ .'- **UPDATING**:修改中。'."\n"
+ ."\n"
+ .'- **ASSOCIATING**:资源绑定中。'."\n"
+ ."\n"
+ .'- **DISSOCIATING**:资源解绑中。'."\n"
+ ."\n"
+ .'- **LOCKED_ATTACHING**:被外部系统绑定锁定。'."\n"
+ ."\n"
+ .'- **LOCKED_DETACHING**:被外部系统解绑锁定。'."\n"
+ ."\n"
+ .'- **RECLAIMING**:等待释放资源。'."\n"
+ ."\n"
+ .'- **DELETING**:删除中。', 'type' => 'string', 'example' => 'Active'],
+ 'BizStatus' => ['description' => '服务实例的业务状态。可能的值:'."\n"
+ ."\n"
+ .'- **Normal**:正常。'."\n"
+ ."\n"
+ .'- **FinancialLocked**:欠费锁定。', 'type' => 'string', 'example' => 'Normal'],
+ 'ResourceGroupId' => ['description' => '专线网关实例所属资源组的ID。', 'type' => 'string', 'example' => 'rg-aekzuscospt****'],
+ 'Tags' => [
+ 'description' => '标签列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签。',
+ 'type' => 'object',
+ 'properties' => [
+ 'TagKey' => ['description' => '专线网关实例的标签键。', 'type' => 'string', 'example' => 'test'],
+ 'TagValue' => ['description' => '专线网关实例的标签值。', 'type' => 'string', 'example' => 'test'],
+ ],
+ ],
+ ],
+ 'Name' => ['description' => '专线网关实例名称。', 'type' => 'string', 'example' => 'test'],
+ 'Description' => ['description' => '专线网关实例的描述信息。', 'type' => 'string', 'example' => 'test'],
+ 'AlibabaSideAsn' => ['description' => '专线网关实例的ASN号。', 'type' => 'integer', 'format' => 'int64', 'example' => '45104'],
+ ],
+ ],
],
],
],
@@ -2977,270 +1705,129 @@
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
- [
- 'errorCode' => 'QuotaExceeded.VpcCountPerEcr',
- 'errorMessage' => 'The number of VPC bound to the ECR exceeds the quota.',
- ],
- [
- 'errorCode' => 'QuotaExceeded.TrCountPerEcr',
- 'errorMessage' => 'The number of TR bound to the ECR exceeds the quota.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.AllowedPrefixes',
- 'errorMessage' => 'The prefix parameter format is invalid. Procedure.',
- ],
- [
- 'errorCode' => 'OperationDenied.NotGrantedByNodeOwner',
- 'errorMessage' => 'The node owner is not authorized.',
- ],
- [
- 'errorCode' => 'OperationFailed.CdtNotOpened',
- 'errorMessage' => 'The Cdt function is disabled.',
- ],
- [
- 'errorCode' => 'OperationFailed.CdtCrossBoarderNotOpened',
- 'errorMessage' => 'The Cdt cross-border transmission function is disabled.',
- ],
- [
- 'errorCode' => 'OperationFailed.CrossBorderNotAllowed',
- 'errorMessage' => 'There is no qualification for creating cross-border links.',
- ],
- [
- 'errorCode' => 'ResourceNotFound.CenId',
- 'errorMessage' => 'CenId not found.',
- ],
- [
- 'errorCode' => 'ResourceNotFound.TrId',
- 'errorMessage' => 'TRId not found.',
- ],
- [
- 'errorCode' => 'Conflict.ASNOfVBR',
- 'errorMessage' => 'ASN already used by other VBR.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.CenId',
- 'errorMessage' => 'The format of the entered Cen instance ID is incorrect.',
- ],
- [
- 'errorCode' => 'OperationDenied.CrossBidAssociating',
- 'errorMessage' => 'Cross-border binding of resources is subject to compliance constraints.',
- ],
- [
- 'errorCode' => 'ExclusiveParam.TransitRouterIdAndVpcId',
- 'errorMessage' => 'A private network instance cannot be bound to a forwarding router instance at the same time.',
- ],
- [
- 'errorCode' => 'IllegalParamSize.AllowedPrefixes',
- 'errorMessage' => 'The number of prefix routes exceeded the quota.',
- ],
- [
- 'errorCode' => 'OperationDenied.CrossAccountAttaching',
- 'errorMessage' => 'If the forwarding router is bound to another account, perform this operation on the same account.',
- ],
- [
- 'errorCode' => 'OperationDenied.AttachmentInCurrentRegionExisted',
- 'errorMessage' => 'Only one forwarding router can be bound to an area.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'OperationFailed.CallingVpcYaochi',
- 'errorMessage' => 'The system is abnormal. Please try again later.',
- ],
- [
- 'errorCode' => 'ResourceAlreadyExist.TransitRouterId',
- 'errorMessage' => 'The specified resource of transit router already exists.',
- ],
- [
- 'errorCode' => 'ResourceAlreadyExist.VpcId',
- 'errorMessage' => 'The specified resource of VpcId already exists.',
- ],
- [
- 'errorCode' => 'Conflict.AllowedPrefixes',
- 'errorMessage' => 'The allowed route prefixes [%s] is conflict.',
- ],
- [
- 'errorCode' => 'UnsupportedFeature.JumboFrame',
- 'errorMessage' => 'The region where the sub-instance is located does not support the jumbo frame feature and cannot be attached to the express connect router.',
- ],
- [
- 'errorCode' => 'InternalErrorTemp',
- 'errorMessage' => 'The request processing has failed due to some unknown error.',
- ],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
],
- 404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '查询专线网关(ECR)列表',
+ 'summary' => '查询专线网关ECR(Express Connect Router)列表。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouter'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"AssociationId\\": \\"ecr-assoc-9p2qxx5phpca2m****\\"\\n}","type":"json"}]',
- 'title' => '专线网关(ECR)关联资源',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.Name\\",\\n \\"DynamicMessage\\": \\"The param format of Name **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"TotalCount\\": 2,\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"AAAAAdDWBF2w6Olxc+cMPjUtUMpttDGZkffvHCfhBKKNEyCVaq+WUEzuUWpp9+QOApNf6g==\\",\\n \\"EcrList\\": [\\n {\\n \\"EcrId\\": \\"ecr-mezk2idmsd0vx2****\\",\\n \\"OwnerId\\": 0,\\n \\"GmtCreate\\": \\"2023-02-16T01:44:50Z\\\\n\\",\\n \\"GmtModified\\": \\"2023-02-16T01:44:50Z\\",\\n \\"Status\\": \\"Active\\",\\n \\"BizStatus\\": \\"Normal\\",\\n \\"ResourceGroupId\\": \\"rg-aekzuscospt****\\",\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"test\\",\\n \\"TagValue\\": \\"test\\"\\n }\\n ],\\n \\"Name\\": \\"test\\",\\n \\"Description\\": \\"test\\",\\n \\"AlibabaSideAsn\\": 45104\\n }\\n ]\\n}","type":"json"}]',
],
- 'DeleteExpressConnectRouterAssociation' => [
- 'summary' => '解除专线网关ECR(Express Connect Router)与专有网络(VPC)或者转发路由器的关联关系。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'DescribeExpressConnectRouterAllowedPrefixHistory' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197605',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- ],
+ 'abilityTreeCode' => '199365',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectDQ6AHD'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'AssociationId',
+ 'name' => 'InstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关与VPC或TR的关联ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-assoc-9p2qxx5phpca2m****',
- ],
+ 'schema' => ['description' => '专线网关加载的实例ID。'."\n"
+ ."\n"
+ .'> **InstanceId**参数和**AssociationId**参数必须输入一个。', 'type' => 'string', 'required' => false, 'example' => 'vbr-j6cwxhgg0s5nuephp****'],
],
[
- 'name' => 'DeleteAttachment',
+ 'name' => 'InstanceType',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关是否是删除与TR或VPC的关联关系。取值:'."\n"
- .'- **true**:是。'."\n"
- .'- **false**:否。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '网络实例的类型。取值:'."\n"
+ .'- **VPC**:虚拟专有网络实例。'."\n"
+ .'- **TR**:转发路由器实例。', 'type' => 'string', 'required' => false, 'example' => 'VPC'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg=='],
+ ],
+ [
+ 'name' => 'AssociationId',
+ 'in' => 'formData',
+ 'schema' => ['title' => '专线网关与专有网络VPC或转发路由器TR的关联的实例ID。', 'description' => '专线网关与专有网络VPC或转发路由器TR的关联的实例ID。'."\n"
+ ."\n"
+ .'> **InstanceId**参数和**AssociationId**参数必须输入一个。', 'type' => 'string', 'required' => false, 'example' => 'ecr-assoc-9p2qxx5phpca2m****'."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DeleteAssociationResponse>',
- 'description' => 'RpcResponse<DeleteAssociationResponse>',
+ 'title' => 'RpcResponse<DescribeEcrAllowedPrefixHistoryResponse>',
+ 'description' => 'RpcResponse<DescribeEcrAllowedPrefixHistoryResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '05130E79-588D-5C40-A718-C4863A59****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '接口返回信息',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
+ 'AllowedPrefixHistoryList' => [
+ 'description' => '历史前缀路由列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AllowedPrefix' => [
+ 'description' => '前缀路由。',
+ 'type' => 'array',
+ 'items' => ['description' => '前缀路由条目。', 'type' => 'string', 'example' => '10.0.**.**/1'],
+ ],
+ 'GmtCreate' => ['description' => '创建历史路由条目的时间。', 'type' => 'string', 'example' => '1673751163000'],
+ ],
+ ],
],
],
],
@@ -3248,76 +1835,43 @@
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'IncorrectStatus.EcrAssociation',
- 'errorMessage' => 'Ecr Association Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'OperationDenied.CrossAccountDisassociating',
- 'errorMessage' => 'Unbind cross-account.',
- ],
- [
- 'errorCode' => 'OperationDenied.EcrAttachmentExisted',
- 'errorMessage' => 'Ecr and TR have been linked.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'OperationFailed.UsedInRouteEntryNextHop',
- 'errorMessage' => 'The VPC also has a static route pointing to the ECR, and it is not allowed to disassociate the ECR.',
- ],
- [
- 'errorCode' => 'OperationFailed.CallingVpcYaochi',
- 'errorMessage' => 'The system is abnormal. Please try again later.',
- ],
+ ['errorCode' => 'ResourceNotFound.InstanceId', 'errorMessage' => 'The instance id does not exist.', 'description' => '当前输入的VPC/TR实例不存在'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
- [
- 'errorCode' => 'ResourceNotFound.AssociationId',
- 'errorMessage' => 'EcrAssociationId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
+ ['errorCode' => 'ResourceNotFound.AssociationId', 'errorMessage' => 'EcrAssociationId not found.', 'description' => 'ECR Association实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '查询专线网关(ECR)的前缀路由历史记录',
+ 'summary' => '查询专线网关ECR(Express Connect Router)前缀路由的历史记录。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterAllowedPrefixHistory'],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '专线网关(ECR)解除资源关联关系',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterAllowedPrefixHistory',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"AllowedPrefixHistoryList\\": [\\n {\\n \\"AllowedPrefix\\": [\\n \\"10.0.**.**/1\\"\\n ],\\n \\"GmtCreate\\": \\"1673751163000\\"\\n }\\n ]\\n}","type":"json"}]',
],
'DescribeExpressConnectRouterAssociation' => [
- 'summary' => '查询专线网关ECR(Express Connect Router)关联的专有网络(VPC)和转发路由器(TR)。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -3330,134 +1884,90 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '199364',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
'name' => 'AssociationId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关与VPC或TR的关联ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ecr-assoc-9p2qxx5phpca2m****',
- ],
+ 'schema' => ['description' => '专线网关与VPC或TR的关联ID。', 'type' => 'string', 'required' => false, 'example' => 'ecr-assoc-9p2qxx5phpca2m****'],
],
[
'name' => 'AssociationRegionId',
'in' => 'formData',
- 'schema' => [
- 'description' => 'VPC或TR所属的地域信息。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou',
- ],
+ 'schema' => ['description' => 'VPC或TR所属的地域信息。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'],
],
[
'name' => 'AssociationNodeType',
'in' => 'formData',
- 'schema' => [
- 'description' => '关联的资源类型:'."\n"
- ."\n"
- .'- **VPC**:专有网络。'."\n"
- ."\n"
- .'- **TR**:转发路由器。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'VPC',
- ],
+ 'schema' => ['description' => '关联的资源类型:'."\n"
+ ."\n"
+ .'- **VPC**:专有网络。'."\n"
+ ."\n"
+ .'- **TR**:转发路由器。', 'type' => 'string', 'required' => false, 'example' => 'VPC'],
],
[
'name' => 'VpcId',
'in' => 'formData',
- 'schema' => [
- 'description' => 'VPC实例的ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vpc-bp1h37fchc6jmfyln****',
- ],
+ 'schema' => ['description' => 'VPC实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1h37fchc6jmfyln****'],
],
[
'name' => 'TransitRouterId',
'in' => 'formData',
- 'schema' => [
- 'description' => '转发路由器实例的ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'tr-2ze4i71c6be454e2l****',
- ],
+ 'schema' => ['description' => '转发路由器实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'tr-2ze4i71c6be454e2l****'],
],
[
'name' => 'CenId',
'in' => 'formData',
- 'schema' => [
- 'description' => '云企业网实例的ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cen-of3o1the3i4gwb****',
- ],
+ 'schema' => ['description' => '云企业网实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'cen-of3o1the3i4gwb****'],
],
[
'name' => 'NextToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
- .'- 如果有下一次查询,取值为上一次API调用返回的NextToken值。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****',
- ],
+ 'schema' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
+ .'- 如果有下一次查询,取值为上一次API调用返回的NextToken值。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****'],
],
[
'name' => 'MaxResults',
'in' => 'formData',
- 'schema' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:20。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '20',
- ],
+ 'schema' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:20。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['type' => 'string'],
+ 'Value' => ['type' => 'string'],
+ ],
+ ],
+ 'maxItems' => 20,
],
],
],
@@ -3468,185 +1978,84 @@
'description' => 'RpcResponse<DescribeAssociationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '05130E79-588D-5C40-A718-C4863A59****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的 `%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage **返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage **返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
- 'TotalCount' => [
- 'description' => '关联的资源总数。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'MaxResults' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:20。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '20',
- ],
- 'NextToken' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
- .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****'."\n",
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '05130E79-588D-5C40-A718-C4863A59****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的 `%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage **返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage **返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
+ 'TotalCount' => ['description' => '关联的资源总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
+ 'MaxResults' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:20。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
+ 'NextToken' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
+ .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****'."\n"],
'AssociationList' => [
'description' => '关联的资源列表。',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
- 'AssociationId' => [
- 'description' => '专线网关与VPC或TR的关联ID。',
- 'type' => 'string',
- 'example' => 'ecr-assoc-9p2qxx5phpca2m****'."\n",
- ],
- 'RegionId' => [
- 'description' => '资源所属地域。',
- 'type' => 'string',
- 'example' => 'cn-hangzhou',
- ],
- 'OwnerId' => [
- 'description' => '资源所属的阿里云账号ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '167509154715****',
- ],
- 'GmtCreate' => [
- 'description' => '创建关联的时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。',
- 'type' => 'string',
- 'example' => '2024-01-09T12:18:23Z',
- ],
- 'GmtModified' => [
- 'description' => '修改关联的时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。',
- 'type' => 'string',
- 'example' => '2024-01-09T12:18:23Z',
- ],
- 'Status' => [
- 'description' => '关联资源的部署状态。可能值:'."\n"
- ."\n"
- .'- **CREATING**:创建中。'."\n"
- ."\n"
- .'- **ACTIVE**:已创建。'."\n"
- ."\n"
- .'- **INACTIVE**:专线网关关联转发路由器,待转发路由器关联专线网关状态。'."\n"
- ."\n"
- .'- **ASSOCIATING**:资源绑定中。'."\n"
- ."\n"
- .'- **DISSOCIATING**:资源解绑中。'."\n"
- ."\n"
- .'- **UPDATING**:修改中。'."\n"
- ."\n"
- .'- **DELETING**:删除中。',
- 'type' => 'string',
- 'example' => 'ACTIVE',
- ],
- 'AssociationNodeType' => [
- 'description' => '关联的资源类型:'."\n"
- ."\n"
- .'- **VPC**:专有网络。'."\n"
- ."\n"
- .'- **TR**:转发路由器。',
- 'type' => 'string',
- 'example' => 'VPC',
- ],
- 'TransitRouterOwnerId' => [
- 'description' => '转发路由器所属的阿里云账号ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '189159362009****'."\n",
- ],
- 'TransitRouterId' => [
- 'description' => '转发路由器实例的ID。',
- 'type' => 'string',
- 'example' => 'tr-2ze4i71c6be454e2l****'."\n",
- ],
- 'CenId' => [
- 'description' => '云企业网实例ID。',
- 'type' => 'string',
- 'example' => 'cen-5510frtx8zi54q****',
- ],
- 'VpcOwnerId' => [
- 'description' => 'VPC所属的阿里云账号ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '146757288406****',
- ],
- 'VpcId' => [
- 'description' => 'VPC实例的ID。',
- 'type' => 'string',
- 'example' => 'vpc-2zeeaxet4i2j1a7n7****',
- ],
+ 'AssociationId' => ['description' => '专线网关与VPC或TR的关联ID。', 'type' => 'string', 'example' => 'ecr-assoc-9p2qxx5phpca2m****'."\n"],
+ 'RegionId' => ['description' => '资源所属地域。', 'type' => 'string', 'example' => 'cn-hangzhou'],
+ 'OwnerId' => ['description' => '资源所属的阿里云账号ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '167509154715****'],
+ 'GmtCreate' => ['description' => '创建关联的时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。', 'type' => 'string', 'example' => '2024-01-09T12:18:23Z'],
+ 'GmtModified' => ['description' => '修改关联的时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。', 'type' => 'string', 'example' => '2024-01-09T12:18:23Z'],
+ 'Status' => ['description' => '关联资源的部署状态。可能值:'."\n"
+ ."\n"
+ .'- **CREATING**:创建中。'."\n"
+ ."\n"
+ .'- **ACTIVE**:已创建。'."\n"
+ ."\n"
+ .'- **INACTIVE**:专线网关关联转发路由器,待转发路由器关联专线网关状态。'."\n"
+ ."\n"
+ .'- **ASSOCIATING**:资源绑定中。'."\n"
+ ."\n"
+ .'- **DISSOCIATING**:资源解绑中。'."\n"
+ ."\n"
+ .'- **UPDATING**:修改中。'."\n"
+ ."\n"
+ .'- **DELETING**:删除中。', 'type' => 'string', 'example' => 'ACTIVE'],
+ 'AssociationNodeType' => ['description' => '关联的资源类型:'."\n"
+ ."\n"
+ .'- **VPC**:专有网络。'."\n"
+ ."\n"
+ .'- **TR**:转发路由器。', 'type' => 'string', 'example' => 'VPC'],
+ 'TransitRouterOwnerId' => ['description' => '转发路由器所属的阿里云账号ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '189159362009****'."\n"],
+ 'TransitRouterId' => ['description' => '转发路由器实例的ID。', 'type' => 'string', 'example' => 'tr-2ze4i71c6be454e2l****'."\n"],
+ 'CenId' => ['description' => '云企业网实例ID。', 'type' => 'string', 'example' => 'cen-5510frtx8zi54q****'],
+ 'VpcOwnerId' => ['description' => 'VPC所属的阿里云账号ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '146757288406****'],
+ 'VpcId' => ['description' => 'VPC实例的ID。', 'type' => 'string', 'example' => 'vpc-2zeeaxet4i2j1a7n7****'],
'AllowedPrefixes' => [
'description' => '允许的路由前缀列表。',
'type' => 'array',
+ 'items' => ['description' => '允许的路由前缀。', 'type' => 'string', 'example' => '192.0.**.**/28'],
+ ],
+ 'EcrId' => ['description' => '专线网关实例ID。', 'type' => 'string', 'example' => 'ecr-fu8rszhgv7623c****'],
+ 'AllowedPrefixesMode' => ['description' => '前缀路由模式,取值:'."\n"
+ .'- MatchMode: 匹配模式'."\n"
+ .'- IncrementalMode: 增量模式', 'type' => 'string', 'example' => 'MatchMode'],
+ 'Description' => ['description' => '关联资源的描述信息。', 'type' => 'string', 'example' => 'test '],
+ 'Tags' => [
+ 'type' => 'array',
'items' => [
- 'description' => '允许的路由前缀。',
- 'type' => 'string',
- 'example' => '192.0.**.**/28',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['type' => 'string'],
+ 'Value' => ['type' => 'string'],
+ ],
],
],
- 'EcrId' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'example' => 'ecr-fu8rszhgv7623c****',
- ],
- 'AllowedPrefixesMode' => [
- 'description' => '前缀路由模式,取值:'."\n"
- .'- MatchMode: 匹配模式'."\n"
- .'- IncrementalMode: 增量模式',
- 'type' => 'string',
- 'example' => 'MatchMode',
- ],
- 'Description' => [
- 'description' => '关联资源的描述信息。',
- 'type' => 'string',
- 'example' => 'test ',
- ],
+ 'TransitRouterName' => ['type' => 'string'],
+ 'VpcName' => ['type' => 'string'],
],
+ 'description' => '',
],
],
],
@@ -3655,166 +2064,172 @@
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"TotalCount\\": 1,\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****\\\\n\\",\\n \\"AssociationList\\": [\\n {\\n \\"AssociationId\\": \\"ecr-assoc-9p2qxx5phpca2m****\\\\n\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"OwnerId\\": 0,\\n \\"GmtCreate\\": \\"2024-01-09T12:18:23Z\\",\\n \\"GmtModified\\": \\"2024-01-09T12:18:23Z\\",\\n \\"Status\\": \\"ACTIVE\\",\\n \\"AssociationNodeType\\": \\"VPC\\",\\n \\"TransitRouterOwnerId\\": 0,\\n \\"TransitRouterId\\": \\"tr-2ze4i71c6be454e2l****\\\\n\\",\\n \\"CenId\\": \\"cen-5510frtx8zi54q****\\",\\n \\"VpcOwnerId\\": 0,\\n \\"VpcId\\": \\"vpc-2zeeaxet4i2j1a7n7****\\",\\n \\"AllowedPrefixes\\": [\\n \\"192.0.**.**/28\\"\\n ],\\n \\"EcrId\\": \\"ecr-fu8rszhgv7623c****\\",\\n \\"AllowedPrefixesMode\\": \\"MatchMode\\",\\n \\"Description\\": \\"test \\"\\n }\\n ]\\n}","type":"json"}]',
+ 'staticInfo' => ['returnType' => 'synchronous'],
'title' => '查询专线网关(ECR)关联的资源信息',
- ],
- 'DisableExpressConnectRouterRouteEntries' => [
- 'summary' => '禁用专线网关ECR(Express Connect Router)路由项。',
- 'methods' => [
- 'post',
+ 'summary' => '查询专线网关ECR(Express Connect Router)关联的专有网络(VPC)和转发路由器(TR)。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterAssociation'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterAssociation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"TotalCount\\": 1,\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****\\\\n\\",\\n \\"AssociationList\\": [\\n {\\n \\"AssociationId\\": \\"ecr-assoc-9p2qxx5phpca2m****\\\\n\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"OwnerId\\": 0,\\n \\"GmtCreate\\": \\"2024-01-09T12:18:23Z\\",\\n \\"GmtModified\\": \\"2024-01-09T12:18:23Z\\",\\n \\"Status\\": \\"ACTIVE\\",\\n \\"AssociationNodeType\\": \\"VPC\\",\\n \\"TransitRouterOwnerId\\": 0,\\n \\"TransitRouterId\\": \\"tr-2ze4i71c6be454e2l****\\\\n\\",\\n \\"CenId\\": \\"cen-5510frtx8zi54q****\\",\\n \\"VpcOwnerId\\": 0,\\n \\"VpcId\\": \\"vpc-2zeeaxet4i2j1a7n7****\\",\\n \\"AllowedPrefixes\\": [\\n \\"192.0.**.**/28\\"\\n ],\\n \\"EcrId\\": \\"ecr-fu8rszhgv7623c****\\",\\n \\"AllowedPrefixesMode\\": \\"MatchMode\\",\\n \\"Description\\": \\"test \\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"Value\\": \\"\\"\\n }\\n ],\\n \\"TransitRouterName\\": \\"\\",\\n \\"VpcName\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'DescribeExpressConnectRouterChildInstance' => [
+ 'summary' => '查询专线网关ECR(Express Connect Router)加载的边界路由器(VBR)。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197618',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectU328UX',
- ],
+ 'abilityTreeCode' => '199361',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectNHSYB7'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'DestinationCidrBlock',
+ 'name' => 'AssociationId',
'in' => 'formData',
- 'schema' => [
- 'description' => '网关路由表中路由条目的目标网段。',
- 'type' => 'string',
- 'required' => true,
- 'example' => '10.153.32.**/**',
- ],
+ 'schema' => ['description' => '专线网关与VBR的关联ID。', 'type' => 'string', 'required' => false, 'example' => 'ecr-assoc-9p2qxx5phpca2m****'."\n"],
],
[
- 'name' => 'NexthopInstanceId',
+ 'name' => 'ChildInstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => '下一跳实例ID',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'tr-hp3u4u5f03tfuljis****',
- ],
+ 'schema' => ['description' => '待卸载的网络实例ID。', 'type' => 'string', 'required' => false, 'example' => 'vbr-j6cwxhgg0s5nuephp****'],
+ ],
+ [
+ 'name' => 'ChildInstanceType',
+ 'in' => 'formData',
+ 'schema' => ['description' => '网络实例的类型。取值:**VBR**:边界路由器实例。', 'type' => 'string', 'required' => false, 'example' => 'VBR'],
+ ],
+ [
+ 'name' => 'ChildInstanceRegionId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '网络实例所在的地域。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'formData',
+ 'schema' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
+ .'- 如果有下一次查询,取值为上一次 API 调用返回的 NextToken 值。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****'],
+ ],
+ [
+ 'name' => 'MaxResults',
+ 'in' => 'formData',
+ 'schema' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为20。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg==',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DisableEcrRouteResponse>',
- 'description' => 'RpcResponse<DisableEcrRouteResponse>',
+ 'title' => 'RpcResponse<DescribeChildInstanceResponse>',
+ 'description' => 'RpcResponse<DescribeChildInstanceResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '05130E79-588D-5C40-A718-C4863A59****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
+ 'TotalCount' => ['description' => '关联的资源总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
+ 'MaxResults' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:20。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
+ 'NextToken' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 如果 NextToken 为空表示没有下一次查询。'."\n"
+ .'- 如果 NextToken 有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****'],
+ 'ChildInstanceList' => [
+ 'description' => '子实例列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '子实例信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EcrId' => ['title' => '专线网关实例ID。', 'description' => '专线网关实例ID。', 'type' => 'string', 'example' => 'ecr-mezk2idmsd0vx2****'],
+ 'AssociationId' => ['description' => '专线网关与VPC或TR的关联ID。', 'type' => 'string', 'example' => 'ecr-assoc-9p2qxx5phpca2m****'],
+ 'RegionId' => ['description' => '边界路由器所属地域。', 'type' => 'string', 'example' => 'cn-hangzhou'],
+ 'OwnerId' => ['description' => '边界路由器所属的阿里云账号ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '167509154715****'],
+ 'GmtCreate' => ['description' => '创建关联时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。', 'type' => 'string', 'example' => '2024-01-09T12:18:23Z'],
+ 'GmtModified' => ['description' => '修改关联时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。', 'type' => 'string', 'example' => '2024-01-09T12:18:23Z'],
+ 'Status' => ['description' => '关联资源的部署状态。可能值:'."\n"
+ ."\n"
+ .'- **CREATING**:创建中。'."\n"
+ ."\n"
+ .'- **ACTIVE**:已创建。'."\n"
+ ."\n"
+ .'- **ASSOCIATING**:资源绑定中。'."\n"
+ ."\n"
+ .'- **DISSOCIATING**:资源解绑中。'."\n"
+ ."\n"
+ .'- **UPDATING**:修改中。'."\n"
+ ."\n"
+ .'- **DELETING**:删除中。', 'type' => 'string', 'example' => 'ACTIVE'],
+ 'ChildInstanceId' => ['description' => '边界路由器实例ID。', 'type' => 'string', 'example' => 'vbr-gw8vjq2zjux3ifsc9****'],
+ 'ChildInstanceType' => ['description' => '子实例类型。取值:**VBR**边界路由器。', 'type' => 'string', 'example' => 'VBR'],
+ 'ChildInstanceRegionId' => ['description' => '子实例所属地域。', 'type' => 'string', 'example' => 'cn-hangzhou'],
+ 'ChildInstanceOwnerId' => ['description' => '子实例所属的阿里云账号ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '112101171212****'],
+ 'Description' => ['description' => '子实例描述信息', 'type' => 'string', 'example' => 'test '],
+ 'ChildInstanceName' => ['type' => 'string'],
+ ],
+ ],
],
],
],
@@ -3822,179 +2237,110 @@
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ResourceNotFound.NexthopInstanceId',
- 'errorMessage' => 'The next hop instance does not exist.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.DestinationCidrBlock',
- 'errorMessage' => 'The format of the specified destination Cidr route parameter is incorrect.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'ResourceInCreating.NexthopInstanceId',
- 'errorMessage' => 'The next hop instance is being created.',
- ],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '禁用专线网关(ECR)路由项',
- ],
- 'EnableExpressConnectRouterRouteEntries' => [
- 'summary' => '启用专线网关ECR(Express Connect Router)路由条目。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '查询专线网关(ECR)绑定的子实例信息',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterChildInstance'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterChildInstance',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"TotalCount\\": 1,\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****\\",\\n \\"ChildInstanceList\\": [\\n {\\n \\"EcrId\\": \\"ecr-mezk2idmsd0vx2****\\",\\n \\"AssociationId\\": \\"ecr-assoc-9p2qxx5phpca2m****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"OwnerId\\": 0,\\n \\"GmtCreate\\": \\"2024-01-09T12:18:23Z\\",\\n \\"GmtModified\\": \\"2024-01-09T12:18:23Z\\",\\n \\"Status\\": \\"ACTIVE\\",\\n \\"ChildInstanceId\\": \\"vbr-gw8vjq2zjux3ifsc9****\\",\\n \\"ChildInstanceType\\": \\"VBR\\",\\n \\"ChildInstanceRegionId\\": \\"cn-hangzhou\\",\\n \\"ChildInstanceOwnerId\\": 0,\\n \\"Description\\": \\"test \\",\\n \\"ChildInstanceName\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'DescribeExpressConnectRouterInterRegionTransitMode' => [
+ 'summary' => '查询专线网关ECR(Express Connect Router)的跨地域转发模式。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197610',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect9IGKFS',
- ],
+ 'abilityTreeCode' => '199363',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectLCKWNS', 'FEATUREexpressconnect2V07Q4'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- ],
- [
- 'name' => 'DestinationCidrBlock',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '网关路由表中路由条目的目标网段。',
- 'type' => 'string',
- 'required' => true,
- 'example' => '10.153.32.**/**',
- ],
- ],
- [
- 'name' => 'NexthopInstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '下一跳实例ID',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'tr-hp3u4u5f03tfuljis****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg=='."\n",
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg=='],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<EnableEcrRouteResponse>',
- 'description' => 'RpcResponse<EnableEcrRouteResponse>',
+ 'title' => 'RpcResponse<DescribeEcrRegionTransitModeResponse>',
+ 'description' => 'RpcResponse<DescribeEcrRegionTransitModeResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
+ 'InterRegionTransitModeList' => [
+ 'description' => '跨域转发模式列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionId' => ['description' => '专线网关所属的地域ID。', 'type' => 'string', 'example' => 'cn-hangzhou'],
+ 'Mode' => ['description' => 'ECR跨域转发模式,取值:'."\n"
+ .'- **ECMP**:负载均衡模式。'."\n"
+ .'- **NearBy**:就近转发模式。', 'type' => 'string', 'example' => 'ECMP'],
+ ],
+ ],
],
],
],
@@ -4002,52 +2348,40 @@
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ResourceNotFound.NexthopInstanceId',
- 'errorMessage' => 'The next hop instance does not exist.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.DestinationCidrBlock',
- 'errorMessage' => 'The format of the specified destination Cidr route parameter is incorrect.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'ResourceInCreating.NexthopInstanceId',
- 'errorMessage' => 'The next hop instance is being created.',
- ],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '启用专线网关(ECR)路由项',
- ],
- 'DescribeDisabledExpressConnectRouterRouteEntries' => [
- 'summary' => '查询专线网关ECR(Express Connect Router)禁用的路由条目。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '查询专线网关(ECR)的跨域转发模式',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterInterRegionTransitMode'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterInterRegionTransitMode',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"InterRegionTransitModeList\\": [\\n {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Mode\\": \\"ECMP\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'DescribeExpressConnectRouterRegion' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -4059,180 +2393,58 @@
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199356',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectU328UX',
- ],
+ 'abilityTreeCode' => '199494',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- ],
- [
- 'name' => 'NextToken',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
- .'- 如果有下一次查询,取值为上一次 API 调用返回的NextToken值。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FFv4fzkNPW8Z+cZ+DBXXQ3Gmf3XlCgpBH43oaTYTAAcGc708Zb+pDyAGVJBo/MKsyrtZfPnX9Ztf02vgdIDyaNe8UuZdf/JJk069qxGKzqSKg=',
- ],
- ],
- [
- 'name' => 'MaxResults',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为10。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => '要查询的专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-fu8rszhgv7623c****'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg==',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DescribeEcrDisabledRouteResponse>',
- 'description' => 'RpcResponse<DescribeEcrDisabledRouteResponse>',
+ 'title' => 'RpcResponse<DescribeEcrRegionResponse>',
+ 'description' => 'RpcResponse<DescribeEcrRegionResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '查询禁用专线网关路由是否成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsInstanceId**,则代表所传入的请求参数**DtsInstanceId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
- 'TotalCount' => [
- 'description' => '总共的路由条目数。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '2',
- ],
- 'MaxResults' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为10。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '6',
- ],
- 'NextToken' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 如果NextToken为空表示没有下一次查询。'."\n"
- .'- 如果NextToken有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'example' => 'gAAAAABkDTaRFnmxUoMLVOn8YTIgYFeL2ch8j0sJs8VCIU8SS5438m3D9X1VqspCcaUEHRN9I_AfVwMhZHAhcNivifK_OtQxJQ==',
- ],
- 'DisabledRouteEntryList' => [
- 'description' => '查询的路由列表。',
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage **返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage **返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
+ 'RegionIdList' => [
+ 'description' => '存在子资源的地域列表。',
'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'EcrId' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'example' => 'ecr-mezk2idmsd0vx2****'."\n",
- ],
- 'DestinationCidrBlock' => [
- 'description' => '路由条目的目标网段。',
- 'type' => 'string',
- 'example' => '192.168.100.110/32',
- ],
- 'NexthopInstanceId' => [
- 'description' => '下一跳实例ID。',
- 'type' => 'string',
- 'example' => 'br-hp3u4u5f03tfuljis****'."\n",
- ],
- 'NexthopInstanceRegionId' => [
- 'description' => '下一跳实例所属的地域ID。',
- 'type' => 'string',
- 'example' => 'cn-hangzhou',
- ],
- 'GmtCreate' => [
- 'description' => '创建路由条目的时间。',
- 'type' => 'string',
- 'example' => '1682317345',
- ],
- ],
- ],
+ 'items' => ['description' => '存在子资源的地域。', 'type' => 'string', 'example' => '[\\"cn-shanghai\\"]'],
],
],
],
@@ -4240,40 +2452,40 @@
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '查询专线网关(ECR)相关资源的所在地域列表',
+ 'summary' => '查询专线网关ECR(Express Connect Router)相关资源的所在地域列表。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterRegion'],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"TotalCount\\": 2,\\n \\"MaxResults\\": 6,\\n \\"NextToken\\": \\"gAAAAABkDTaRFnmxUoMLVOn8YTIgYFeL2ch8j0sJs8VCIU8SS5438m3D9X1VqspCcaUEHRN9I_AfVwMhZHAhcNivifK_OtQxJQ==\\",\\n \\"DisabledRouteEntryList\\": [\\n {\\n \\"EcrId\\": \\"ecr-mezk2idmsd0vx2****\\\\n\\",\\n \\"DestinationCidrBlock\\": \\"192.168.100.110/32\\",\\n \\"NexthopInstanceId\\": \\"br-hp3u4u5f03tfuljis****\\\\n\\",\\n \\"NexthopInstanceRegionId\\": \\"cn-hangzhou\\",\\n \\"GmtCreate\\": \\"1682317345\\"\\n }\\n ]\\n}","type":"json"}]',
- 'title' => '查询禁用的专线网关(ECR)路由',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterRegion',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"RegionIdList\\": [\\n \\"[\\\\\\\\\\\\\\"cn-shanghai\\\\\\\\\\\\\\"]\\"\\n ]\\n}","type":"json"}]',
],
'DescribeExpressConnectRouterRouteEntries' => [
- 'summary' => '查询专线网关ECR(Express Connect Router)路由条目。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -4286,121 +2498,68 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '199353',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect9IGKFS',
- ],
+ 'abilityTreeNodes' => ['FEATUREexpressconnect9IGKFS'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
'name' => 'QueryRegionId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例所属地域。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou',
- ],
+ 'schema' => ['description' => '专线网关实例所属地域。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'],
],
[
'name' => 'DestinationCidrBlock',
'in' => 'formData',
- 'schema' => [
- 'description' => '要查询的路由条目的目标网段。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '172.20.4.0/24',
- ],
+ 'schema' => ['description' => '要查询的路由条目的目标网段。', 'type' => 'string', 'required' => false, 'example' => '172.20.4.0/24'],
],
[
'name' => 'NexthopInstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => '下一跳实例ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vbr-hp3u4u5f03tfuljis****',
- ],
+ 'schema' => ['description' => '下一跳实例ID', 'type' => 'string', 'required' => false, 'example' => 'vbr-hp3u4u5f03tfuljis****'],
],
[
'name' => 'AsPath',
'in' => 'formData',
- 'schema' => [
- 'description' => '路由条目经过的AS路径。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '[64993,64512]',
- ],
+ 'schema' => ['description' => '路由条目经过的AS路径。', 'type' => 'string', 'required' => false, 'example' => '[64993,64512]'],
],
[
'name' => 'Community',
'in' => 'formData',
- 'schema' => [
- 'description' => 'BGP路由条目携带的Community值。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '9001:9263',
- ],
+ 'schema' => ['description' => 'BGP路由条目携带的Community值。', 'type' => 'string', 'required' => false, 'example' => '9001:9263'],
],
[
'name' => 'NextToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
- .'- 如果有下一次查询,取值为上一次API调用返回的NextToken值。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg==',
- ],
+ 'schema' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
+ .'- 如果有下一次查询,取值为上一次API调用返回的NextToken值。', 'type' => 'string', 'required' => false, 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg=='],
],
[
'name' => 'MaxResults',
'in' => 'formData',
- 'schema' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为10。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
@@ -4410,116 +2569,40 @@
'description' => 'RpcResponse<DescribeEcrRouteResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '实例操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
- 'TotalCount' => [
- 'description' => '列表总条目数。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '2',
- ],
- 'MaxResults' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:10。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'NextToken' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
- .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'example' => 'gAAAAABkWwFTUMNCdWC0VMYOIylA56Hx6JUfCZlk5hQ5g_fnKmetN6303tqq5UJ2ouJzyT2fDOdzb-NqyEB5jcY8Z2euX7qHDA==',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '实例操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
+ 'TotalCount' => ['description' => '列表总条目数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
+ 'MaxResults' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'NextToken' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
+ .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'example' => 'gAAAAABkWwFTUMNCdWC0VMYOIylA56Hx6JUfCZlk5hQ5g_fnKmetN6303tqq5UJ2ouJzyT2fDOdzb-NqyEB5jcY8Z2euX7qHDA=='],
'RouteEntriesList' => [
'description' => '路由条目列表。',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
- 'DestinationCidrBlock' => [
- 'description' => '路由条目的目标网段。',
- 'type' => 'string',
- 'example' => '192.168.0.**/**',
- ],
- 'Status' => [
- 'description' => '专线网关实例的状态',
- 'type' => 'string',
- 'example' => 'ACTIVE',
- ],
- 'NexthopInstanceId' => [
- 'description' => '下一跳实例ID。',
- 'type' => 'string',
- 'example' => 'vbr-hp3u4u5f03tfuljis****',
- ],
- 'NexthopInstanceRegionId' => [
- 'description' => '下一跳实例所属的地域。',
- 'type' => 'string',
- 'example' => 'cn-hangzhou',
- ],
- 'AsPath' => [
- 'description' => '路由条目经过的AS路径。',
- 'type' => 'string',
- 'example' => '[64993,64512]',
- ],
- 'Community' => [
- 'description' => 'BGP路由条目携带的Community值。',
- 'type' => 'string',
- 'example' => '9001:9263',
- ],
- 'Med' => [
- 'description' => 'BGP路由条目携带的MED值,作用于专线网关与TR之间。 '."\n"
- .'- MED可配置为2000(配置后则此TR与ECR作为Default路径) '."\n"
- .'- 非Default路径时,此MED值为空 '."\n"
- .'- 同一个CEN的TR只能有一个关联对象的MED为可配置为2000',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '2000',
- ],
+ 'DestinationCidrBlock' => ['description' => '路由条目的目标网段。', 'type' => 'string', 'example' => '192.168.0.**/**'],
+ 'Status' => ['description' => '专线网关实例的状态', 'type' => 'string', 'example' => 'ACTIVE'],
+ 'NexthopInstanceId' => ['description' => '下一跳实例ID。', 'type' => 'string', 'example' => 'vbr-hp3u4u5f03tfuljis****'],
+ 'NexthopInstanceRegionId' => ['description' => '下一跳实例所属的地域。', 'type' => 'string', 'example' => 'cn-hangzhou'],
+ 'AsPath' => ['description' => '路由条目经过的AS路径。', 'type' => 'string', 'example' => '[64993,64512]'],
+ 'Community' => ['description' => 'BGP路由条目携带的Community值。', 'type' => 'string', 'example' => '9001:9263'],
+ 'Med' => ['description' => 'BGP路由条目携带的MED值,作用于专线网关与TR之间。 '."\n"
+ .'- MED可配置为2000(配置后则此TR与ECR作为Default路径) '."\n"
+ .'- 非Default路径时,此MED值为空 '."\n"
+ .'- 同一个CEN的TR只能有一个关联对象的MED为可配置为2000', 'type' => 'integer', 'format' => 'int64', 'example' => '2000'],
],
],
],
@@ -4529,178 +2612,42 @@
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IllegalParamFormat.DestinationCidrBlock',
- 'errorMessage' => 'The format of the specified destination Cidr route parameter is incorrect.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
+ ['errorCode' => 'IllegalParamFormat.DestinationCidrBlock', 'errorMessage' => 'The format of the specified destination Cidr route parameter is incorrect.', 'description' => '您当前指定的目的Cidr路由参数格式错误,请核对后重新输入。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"TotalCount\\": 2,\\n \\"MaxResults\\": 10,\\n \\"NextToken\\": \\"gAAAAABkWwFTUMNCdWC0VMYOIylA56Hx6JUfCZlk5hQ5g_fnKmetN6303tqq5UJ2ouJzyT2fDOdzb-NqyEB5jcY8Z2euX7qHDA==\\",\\n \\"RouteEntriesList\\": [\\n {\\n \\"DestinationCidrBlock\\": \\"192.168.0.**/**\\",\\n \\"Status\\": \\"ACTIVE\\",\\n \\"NexthopInstanceId\\": \\"vbr-hp3u4u5f03tfuljis****\\",\\n \\"NexthopInstanceRegionId\\": \\"cn-hangzhou\\",\\n \\"AsPath\\": \\"[64993,64512]\\",\\n \\"Community\\": \\"9001:9263\\",\\n \\"Med\\": 2000\\n }\\n ]\\n}","type":"json"}]',
+ 'staticInfo' => ['returnType' => 'synchronous'],
'title' => '查询专线网关(ECR)的路由条目',
- ],
- 'MoveResourceGroup' => [
- 'summary' => '修改专线网关所属的资源组。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
- ],
- 'operationType' => 'write',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '200712',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectJZV4YI',
+ 'summary' => '查询专线网关ECR(Express Connect Router)路由条目。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterRouteEntries'],
],
],
- 'parameters' => [
+ 'ramActions' => [
[
- 'name' => 'NewResourceGroupId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '新资源组ID。'."\n"
- .'关于资源组的更多信息,请参见[什么是资源组](~~94475~~)。'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rg-acfmvt3xpr5****',
- ],
- ],
- [
- 'name' => 'ResourceType',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '资源类型。可能的值:'."\n"
- ."\n"
- .'- EXPRESSCONNECTROUTER:专线网关。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'EXPRESSCONNECTROUTER',
- ],
- ],
- [
- 'name' => 'ResourceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '需要修改资源组的云资源的实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-897j0jooxyr1aq****',
- ],
- ],
- [
- 'name' => 'DryRun',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求,取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改资源组。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n"
- .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- ],
- [
- 'name' => 'ClientToken',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '用于保证请求的幂等性,防止重复提交请求。由客户端生成该参数值,要保证在不同请求间唯一,最大值不超过64个ASCII字符,且该参数值中不能包含非ASCII字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'RpcResponse<BaseResult>',
- 'description' => 'RpcResponse<BaseResult>',
- 'type' => 'object',
- 'properties' => [
- 'RequestId' => [
- 'description' => '本次请求的ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **true**:成功。'."\n"
- .'- **false**:失败。',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '接口返回信息',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterRouteEntries',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\"\\n}","type":"json"}]',
- 'title' => '修改专线网关所属的资源组',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"TotalCount\\": 2,\\n \\"MaxResults\\": 10,\\n \\"NextToken\\": \\"gAAAAABkWwFTUMNCdWC0VMYOIylA56Hx6JUfCZlk5hQ5g_fnKmetN6303tqq5UJ2ouJzyT2fDOdzb-NqyEB5jcY8Z2euX7qHDA==\\",\\n \\"RouteEntriesList\\": [\\n {\\n \\"DestinationCidrBlock\\": \\"192.168.0.**/**\\",\\n \\"Status\\": \\"ACTIVE\\",\\n \\"NexthopInstanceId\\": \\"vbr-hp3u4u5f03tfuljis****\\",\\n \\"NexthopInstanceRegionId\\": \\"cn-hangzhou\\",\\n \\"AsPath\\": \\"[64993,64512]\\",\\n \\"Community\\": \\"9001:9263\\",\\n \\"Med\\": 2000\\n }\\n ]\\n}","type":"json"}]',
],
- 'ListTagResources' => [
- 'summary' => '查询专线网关绑定的标签列表。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'DescribeFlowLogs' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -4709,47 +2656,39 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '200710',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectI9TIJD',
- ],
+ 'abilityTreeCode' => '253981',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectH4NOM0'],
],
'parameters' => [
[
- 'name' => 'ResourceType',
+ 'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '资源类型。支持的类型为 EXPRESSCONNECTROUTER,即专线网关实例。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'EXPRESSCONNECTROUTER',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-a5xqrgbeidz1w8****'],
],
[
- 'name' => 'ResourceId',
+ 'name' => 'DryRun',
'in' => 'formData',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => '专线网关实例ID列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => '专线网关实例ID。'."\n"
- ."\n"
- .'最多可以指定50个资源组ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ecr-kgzj75zpq50hqz****',
- ],
- 'required' => false,
- 'maxItems' => 100,
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
- 'name' => 'Tag',
+ 'name' => 'ClientToken',
'in' => 'formData',
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
'style' => 'repeatList',
'schema' => [
'description' => '标签。'."\n"
@@ -4757,311 +2696,395 @@
.'最多可以绑定20个标签。',
'type' => 'array',
'items' => [
- 'description' => '标签。',
+ 'description' => '标签列表。',
'type' => 'object',
'properties' => [
- 'Key' => [
- 'description' => '资源的标签键。'."\n"
- ."\n"
- .'一旦传入该值,则不允许为空字符串。最多支持64个字符,不能以`aliyun`或者`acs:`开头,不能包含`http://`或者`https:// `。'."\n"
- ."\n"
- .'一次最多支持输入20个标签的标签键。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestKey',
- ],
- 'Value' => [
- 'description' => '标签值。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦输入该值,可以为空字符串。'."\n"
- ."\n"
- .'一次调用最多支持添加20个标签值。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestValue',
- ],
+ 'Key' => ['description' => '资源的标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'],
+ 'Value' => ['description' => '监听的标签值。N的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持128个字符,不能以acs:开头,不能包含http://或者https://。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'],
],
'required' => false,
],
'required' => false,
- 'enumValueTitles' => [],
'maxItems' => 20,
],
],
[
'name' => 'NextToken',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 如果 NextToken 为空表示没有下一次查询。'."\n"
- .'- 如果 NextToken 有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 如果 NextToken 为空表示没有下一次查询。'."\n"
+ .'- 如果 NextToken 有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'required' => false, 'example' => 'gAAAAABkWw*******'],
],
[
'name' => 'MaxResults',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '单次请求返回结果的最大条数。默认值:20。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '20',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:10。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'],
+ ],
+ [
+ 'name' => 'FlowLogId',
+ 'in' => 'query',
+ 'schema' => ['description' => '流日志实例ID。', 'type' => 'string', 'required' => false, 'example' => 'ecr-flog-jqnr0veifo5d****'],
+ ],
+ [
+ 'name' => 'FlowLogName',
+ 'in' => 'query',
+ 'schema' => ['description' => '流日志名称。长度为0~128个字符。', 'type' => 'string', 'required' => false, 'example' => 'same-flowlog'],
+ ],
+ [
+ 'name' => 'ProjectName',
+ 'in' => 'query',
+ 'schema' => ['description' => '存储捕获流量的 Project。'."\n"
+ .'- 如果您已经在当前地域创建了 Project,您可以输入已创建的 Project 的名称。'."\n"
+ .'- 如果您未在当前地域创建 Project,您可以为 Project 自定义名称,系统会帮您自动创建 Project。'."\n"
+ ."\n\n"
+ .'Project 名称在阿里云地域内全局唯一,创建后不可修改。其命名规则如下:'."\n"
+ .' '."\n"
+ .'- Project名称必须全局唯一。'."\n"
+ .'- 只能包括小写'."\n"
+ .'- 字母、数字和短划线(-)。'."\n"
+ .'- 必须以小写字母或者数字开头和结尾。'."\n"
+ .'- 长度为 3~63 字符。', 'type' => 'string', 'required' => false, 'example' => 'myFlowlog'],
+ ],
+ [
+ 'name' => 'LogStoreName',
+ 'in' => 'query',
+ 'schema' => ['description' => '存储捕获流量的 Logstore。'."\n"
+ .'- 如果您已经在当前地域创建了 Logstore,您可以输入已创建的 Logstore 的名称。'."\n"
+ .'- 如果您未在当前地域创建 Logstore,您可以为 Logstore 自定义名称,系统会帮您自动创建 Logstore。 Logstore 名称。其命名规则如下:'."\n"
+ ."\n"
+ .'- 同一个 Project 下,Logstore 名称不可重复。'."\n"
+ .'- 只能包括小写字母、数字、短划线(-)和下划线(_)。'."\n"
+ .'- 必须以小写字母或者数字开头和结尾。'."\n"
+ .'- 长度为 3~63 字符。', 'type' => 'string', 'required' => false, 'example' => 'myFlowlog'],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => ['description' => '专线网关加载的VBR实例ID。', 'type' => 'string', 'required' => false, 'example' => 'vbr-j6cwxhgg0s5nuephp****'."\n"],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => '流日志实例所属资源组的ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2aq7f4va****'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<ListEcrTagResourcesResponse>',
- 'description' => '查询结果。',
+ 'title' => 'RpcResponse<CreateAssociationResponse>',
+ 'description' => 'RpcResponse<CreateAssociationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'TagResources' => [
- 'description' => '标签列表。',
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
+ 'TotalCount' => ['description' => '符合查询条件的记录总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '11'],
+ 'MaxResults' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为10。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'NextToken' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
+ .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****'],
+ 'FlowLogs' => [
+ 'description' => '流日志信息列表。',
'type' => 'array',
'items' => [
- 'description' => '资源绑定的标签信息。',
+ 'description' => '流日志信息。',
'type' => 'object',
'properties' => [
- 'ResourceId' => [
- 'description' => '资源ID。',
- 'type' => 'string',
- 'example' => 'ecr-897j0jooxyr1aq****',
- ],
- 'ResourceType' => [
- 'description' => '资源类型。返回值固定为 **EXPRESSCONNECTROUTER**,即专线网关实例。',
- 'type' => 'string',
- 'example' => 'EXPRESSCONNECTROUTER',
- ],
- 'TagKey' => [
- 'description' => '资源的标签键。',
- 'type' => 'string',
- 'example' => 'TestKey',
- ],
- 'TagValue' => [
- 'description' => '专线网关的标签值。',
- 'type' => 'string',
- 'example' => 'TestValue',
+ 'FlowLogId' => ['description' => '流日志实例ID。', 'type' => 'string', 'example' => 'ecr-flog-leypqehtgtia2*****'],
+ 'EcrId' => ['description' => '专线网关实例ID。', 'type' => 'string', 'example' => 'ecr-h4cop1khw98*****'],
+ 'RegionId' => ['description' => 'ECR所属的地域ID。', 'type' => 'string', 'example' => 'cn-shanghai'],
+ 'Status' => ['description' => '流日志的状态。'."\n"
+ .'- **Active**:已启动。'."\n"
+ .'- **Inactive**:未启动。', 'type' => 'string', 'example' => 'Active'],
+ 'FlowLogName' => ['description' => '流日志的名称。', 'type' => 'string', 'example' => 'myFlowlog'],
+ 'Description' => ['description' => '专线网关实例的描述信息。', 'type' => 'string', 'example' => 'myFlowlog'],
+ 'Interval' => ['description' => '流日志捕获流量的捕获窗口时长。单位:秒。取值:'."\n"
+ ."\n"
+ .'- **60** '."\n"
+ .'- **600**'."\n"
+ ."\n"
+ .'默认值:**600**。', 'type' => 'integer', 'format' => 'int32', 'example' => '600'],
+ 'SamplingRate' => ['description' => '采样比例。取值'."\n"
+ ."\n"
+ .'- **1:4096**'."\n"
+ .'- **1:2048**'."\n"
+ .'- **1:1024**'."\n"
+ ."\n"
+ .'默认值:**1:4096**。', 'type' => 'string', 'example' => '1:4096 '],
+ 'LogStoreName' => ['description' => '存储捕获流量的 LogStore 名称。', 'type' => 'string', 'example' => 'FlowLogStore'],
+ 'ProjectName' => ['description' => '存储捕获流量的 Project 名称。', 'type' => 'string', 'example' => 'FlowLogProject'],
+ 'InstanceType' => ['description' => '网络实例的类型。取值:'."\n"
+ .'- **VBR**:边界路由器实例。', 'type' => 'string', 'example' => 'VBR'],
+ 'ResourceGroupId' => ['description' => '专线网关实例所属资源组的ID。', 'type' => 'string', 'example' => 'rg-aekzb3xwrexc4ry'],
+ 'Tags' => [
+ 'description' => '专线网关实例的标签键。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '专线网关实例的标签键。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => '实例的标签键。一旦传入该值,则不允许为空字符串。'."\n"
+ ."\n"
+ .'> 最多支持64个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'example' => 'TagKey'],
+ 'Value' => ['description' => '标签值。'."\n"
+ ."\n"
+ .'>最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦输入该值,可以为空字符串。', 'type' => 'string', 'example' => 'TagValue'],
+ ],
+ ],
],
+ 'InstanceId' => ['description' => '授权实例的ID。', 'type' => 'string', 'example' => 'vbr-9dpty76irpf4u15*****'],
+ 'CreationTime' => ['description' => '流日志的创建时间。'."\n"
+ .'时间按照 ISO8601 标准表示,并使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。', 'type' => 'string', 'example' => '2023-09-21T04:20Z'],
+ 'SlsRegionId' => ['description' => '日志服务的地域ID。', 'type' => 'string', 'example' => 'cn-hangzhou'],
],
],
],
- 'TotalCount' => [
- 'description' => '符合查询条件的记录总数。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '2',
- ],
- 'NextToken' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
- .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****',
- ],
- 'MaxResults' => [
- 'description' => '分页查询时每页行数。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '20',
- ],
],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"TagResources\\": [\\n {\\n \\"ResourceId\\": \\"ecr-897j0jooxyr1aq****\\",\\n \\"ResourceType\\": \\"EXPRESSCONNECTROUTER\\",\\n \\"TagKey\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\"\\n }\\n ],\\n \\"TotalCount\\": 2,\\n \\"NextToken\\": \\"AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****\\",\\n \\"MaxResults\\": 20\\n}","type":"json"}]',
- 'title' => '查询专线网关标签列表',
- ],
- 'UntagResources' => [
- 'summary' => '解绑专线网关的标签。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '查询流日志',
+ 'summary' => '查询流日志。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeFlowLogs'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeFlowLogs',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"TotalCount\\": 11,\\n \\"MaxResults\\": 10,\\n \\"NextToken\\": \\"AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****\\",\\n \\"FlowLogs\\": [\\n {\\n \\"FlowLogId\\": \\"ecr-flog-leypqehtgtia2*****\\",\\n \\"EcrId\\": \\"ecr-h4cop1khw98*****\\",\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"Status\\": \\"Active\\",\\n \\"FlowLogName\\": \\"myFlowlog\\",\\n \\"Description\\": \\"myFlowlog\\",\\n \\"Interval\\": 600,\\n \\"SamplingRate\\": \\"1:4096 \\",\\n \\"LogStoreName\\": \\"FlowLogStore\\",\\n \\"ProjectName\\": \\"FlowLogProject\\",\\n \\"InstanceType\\": \\"VBR\\",\\n \\"ResourceGroupId\\": \\"rg-aekzb3xwrexc4ry\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TagKey\\",\\n \\"Value\\": \\"TagValue\\"\\n }\\n ],\\n \\"InstanceId\\": \\"vbr-9dpty76irpf4u15*****\\",\\n \\"CreationTime\\": \\"2023-09-21T04:20Z\\",\\n \\"SlsRegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'DescribeInstanceGrantedToExpressConnectRouter' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '218206',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectI9TIJD',
- ],
+ 'abilityTreeCode' => '199352',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
- 'name' => 'ResourceId',
+ 'name' => 'EcrId',
'in' => 'formData',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => '专线网关实例的ID列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => '专线网关实例的 ID。最多支持解绑 50 个专线网关实例ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ecr-897j0jooxyr1aq****',
- ],
- 'required' => true,
- 'maxItems' => 100,
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'TagKey',
+ 'name' => 'InstanceRegionId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '授权网络实例所在的地域。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '授权实例的ID。', 'type' => 'string', 'required' => false, 'example' => 'vbr-j6cwxhgg0s5nuephp****'],
+ ],
+ [
+ 'name' => 'InstanceOwnerId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '授权网络实例所属阿里云账号(主账号)ID。', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1298452580502345'],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'formData',
+ 'schema' => ['description' => '网络实例的类型。取值:'."\n"
+ .'- **VBR**:边界路由器实例。'."\n"
+ .'- **VPC**:专有网络实例。', 'type' => 'string', 'required' => false, 'example' => 'VBR'],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'formData',
+ 'schema' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
+ .'- 如果有下一次查询,取值为上一次 API 调用返回的 NextToken 值。', 'type' => 'string', 'required' => false, 'example' => 'gAAAAABkyGzFbZR2NnxnyVk0EiL7F3qMBtBim8Es0mugRT3qb8yEHAMaHGanzuaHUmiEq9QRmok0RgxJAINBOJZa5KPjopEu_Q=='],
+ ],
+ [
+ 'name' => 'MaxResults',
+ 'in' => 'formData',
+ 'schema' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为20。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
+ ],
+ [
+ 'name' => 'TagModels',
'in' => 'formData',
'style' => 'repeatList',
'schema' => [
- 'description' => '要解绑的专线网关实例的标签键。',
+ 'description' => '标签列表。',
'type' => 'array',
'items' => [
- 'description' => '要解绑的专线网关实例的标签键。',
- 'type' => 'string',
+ 'type' => 'object',
+ 'properties' => [
+ 'TagKey' => ['description' => '资源的标签键。最多支持输入20个标签键。如果传入该值,则不能输入空字符串。'."\n"
+ ."\n"
+ .'最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'key'],
+ 'TagValue' => ['description' => '资源的标签值。最多支持输入20个标签值。如果传入该值,则不能输入空字符串。'."\n"
+ ."\n"
+ .'最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', 'type' => 'string', 'required' => false, 'example' => 'value'."\n"],
+ ],
'required' => false,
- 'example' => 'TestKey',
],
'required' => false,
'maxItems' => 100,
],
],
[
- 'name' => 'All',
+ 'name' => 'ResourceGroupId',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否解绑所有标签,只针对**TagKey**为空时有效。取值:'."\n"
- ."\n"
- .'- **true**:解绑专线网关实例的所有标签。'."\n"
- .'- **false**(默认值):不解绑专线网关实例的所有标签。'."\n"
- ."\n"
- .'> 您必须输入参数 **TagKey** 和参数 **All** 中的任意一个。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '实例所属的资源组ID。', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2tsvbnfe****'],
],
[
- 'name' => 'ResourceType',
+ 'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '资源类型。支持的类型为 **EXPRESSCONNECTROUTER**,即专线网关实例。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'EXPRESSCONNECTROUTER',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
- 'name' => 'DryRun',
+ 'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n"],
],
[
- 'name' => 'ClientToken',
+ 'name' => 'CallerType',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端 Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用 API 请求的 **RequestId** 作为 **ClientToken** 标识。每次 API 请求的 **RequestId** 不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => ' '."\n"
- .'02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '调用者类型'."\n"
+ ."\n"
+ .'- ECR'."\n"
+ .'- OTHER'."\n"
+ ."\n"
+ .'默认值: ECR', 'type' => 'string', 'required' => false, 'example' => 'ECR'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<BaseResult>',
- 'description' => 'RpcResponse<BaseResult>',
+ 'title' => 'RpcResponse<DescribeInstanceGrantedToEcrResponse>',
+ 'description' => 'RpcResponse<DescribeInstanceGrantedToEcrResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n",
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **true**:成功。'."\n"
- .'- **false**:失败。',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '接口返回信息',
- 'type' => 'string',
- 'example' => 'OK',
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.Name'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of Name **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
+ 'TotalCount' => ['description' => '授权给专线网关的网络实例总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'MaxResults' => ['description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:20。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
+ 'NextToken' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
+ .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'example' => 'FFlMqGuJ10uN3l+FX/cBrGDNXUOUifNeOuAJlT4dc3vsWD6DsNSFAC2FtpeH5QOSG2WFdyRoun7gSLCm5o69YnAQ=='],
+ 'EcrGrantedInstanceList' => [
+ 'description' => 'ECR授权实例列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'GrantId' => ['description' => '授权ID。', 'type' => 'string', 'example' => 'gr-8gdelo13mi99g1****'],
+ 'Status' => ['description' => '授权网络实例的状态。', 'type' => 'string', 'example' => 'Active'],
+ 'GmtCreate' => ['description' => '创建实例的时间。', 'type' => 'string', 'example' => '1669023139000'],
+ 'GmtModified' => ['description' => '修改实例的时间', 'type' => 'string', 'example' => '1669023139000'],
+ 'EcrId' => ['description' => '专线网关实例ID。', 'type' => 'string', 'example' => 'ecr-mezk2idmsd0vx2****'],
+ 'NodeId' => ['description' => '授权实例ID。', 'type' => 'string', 'example' => 'vbr-j6cwxhgg0s5nuephp****'."\n"],
+ 'NodeType' => ['description' => '网络实例的类型。取值:'."\n"
+ .'- **VBR**:边界路由器实例。'."\n"
+ .'- **VPC**:虚拟专有网络实例。', 'type' => 'string', 'example' => 'VBR'],
+ 'NodeRegionId' => ['description' => '授权实例所属地域ID。', 'type' => 'string', 'example' => 'cn-hangzhou'],
+ 'NodeOwnerUid' => ['description' => '实例所属的阿里云账号的ID。', 'type' => 'integer', 'format' => 'int64', 'example' => '129845258050****'."\n"],
+ 'NodeOwnerBid' => ['description' => '实例所属的阿里云企业账号ID。', 'type' => 'string', 'example' => '26842****'],
+ 'EcrOwnerAliUid' => ['description' => '接受授权的专线网关实例所属阿里云账号(主账号)ID。', 'type' => 'string', 'example' => '229845258050****'."\n"],
+ ],
+ ],
],
],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\"\\n}","type":"json"}]',
- 'title' => '专线网关解绑标签',
- ],
- 'CreateExpressConnectRouter' => [
- 'summary' => '新建专线网关ECR(Express Connect Router)。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '查询授权给专线网关(ECR)的网络实例',
+ 'summary' => '查询授权给专线网关ECR(Express Connect Router)的网络实例。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceGrantedToExpressConnectRouter'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeInstanceGrantedToExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.Name\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of Name **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"TotalCount\\": 10,\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"FFlMqGuJ10uN3l+FX/cBrGDNXUOUifNeOuAJlT4dc3vsWD6DsNSFAC2FtpeH5QOSG2WFdyRoun7gSLCm5o69YnAQ==\\",\\n \\"EcrGrantedInstanceList\\": [\\n {\\n \\"GrantId\\": \\"gr-8gdelo13mi99g1****\\",\\n \\"Status\\": \\"Active\\",\\n \\"GmtCreate\\": \\"1669023139000\\",\\n \\"GmtModified\\": \\"1669023139000\\",\\n \\"EcrId\\": \\"ecr-mezk2idmsd0vx2****\\",\\n \\"NodeId\\": \\"vbr-j6cwxhgg0s5nuephp****\\\\n\\",\\n \\"NodeType\\": \\"VBR\\",\\n \\"NodeRegionId\\": \\"cn-hangzhou\\",\\n \\"NodeOwnerUid\\": 0,\\n \\"NodeOwnerBid\\": \\"26842****\\",\\n \\"EcrOwnerAliUid\\": \\"229845258050****\\\\n\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'DetachExpressConnectRouterChildInstance' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -5070,980 +3093,577 @@
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197622',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '197609',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
- 'name' => 'Name',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例的名称。'."\n"
- .'> 名称可以为空或长度为 0~128 个字符,不能以 http://或 https://开头。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
- ],
- [
- 'name' => 'Description',
+ 'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例的描述。'."\n"
- ."\n"
- .'>描述可以为空或长度为 0~256 个字符,不能以 http://或 https://开头。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'ResourceGroupId',
+ 'name' => 'ChildInstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例所属的资源组ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-acfmvvajg5q****',
- ],
+ 'schema' => ['description' => 'VBR实例ID。', 'type' => 'string', 'required' => true, 'example' => 'vbr-j6cwxhgg0s5nuephp****'],
],
[
- 'name' => 'AlibabaSideAsn',
+ 'name' => 'ChildInstanceType',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例的ASN。可取值为45104(默认值),64512~65534和4200000000~4294967294,其中65025为阿里云保留值。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '45104',
- ],
+ 'schema' => ['description' => '网络实例的类型。取值:**VBR**边界路由器实例。', 'type' => 'string', 'required' => true, 'example' => 'VBR'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00**** ',
- ],
- ],
- [
- 'name' => 'Tag',
- 'in' => 'formData',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => '标签。'."\n"
- ."\n"
- .'最多可以绑定20个标签。',
- 'type' => 'array',
- 'items' => [
- 'description' => '标签信息。',
- 'type' => 'object',
- 'properties' => [
- 'Key' => [
- 'description' => '资源的标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestKey',
- ],
- 'Value' => [
- 'description' => '监听的标签值。N的取值范围:**1**~**20**。一旦传入该值,可以为空字符串。最多支持128个字符,不能以`acs:`开头,不能包含`http://`或者`https://`。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestValue',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- 'maxItems' => 20,
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<CreateEcrResponse>',
- 'description' => 'RpcResponse<CreateEcrResponse>',
+ 'title' => 'RpcResponse<DetachChildInstanceResponse>',
+ 'description' => 'RpcResponse<DetachChildInstanceResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n",
- ],
- 'Success' => [
- 'description' => '创建ECR实例是否成功。取值:'."\n"
- .'- **true**:成功。'."\n"
- .'- **false**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断创建ECR实例是否成功。返回值为200表示创建成功,返回其他值表示创建失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.Name',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of Name **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
- 'EcrId' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'example' => 'ecr-fu8rszhgv7623c****',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'OperationFailed.UserNotInWhiteList',
- 'errorMessage' => 'The current user is not in the whitelist.',
- ],
- [
- 'errorCode' => 'QuotaExceeded.EcrCountPerUser',
- 'errorMessage' => 'ECR Quota Exceeded.',
- ],
- [
- 'errorCode' => 'Conflict.ASNOfECR',
- 'errorMessage' => 'ASN already used by other ECR.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParam.AlibabaSideAsn',
- 'errorMessage' => 'The entered Bgp Asn is incorrect.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'IncorrectStatus.EcrAssociation', 'errorMessage' => 'Ecr Association Status does not allow current operation.', 'description' => 'ECR Association实例不允许当前操作。请在进行中的操作完成后,重试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'OperationDenied.CrossAccountDisassociating', 'errorMessage' => 'Unbind cross-account.', 'description' => '当前操作被拒绝,需在跨账号页面解除绑定操作后再执行此操作'],
+ ['errorCode' => 'OperationDenied.EcrAttachmentExisted', 'errorMessage' => 'Ecr and TR have been linked.', 'description' => '当前操作被拒绝,专线网关实例与TR已建立链接,请解除后再执行此操作。'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'OperationDenied.VbrHasRouteEntryInMiddleStatus', 'errorMessage' => 'The operation is not allowed because of VBR has route entry in middle status.', 'description' => '当前操作无法正常执行,边界路由器中存在路由条目处于配置生效中,请等待生效后重试。'],
+ ['errorCode' => 'OperationDenied.VbrHasBgpGroupInMiddleStatus', 'errorMessage' => 'The operation is not allowed because of VBR has BGP group in middle status.', 'description' => '当前操作无法正常执行,边界路由器中存在BGP组处于配置生效中,请等待生效后重试。'],
+ ['errorCode' => 'OperationDenied.VbrUsedInVbrHa', 'errorMessage' => 'The border router has been used by the switching group and cannot be bound to the leased line gateway.', 'description' => '卸载失败,边界路由器已关联倒换组。卸载前请先解除关联的倒换组。'],
+ ['errorCode' => 'ResourceInUse.HaVbrGroup', 'errorMessage' => 'The specified resource of %s is in use.', 'description' => '边界路由器还在倒换组中,请退出倒换组后重试。'],
+ ['errorCode' => 'ResourceInUse.ChildInstance', 'errorMessage' => 'The specified resource of ChildInstance is in use.', 'description' => '当前专线网关绑定的VBR未关闭Flowlog,请尝试关闭对应VBR的Flowlog后,再次发起卸载VBR操作。 '],
+ ],
+ 404 => [
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
+ ['errorCode' => 'ResourceNotFound.AssociationId', 'errorMessage' => 'EcrAssociationId not found.', 'description' => 'ECR Association实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.Name\\",\\n \\"DynamicMessage\\": \\"The param format of Name **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"EcrId\\": \\"ecr-fu8rszhgv7623c****\\"\\n}","type":"json"}]',
- 'title' => '新建专线网关(ECR)',
- 'description' => '创建专线网关实例后,专线网关的实例状态为**Active**。',
- ],
- 'DeleteExpressConnectRouter' => [
- 'summary' => '删除专线网关ECR(Express Connect Router)。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '从专线网关(ECR)卸载子实例',
+ 'summary' => '从专线网关ECR(Express Connect Router)卸载边界路由器(VBR)。',
+ 'description' => '在调用**DetachExpressConnectRouterChildInstance**接口从专线网关卸载VBR实例之前,请确保专线网关的状态为**Active**。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetachExpressConnectRouterChildInstance'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DetachExpressConnectRouterChildInstance',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
+ ],
+ 'DisableExpressConnectRouterRouteEntries' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197616',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeCode' => '197618',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectU328UX'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-fu8rszhgv7623c****'."\n",
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
+ ],
+ [
+ 'name' => 'DestinationCidrBlock',
+ 'in' => 'formData',
+ 'schema' => ['description' => '网关路由表中路由条目的目标网段。', 'type' => 'string', 'required' => true, 'example' => '10.153.32.**/**'],
+ ],
+ [
+ 'name' => 'NexthopInstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '下一跳实例ID', 'type' => 'string', 'required' => true, 'example' => 'tr-hp3u4u5f03tfuljis****'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00**** '."\n",
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg=='],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DeleteEcrResponse>',
- 'description' => '返回数据结构体。',
+ 'title' => 'RpcResponse<DisableEcrRouteResponse>',
+ 'description' => 'RpcResponse<DisableEcrRouteResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n",
- ],
- 'Success' => [
- 'description' => '删除ECR实例是否成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断删除ECR实例是否成功。返回值为200表示创建成功,返回其他值表示创建失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'ResourceInUse.Ecr',
- 'errorMessage' => 'The express connect router is currently in use.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
+ ['errorCode' => 'ResourceNotFound.NexthopInstanceId', 'errorMessage' => 'The next hop instance does not exist.', 'description' => '下一跳实例不存在'],
+ ['errorCode' => 'IllegalParamFormat.DestinationCidrBlock', 'errorMessage' => 'The format of the specified destination Cidr route parameter is incorrect.', 'description' => '您当前指定的目的Cidr路由参数格式错误,请核对后重新输入。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'ResourceInCreating.NexthopInstanceId', 'errorMessage' => 'The next hop instance is being created.', 'description' => '您当前所指的下一跳实例正在创建中'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
- 'title' => '删除专线网关(ECR)',
- 'description' => '在调用DeleteExpressConnectRouter接口删除ECR实例之前,请注意:'."\n"
- ."\n"
- .'- 删除专线网关实例前,必须删除专线网关实例上所关联的资源。'."\n"
- ."\n"
- .'- 只能删除**Active**状态的专线网关实例。',
- ],
- 'ModifyExpressConnectRouterInterRegionTransitMode' => [
- 'summary' => '修改专线网关ECR(Express Connect Router)的跨地域转发模式。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '禁用专线网关(ECR)路由项',
+ 'summary' => '禁用专线网关ECR(Express Connect Router)路由项。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableExpressConnectRouterRouteEntries'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DisableExpressConnectRouterRouteEntries',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
+ ],
+ 'EnableExpressConnectRouterRouteEntries' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197619',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectLCKWNS',
- ],
+ 'abilityTreeCode' => '197610',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect9IGKFS'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'TransitModeList',
+ 'name' => 'DestinationCidrBlock',
'in' => 'formData',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => '跨域转发模式列表。',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'RegionId' => [
- 'description' => '专线网关实例所属的地域。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou',
- ],
- 'Mode' => [
- 'description' => '专线网关跨域转发模式,取值:'."\n"
- .'- **ECMP**:负载均衡模式。'."\n"
- .'- **NearBy**:就近转发模式。',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'ECMP' => 'ECMP',
- 'NearBy' => 'NearBy',
- ],
- 'example' => 'ECMP',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- 'maxItems' => 100,
- ],
+ 'schema' => ['description' => '网关路由表中路由条目的目标网段。', 'type' => 'string', 'required' => true, 'example' => '10.153.32.**/**'],
+ ],
+ [
+ 'name' => 'NexthopInstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '下一跳实例ID', 'type' => 'string', 'required' => true, 'example' => 'tr-hp3u4u5f03tfuljis****'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg==',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg=='."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<ModifyEcrTransitModeResponse>',
- 'description' => 'RpcResponse<ModifyEcrTransitModeResponse>',
+ 'title' => 'RpcResponse<EnableEcrRouteResponse>',
+ 'description' => 'RpcResponse<EnableEcrRouteResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'IllegalParam.RegionId',
- 'errorMessage' => 'Area parameter invalid.',
- ],
- [
- 'errorCode' => 'IllegalParam.TransitMode',
- 'errorMessage' => 'The transmission mode parameter is invalid.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
+ ['errorCode' => 'ResourceNotFound.NexthopInstanceId', 'errorMessage' => 'The next hop instance does not exist.', 'description' => '下一跳实例不存在'],
+ ['errorCode' => 'IllegalParamFormat.DestinationCidrBlock', 'errorMessage' => 'The format of the specified destination Cidr route parameter is incorrect.', 'description' => '您当前指定的目的Cidr路由参数格式错误,请核对后重新输入。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'ResourceInCreating.NexthopInstanceId', 'errorMessage' => 'The next hop instance is being created.', 'description' => '您当前所指的下一跳实例正在创建中'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '启用专线网关(ECR)路由项',
+ 'summary' => '启用专线网关ECR(Express Connect Router)路由条目。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnableExpressConnectRouterRouteEntries'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:EnableExpressConnectRouterRouteEntries',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '修改专线网关(ECR)的跨地域转发模式',
],
- 'ModifyExpressConnectRouterAssociationAllowedPrefix' => [
- 'summary' => '修改专线网关ECR(Express Connect Router)绑定的专有网络(VPC)或者转发路由器(TR)的前缀路由。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'ForceDeleteExpressConnectRouter' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197603',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectDQ6AHD',
- ],
+ 'abilityTreeCode' => '197612',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
- 'name' => 'EcrId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- ],
- [
- 'name' => 'AssociationId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关与VPC或TR的关联ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-assoc-9p2qxx5phpca2m****',
- ],
- ],
- [
- 'name' => 'AllowedPrefixes',
- 'in' => 'formData',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => '允许的路由前缀列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => '允许的路由前缀。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '192.0.20.0/24',
- ],
- 'required' => false,
- 'maxItems' => 10000,
- ],
- ],
- [
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
- 'name' => 'ClientToken',
+ 'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-fu8rszhgv7623c****'."\n"],
],
[
- 'name' => 'AllowedPrefixesMode',
+ 'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '前缀路由模式,取值:'."\n"
- .'- MatchMode: 匹配模式, 仅发布配置的路由网段到IDC,对原有发布的明细路由进行回撤。'."\n"
- .'- IncrementalMode: 增量模式, 发布配置的路由网段到IDC的同时对原有发布落在配置的路由网段内的明细路由进行回撤,未落在配置的网段内的明细路由保持发布。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'MatchMode',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00**** '."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<ModifyAssociationAllowedPrefixResponse>',
- 'description' => 'RpcResponse<ModifyAssociationAllowedPrefixResponse>',
+ 'title' => 'RpcResponse<ForceDeleteEcrResponse>',
+ 'description' => 'RpcResponse<ForceDeleteEcrResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '05130E79-588D-5C40-A718-C4863A59****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n"],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'IncorrectStatus.EcrAssociation',
- 'errorMessage' => 'Ecr Association Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.AllowedPrefixes',
- 'errorMessage' => 'The prefix parameter format is invalid. Procedure.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParamSize.AllowedPrefixes',
- 'errorMessage' => 'The number of prefix routes exceeded the quota.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'OperationFailed.UsedInRouteEntryNextHop', 'errorMessage' => 'The VPC also has a static route pointing to the ECR, and it is not allowed to disassociate the ECR.', 'description' => 'VPC还有静态路由指向ECR,不允许解除关联 ECR'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
- [
- 'errorCode' => 'ResourceNotFound.AssociationId',
- 'errorMessage' => 'EcrAssociationId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '修改专线网关(ECR)的前缀路由',
- ],
- 'ModifyExpressConnectRouter' => [
- 'summary' => '修改专线网关ECR(Express Connect Router)的名称等属性。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '删除专线网关(ECR)及关联关系',
+ 'summary' => '删除专线网关ECR(Express Connect Router),并解绑相关联的专有网络(VPC),转发路由器(TR)和边界路由器(VBR)。',
+ 'description' => '- 强制删除专线网关实例,会将绑定的资源一次性全部删除,请确认删除后不影响业务稳定性。'."\n"
+ ."\n"
+ .'- 只能删除**Active**状态的专线网关实例。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ForceDeleteExpressConnectRouter'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ForceDeleteExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
+ ],
+ 'GrantInstanceToExpressConnectRouter' => [
+ 'summary' => '将的专有网络(VPC)或者边界路由器(VBR)授权给跨账号的专线网关ECR(Express Connect Router)。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197614',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectY33HGU',
- ],
+ 'abilityTreeCode' => '197607',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-fu8rszhgv7623c****'."\n",
- ],
+ 'schema' => ['description' => '关联的专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'Name',
+ 'name' => 'EcrOwnerAliUid',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例的名称。'."\n"
- .'> 名称可以为空或长度为 0~128 个字符,不能以 http://或 https://开头。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test'."\n",
- ],
+ 'schema' => ['description' => '接受授权的专线网关实例所属阿里云账号(主账号)ID。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '121012345612****'],
],
[
- 'name' => 'Description',
+ 'name' => 'InstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例的描述。'."\n"
- .'> 描述可以为空或长度为 0~256 个字符,不能以 http://或 https://开头。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test'."\n",
- ],
+ 'schema' => ['description' => '网络实例的ID。', 'type' => 'string', 'required' => true, 'example' => 'vbr-j6cwxhgg0s5nuephp****'."\n"],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'formData',
+ 'schema' => ['description' => '网络实例的类型。取值:'."\n"
+ .'- **VBR**:边界路由器实例。'."\n"
+ .'- **VPC**:专有网络实例。', 'type' => 'string', 'required' => true, 'example' => 'VBR'],
+ ],
+ [
+ 'name' => 'InstanceRegionId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '授权网络实例所在的地域ID。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00**** '."\n",
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<ModifyEcrResponse>',
- 'description' => 'RpcResponse<ModifyEcrResponse>',
+ 'title' => 'RpcResponse<GrantInstanceToEcrResponse>',
+ 'description' => 'RpcResponse<GrantInstanceToEcrResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n",
- ],
- 'Success' => [
- 'description' => '修改专线网关实例是否成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True'."\n",
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK'."\n",
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.Name'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of Name **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
+ ['errorCode' => 'IllegalParam.EcrOwnerAliUid', 'errorMessage' => 'The Ecr instance account parameter is invalid.', 'description' => '该专线网关实例账号为非法参数,请核对后重新输入'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'IllegalParam.InstanceOwnerId', 'errorMessage' => 'Specified parameter InstanceOwnerId is not valid.', 'description' => '该实例账号为非法参数,请核对后重新输入'."\n"],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\\\n\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.Name\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of Name **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
- 'title' => '修改专线网关(ECR)属性',
- 'description' => '只能修改**Active**状态的专线网关实例。',
- ],
- 'DescribeExpressConnectRouterInterRegionTransitMode' => [
- 'summary' => '查询专线网关ECR(Express Connect Router)的跨地域转发模式。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '将网络实例授权给专线网关(ECR)',
+ 'description' => '将跨账号的网络实例关联至专线网关实例时,您需要将网络实例授权给专线网关实例。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GrantInstanceToExpressConnectRouter'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:GrantInstanceToExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [
+ ['conditionKey' => 'InstanceType', 'validationType' => 'always'],
+ ],
+ 'resources' => [
+ ['validationType' => 'conditional', 'product' => 'ExpressConnectRouter', 'resourceType' => 'VPC', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vpc/{#VpcId}'],
+ ['validationType' => 'conditional', 'product' => 'ExpressConnectRouter', 'resourceType' => 'VirtualBorderRouter', 'arn' => 'acs:expressconnect:{#regionId}:{#accountId}:virtualborderrouter/{#VbrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
+ ],
+ 'ListExpressConnectRouterSupportedRegion' => [
+ 'summary' => '查询专线网关ECR(Express Connect Router)开服地域列表。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -6055,123 +3675,46 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199363',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectLCKWNS',
- 'FEATUREexpressconnect2V07Q4',
- ],
+ 'abilityTreeCode' => '213773',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
],
'parameters' => [
[
- 'name' => 'EcrId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- ],
- [
- 'name' => 'DryRun',
+ 'name' => 'NodeType',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '网络实例的类型。取值:'."\n"
+ .'- **TR**:转发路由器实例。'."\n"
+ .'- **VBR**:边界路由器实例。'."\n"
+ .'- **VPC**:虚拟专有网络实例。', 'type' => 'string', 'required' => true, 'example' => 'VBR'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg==',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DescribeEcrRegionTransitModeResponse>',
- 'description' => 'RpcResponse<DescribeEcrRegionTransitModeResponse>',
+ 'title' => 'RpcResponse<ListEcrSupportedRegionResponse>',
+ 'description' => '返回数据结构体。',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
- 'InterRegionTransitModeList' => [
- 'description' => '跨域转发模式列表。',
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n"],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- True:成功。'."\n"
+ .'- False:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'SupportedRegionIdList' => [
+ 'description' => '开服地域列表。',
'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'RegionId' => [
- 'description' => '专线网关所属的地域ID。',
- 'type' => 'string',
- 'example' => 'cn-hangzhou',
- ],
- 'Mode' => [
- 'description' => 'ECR跨域转发模式,取值:'."\n"
- .'- **ECMP**:负载均衡模式。'."\n"
- .'- **NearBy**:就近转发模式。',
- 'type' => 'string',
- 'example' => 'ECMP',
- ],
- ],
- ],
+ 'items' => ['description' => '开服地域。', 'type' => 'string', 'example' => 'cn-hangzhou'],
],
],
],
@@ -6179,40 +3722,37 @@
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
],
- 404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '查询专线网关(ECR)开服地域列表',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListExpressConnectRouterSupportedRegion'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ListExpressConnectRouterSupportedRegion',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"InterRegionTransitModeList\\": [\\n {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Mode\\": \\"ECMP\\"\\n }\\n ]\\n}","type":"json"}]',
- 'title' => '查询专线网关(ECR)的跨域转发模式',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"SupportedRegionIdList\\": [\\n \\"cn-hangzhou\\"\\n ]\\n}","type":"json"}]',
],
- 'DescribeExpressConnectRouterAllowedPrefixHistory' => [
- 'summary' => '查询专线网关ECR(Express Connect Router)前缀路由的历史记录。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'ListTagResources' => [
+ 'summary' => '查询专线网关绑定的标签列表。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -6221,1034 +3761,633 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199365',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectDQ6AHD',
- ],
+ 'abilityTreeCode' => '200710',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectI9TIJD'],
],
'parameters' => [
[
- 'name' => 'EcrId',
+ 'name' => 'ResourceType',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '资源类型。支持的类型包括:'."\n"
+ .'- **EXPRESSCONNECTROUTER**:专线网关ECR实例。'."\n"
+ .'- **EXPRESSCONNECTROUTERVPCASSOCIATION**:ECR与VPC的关联关系。'."\n"
+ .'- **EXPRESSCONNECTROUTERTRASSOCIATION**:ECR与TR的关联关系。'."\n"
+ .'- **ECRFLOWLOG**:ECR流日志。', 'type' => 'string', 'required' => true, 'example' => 'EXPRESSCONNECTROUTER'],
],
[
- 'name' => 'InstanceId',
+ 'name' => 'ResourceId',
'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '专线网关加载的实例ID。'."\n"
+ 'description' => '资源的实例ID列表。'."\n"
."\n"
- .'> **InstanceId**参数和**AssociationId**参数必须输入一个。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vbr-j6cwxhgg0s5nuephp****',
- ],
- ],
- [
- 'name' => 'InstanceType',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '网络实例的类型。取值:'."\n"
- .'- **VPC**:虚拟专有网络实例。'."\n"
- .'- **TR**:转发路由器实例。',
- 'type' => 'string',
+ .'最多可以指定50个资源组ID。',
+ 'type' => 'array',
+ 'items' => ['description' => '资源实例ID。', 'type' => 'string', 'required' => false, 'example' => 'ecr-kgzj75zpq50hqz****'],
'required' => false,
- 'example' => 'VPC',
+ 'maxItems' => 100,
],
],
[
- 'name' => 'DryRun',
+ 'name' => 'Tag',
'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ 'description' => '标签。'."\n"
."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
+ .'最多可以绑定20个标签。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => '资源的标签键。'."\n"
+ ."\n"
+ .'一旦传入该值,则不允许为空字符串。最多支持64个字符,不能以`aliyun`或者`acs:`开头,不能包含`http://`或者`https:// `。'."\n"
+ ."\n"
+ .'一次最多支持输入20个标签的标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'],
+ 'Value' => ['description' => '标签值。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦输入该值,可以为空字符串。'."\n"
+ ."\n"
+ .'一次调用最多支持添加20个标签值。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'],
+ ],
+ 'required' => false,
+ ],
'required' => false,
- 'example' => 'true',
+ 'enumValueTitles' => [],
+ 'maxItems' => 20,
],
],
[
- 'name' => 'ClientToken',
+ 'name' => 'NextToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg==',
- ],
+ 'schema' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 如果 NextToken 为空表示没有下一次查询。'."\n"
+ .'- 如果 NextToken 有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'required' => false, 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****'],
],
[
- 'name' => 'AssociationId',
+ 'name' => 'MaxResults',
'in' => 'formData',
- 'schema' => [
- 'title' => '专线网关与专有网络VPC或转发路由器TR的关联的实例ID。',
- 'description' => '专线网关与专有网络VPC或转发路由器TR的关联的实例ID。'."\n"
- ."\n"
- .'> **InstanceId**参数和**AssociationId**参数必须输入一个。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ecr-assoc-9p2qxx5phpca2m****'."\n",
- ],
+ 'schema' => ['description' => '单次请求返回结果的最大条数。默认值:20。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DescribeEcrAllowedPrefixHistoryResponse>',
- 'description' => 'RpcResponse<DescribeEcrAllowedPrefixHistoryResponse>',
+ 'title' => 'RpcResponse<ListEcrTagResourcesResponse>',
+ 'description' => '查询结果。',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
- 'AllowedPrefixHistoryList' => [
- 'description' => '历史前缀路由列表。',
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'TagResources' => [
+ 'description' => '标签列表。',
'type' => 'array',
'items' => [
+ 'description' => '资源绑定的标签信息。',
'type' => 'object',
'properties' => [
- 'AllowedPrefix' => [
- 'description' => '前缀路由。',
- 'type' => 'array',
- 'items' => [
- 'description' => '前缀路由条目。',
- 'type' => 'string',
- 'example' => '10.0.**.**/1',
- ],
- ],
- 'GmtCreate' => [
- 'description' => '创建历史路由条目的时间。',
- 'type' => 'string',
- 'example' => '1673751163000',
- ],
+ 'ResourceId' => ['description' => '资源ID。', 'type' => 'string', 'example' => 'ecr-897j0jooxyr1aq****'],
+ 'ResourceType' => ['description' => '资源类型。支持的类型包括:'."\n"
+ .'- **EXPRESSCONNECTROUTER**:专线网关ECR实例。'."\n"
+ .'- **EXPRESSCONNECTROUTERVPCASSOCIATION**:ECR与VPC的关联关系。'."\n"
+ .'- **EXPRESSCONNECTROUTERTRASSOCIATION**:ECR与TR的关联关系。'."\n"
+ .'- **ECRFLOWLOG**:ECR流日志。', 'type' => 'string', 'example' => 'EXPRESSCONNECTROUTER'],
+ 'TagKey' => ['description' => '资源的标签键。', 'type' => 'string', 'example' => 'TestKey'],
+ 'TagValue' => ['description' => '专线网关的标签值。', 'type' => 'string', 'example' => 'TestValue'],
],
],
],
+ 'TotalCount' => ['description' => '符合查询条件的记录总数。', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
+ 'NextToken' => ['description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
+ ."\n"
+ .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
+ .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', 'type' => 'string', 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****'],
+ 'MaxResults' => ['description' => '分页查询时每页行数。', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'ResourceNotFound.InstanceId',
- 'errorMessage' => 'The instance id does not exist.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"TagResources\\": [\\n {\\n \\"ResourceId\\": \\"ecr-897j0jooxyr1aq****\\",\\n \\"ResourceType\\": \\"EXPRESSCONNECTROUTER\\",\\n \\"TagKey\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\"\\n }\\n ],\\n \\"TotalCount\\": 2,\\n \\"NextToken\\": \\"AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****\\",\\n \\"MaxResults\\": 20\\n}","type":"json"}]',
+ 'title' => '查询专线网关标签列表',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTagResources'],
],
- 404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
- [
- 'errorCode' => 'ResourceNotFound.AssociationId',
- 'errorMessage' => 'EcrAssociationId not found.',
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ListTagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"AllowedPrefixHistoryList\\": [\\n {\\n \\"AllowedPrefix\\": [\\n \\"10.0.**.**/1\\"\\n ],\\n \\"GmtCreate\\": \\"1673751163000\\"\\n }\\n ]\\n}","type":"json"}]',
- 'title' => '查询专线网关(ECR)的前缀路由历史记录',
],
- 'DescribeExpressConnectRouter' => [
- 'summary' => '查询专线网关ECR(Express Connect Router)列表。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'ModifyExpressConnectRouter' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199357',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeCode' => '197614',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectY33HGU'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ecr-fu8rszhgv7623c****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-fu8rszhgv7623c****'."\n"],
],
[
'name' => 'Name',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例名称。长度为0~128个字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
- ],
- [
- 'name' => 'NextToken',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 第一次查询和没有下一次查询时,均无需填写。'."\n"
- .'- 如果有下一次查询,取值为上一次 API 调用返回的 NextToken 值。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'e0a2dbeb69a8beeeb8194e92b702df3fd3e7bfe6ce7bfc16e0b5e8707e68181f',
- ],
+ 'schema' => ['description' => '专线网关实例的名称。'."\n"
+ .'> 名称可以为空或长度为 0~128 个字符,不能以 http://或 https://开头。', 'type' => 'string', 'required' => false, 'example' => 'test'."\n"],
],
[
- 'name' => 'MaxResults',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为20。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '20',
- ],
- ],
- [
- 'name' => 'Tag',
- 'in' => 'formData',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => '进行过滤的标签列表。最多支持20个标签。',
- 'type' => 'array',
- 'items' => [
- 'description' => '标签信息。',
- 'type' => 'object',
- 'properties' => [
- 'Key' => [
- 'description' => '实例的标签键。一旦传入该值,则不允许为空字符串。'."\n"
- ."\n"
- .'最多支持64个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestKey',
- ],
- 'Value' => [
- 'description' => '标签值。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦输入该值,可以为空字符串。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestValue',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- 'maxItems' => 20,
- ],
- ],
- [
- 'name' => 'ResourceGroupId',
+ 'name' => 'Description',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例所属资源组的ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-aek2aq7f4va****'."\n",
- ],
+ 'schema' => ['description' => '专线网关实例的描述。'."\n"
+ .'> 描述可以为空或长度为 0~256 个字符,不能以 http://或 https://开头。', 'type' => 'string', 'required' => false, 'example' => 'test'."\n"],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00**** '."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<DescribeEcrResponse>',
- 'description' => 'RpcResponse<DescribeEcrResponse>',
+ 'title' => 'RpcResponse<ModifyEcrResponse>',
+ 'description' => 'RpcResponse<ModifyEcrResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '查询已创建ECR实例是否成功。取值:'."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.Name',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of Name **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
- 'TotalCount' => [
- 'description' => '专线网关实例总条数。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '2',
- ],
- 'MaxResults' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为20。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '20',
- ],
- 'NextToken' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 如果 NextToken 为空表示没有下一次查询。'."\n"
- .'- 如果 NextToken 有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'example' => 'AAAAAdDWBF2w6Olxc+cMPjUtUMpttDGZkffvHCfhBKKNEyCVaq+WUEzuUWpp9+QOApNf6g==',
- ],
- 'EcrList' => [
- 'description' => '专线网关实例列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => '专线网关实例。',
- 'type' => 'object',
- 'properties' => [
- 'EcrId' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
- 'OwnerId' => [
- 'description' => '专线网关实例所属的阿里云账号ID。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '170646818729****',
- ],
- 'GmtCreate' => [
- 'description' => '专线网关实例创建时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。',
- 'type' => 'string',
- 'example' => '2023-02-16T01:44:50Z'."\n",
- ],
- 'GmtModified' => [
- 'description' => '专线网关实例修改时间。按照 ISO8601 标准表示,并需要使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。',
- 'type' => 'string',
- 'example' => '2023-02-16T01:44:50Z',
- ],
- 'Status' => [
- 'description' => '服务实例的部署状态。可能值:'."\n"
- ."\n"
- .'- **ACTIVE**:已创建。'."\n"
- ."\n"
- .'- **UPDATING**:修改中。'."\n"
- ."\n"
- .'- **ASSOCIATING**:资源绑定中。'."\n"
- ."\n"
- .'- **DISSOCIATING**:资源解绑中。'."\n"
- ."\n"
- .'- **LOCKED_ATTACHING**:被外部系统绑定锁定。'."\n"
- ."\n"
- .'- **LOCKED_DETACHING**:被外部系统解绑锁定。'."\n"
- ."\n"
- .'- **RECLAIMING**:等待释放资源。'."\n"
- ."\n"
- .'- **DELETING**:删除中。',
- 'type' => 'string',
- 'example' => 'Active',
- ],
- 'BizStatus' => [
- 'description' => '服务实例的业务状态。可能的值:'."\n"
- ."\n"
- .'- **Normal**:正常。'."\n"
- ."\n"
- .'- **FinancialLocked**:欠费锁定。',
- 'type' => 'string',
- 'example' => 'Normal',
- ],
- 'ResourceGroupId' => [
- 'description' => '专线网关实例所属资源组的ID。',
- 'type' => 'string',
- 'example' => 'rg-aekzuscospt****',
- ],
- 'Tags' => [
- 'description' => '标签列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => '标签。',
- 'type' => 'object',
- 'properties' => [
- 'TagKey' => [
- 'description' => '专线网关实例的标签键。',
- 'type' => 'string',
- 'example' => 'test',
- ],
- 'TagValue' => [
- 'description' => '专线网关实例的标签值。',
- 'type' => 'string',
- 'example' => 'test',
- ],
- ],
- ],
- ],
- 'Name' => [
- 'description' => '专线网关实例名称。',
- 'type' => 'string',
- 'example' => 'test',
- ],
- 'Description' => [
- 'description' => '专线网关实例的描述信息。',
- 'type' => 'string',
- 'example' => 'test',
- ],
- 'AlibabaSideAsn' => [
- 'description' => '专线网关实例的ASN号。',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '45104',
- ],
- ],
- ],
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n"],
+ 'Success' => ['description' => '修改专线网关实例是否成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'."\n"],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'."\n"],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.Name'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of Name **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'IllegalParam.%s',
- 'errorMessage' => 'The param of %s is illegal.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ],
+ 404 => [
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.Name\\",\\n \\"DynamicMessage\\": \\"The param format of Name **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\",\\n \\"TotalCount\\": 2,\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"AAAAAdDWBF2w6Olxc+cMPjUtUMpttDGZkffvHCfhBKKNEyCVaq+WUEzuUWpp9+QOApNf6g==\\",\\n \\"EcrList\\": [\\n {\\n \\"EcrId\\": \\"ecr-mezk2idmsd0vx2****\\",\\n \\"OwnerId\\": 0,\\n \\"GmtCreate\\": \\"2023-02-16T01:44:50Z\\\\n\\",\\n \\"GmtModified\\": \\"2023-02-16T01:44:50Z\\",\\n \\"Status\\": \\"Active\\",\\n \\"BizStatus\\": \\"Normal\\",\\n \\"ResourceGroupId\\": \\"rg-aekzuscospt****\\",\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"test\\",\\n \\"TagValue\\": \\"test\\"\\n }\\n ],\\n \\"Name\\": \\"test\\",\\n \\"Description\\": \\"test\\",\\n \\"AlibabaSideAsn\\": 45104\\n }\\n ]\\n}","type":"json"}]',
- 'title' => '查询专线网关(ECR)列表',
- ],
- 'ForceDeleteExpressConnectRouter' => [
- 'summary' => '删除专线网关ECR(Express Connect Router),并解绑相关联的专有网络(VPC),转发路由器(TR)和边界路由器(VBR)。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '修改专线网关(ECR)属性',
+ 'summary' => '修改专线网关ECR(Express Connect Router)的名称等属性。',
+ 'description' => '只能修改**Active**状态的专线网关实例。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ModifyExpressConnectRouter'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\\\n\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.Name\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of Name **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
+ ],
+ 'ModifyExpressConnectRouterAssociation' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '197612',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnect7LHFR8',
- 'FEATUREexpressconnectQL8QN0',
- 'FEATUREexpressconnectNHSYB7',
- ],
+ 'abilityTreeCode' => '246041',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectY33HGU'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'DryRun',
+ 'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'."\n"],
],
[
- 'name' => 'EcrId',
+ 'name' => 'AssociationId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-fu8rszhgv7623c****'."\n",
- ],
+ 'schema' => ['description' => '专线网关与VPC或TR的关联ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-assoc-9p2qxx5phpca2m****'."\n"],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => ['description' => '子实例的描述信息。长度为0~128个字符。', 'type' => 'string', 'required' => false, 'example' => 'test'],
+ ],
+ [
+ 'name' => 'DryRun',
+ 'in' => 'formData',
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- true:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- false(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00**** '."\n",
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> '."\n"
+ .'> - 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<ForceDeleteEcrResponse>',
- 'description' => 'RpcResponse<ForceDeleteEcrResponse>',
+ 'title' => 'RpcResponse<ModifyEcrResponse>',
+ 'description' => 'RpcResponse<ModifyEcrResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n",
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'DFDA79A0-D135-5193-B0AC-3B5608FDB1D0'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示成功,返回其他值表示失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'."\n"],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'MissingParam.%s',
- 'errorMessage' => 'The param of %s is missing.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
- [
- 'errorCode' => 'Conflict.Lock',
- 'errorMessage' => 'There are other unfinished operations.',
- ],
- [
- 'errorCode' => 'OperationFailed.UsedInRouteEntryNextHop',
- 'errorMessage' => 'The VPC also has a static route pointing to the ECR, and it is not allowed to disassociate the ECR.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
],
404 => [
- [
- 'errorCode' => 'ResourceNotFound.EcrId',
- 'errorMessage' => 'EcrId not found.',
- ],
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
+ ['errorCode' => 'ResourceNotFound.AssociationId', 'errorMessage' => 'EcrAssociationId not found.', 'description' => 'ECR Association实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '修改专线网关关联子实例属性',
+ 'summary' => '修改专线网关ECR(Express Connect Router)关联的子实例属性。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouterAssociation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
- 'title' => '删除专线网关(ECR)及关联关系',
- 'description' => '- 强制删除专线网关实例,会将绑定的资源一次性全部删除,请确认删除后不影响业务稳定性。'."\n"
- ."\n"
- .'- 只能删除**Active**状态的专线网关实例。',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DFDA79A0-D135-5193-B0AC-3B5608FDB1D0\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
],
- 'CreateFlowLog' => [
- 'summary' => '创建流日志默认开启日志投递。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'ModifyExpressConnectRouterAssociationAllowedPrefix' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '253947',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectH4NOM0',
- ],
+ 'abilityTreeCode' => '197603',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectDQ6AHD'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'DryRun',
+ 'name' => 'AssociationId',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '专线网关与VPC或TR的关联ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-assoc-9p2qxx5phpca2m****'],
],
[
- 'name' => 'ClientToken',
+ 'name' => 'AllowedPrefixes',
'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
+ 'description' => '允许的路由前缀列表。',
+ 'type' => 'array',
+ 'items' => ['description' => '允许的路由前缀。', 'type' => 'string', 'required' => false, 'example' => '192.0.20.0/24'],
'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
+ 'maxItems' => 10000,
],
],
[
- 'name' => 'FlowLogName',
+ 'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '流日志名称。'."\n"
- .'> 名称可以为空或长度为 0~128 个字符,不能以 http://或 https://开头。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'myFlowlog',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
- 'name' => 'Description',
- 'in' => 'query',
- 'schema' => [
- 'description' => '流日志的描述信息。'."\n"
- .'> 描述可以为空或长度为 0~256 个字符,不能以 http://或 https://开头。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'myFlowlog',
- ],
+ 'name' => 'ClientToken',
+ 'in' => 'formData',
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
[
- 'name' => 'InstanceType',
- 'in' => 'query',
+ 'name' => 'AllowedPrefixesMode',
+ 'in' => 'formData',
+ 'schema' => ['description' => '前缀路由模式,取值:'."\n"
+ .'- MatchMode: 匹配模式, 仅发布配置的路由网段到IDC,对原有发布的明细路由进行回撤。'."\n"
+ .'- IncrementalMode: 增量模式, 发布配置的路由网段到IDC的同时对原有发布落在配置的路由网段内的明细路由进行回撤,未落在配置的网段内的明细路由保持发布。', 'type' => 'string', 'required' => false, 'example' => 'MatchMode'],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => '网络实例的类型。取值:'."\n"
- .'- **VBR**:边界路由器实例。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'VBR',
+ 'title' => 'RpcResponse<ModifyAssociationAllowedPrefixResponse>',
+ 'description' => 'RpcResponse<ModifyAssociationAllowedPrefixResponse>',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '05130E79-588D-5C40-A718-C4863A59****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
+ ],
],
],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'IncorrectStatus.EcrAssociation', 'errorMessage' => 'Ecr Association Status does not allow current operation.', 'description' => 'ECR Association实例不允许当前操作。请在进行中的操作完成后,重试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'IllegalParamFormat.AllowedPrefixes', 'errorMessage' => 'The prefix parameter format is invalid. Procedure.', 'description' => '指定的前缀路由网段格式错误。'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParamSize.AllowedPrefixes', 'errorMessage' => 'The number of prefix routes exceeded the quota.', 'description' => '您当前输入的前缀路由数量超过配额,请申请扩容。'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ],
+ 404 => [
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
+ ['errorCode' => 'ResourceNotFound.AssociationId', 'errorMessage' => 'EcrAssociationId not found.', 'description' => 'ECR Association实例不存在'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '修改专线网关(ECR)的前缀路由',
+ 'summary' => '修改专线网关ECR(Express Connect Router)绑定的专有网络(VPC)或者转发路由器(TR)的前缀路由。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ModifyExpressConnectRouterAssociationAllowedPrefix'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'VBR 实例 ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'vbr-xxx'."\n",
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouterAssociationAllowedPrefix',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
+ ],
+ 'ModifyExpressConnectRouterChildInstance' => [
+ 'summary' => '修改专线网关(ExpressConnectRouter)关联子实例(VBR)的属性。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'Interval',
- 'in' => 'query',
- 'schema' => [
- 'description' => '流日志捕获流量的捕获窗口时长。单位:秒。取值:'."\n"
- ."\n"
- .'- **60** '."\n"
- .'- **600**'."\n"
- ."\n"
- .'默认值:**600**。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '60',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '246043',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectY33HGU'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
[
- 'name' => 'SamplingRate',
- 'in' => 'query',
- 'schema' => [
- 'description' => '采样比例。取值'."\n"
- ."\n"
- .'- **1:4096**'."\n"
- .'- **1:2048**'."\n"
- .'- **1:1024**'."\n"
- ."\n"
- .'默认值:**1:4096**。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '1:4096 ',
- ],
+ 'name' => 'EcrId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-gny3gqp41n7vrrn5iz'],
],
[
- 'name' => 'ProjectName',
- 'in' => 'query',
- 'schema' => [
- 'description' => '存储捕获流量的 Project。'."\n"
- .'- 如果您已经在当前地域创建了 Project,您可以输入已创建的 Project 的名称。'."\n"
- .'- 如果您未在当前地域创建 Project,您可以为 Project 自定义名称,系统会帮您自动创建 Project。'."\n"
- ."\n\n"
- .'Project 名称在阿里云地域内全局唯一,创建后不可修改。其命名规则如下:'."\n"
- .' '."\n"
- .'- Project名称必须全局唯一。'."\n"
- .'- 只能包括小写'."\n"
- .'- 字母、数字和短划线(-)。'."\n"
- .'- 必须以小写字母或者数字开头和结尾。'."\n"
- .'- 长度为 3~63 字符。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'flowlog-project',
- ],
+ 'name' => 'ChildInstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'VBR实例ID。', 'type' => 'string', 'required' => true, 'example' => 'vbr-t4n6xu2d5q0iaad1yl4le'],
],
[
- 'name' => 'LogStoreName',
- 'in' => 'query',
- 'schema' => [
- 'description' => '存储捕获流量的 Logstore。'."\n"
- .'- 如果您已经在当前地域创建了 Logstore,您可以输入已创建的 Logstore 的名称。'."\n"
- .'- 如果您未在当前地域创建 Logstore,您可以为 Logstore 自定义名称,系统会帮您自动创建 Logstore。 Logstore 名称。其命名规则如下:'."\n"
- ."\n"
- .'- 同一个 Project 下,Logstore 名称不可重复。'."\n"
- .'- 只能包括小写字母、数字、短划线(-)和下划线(_)。'."\n"
- .'- 必须以小写字母或者数字开头和结尾。'."\n"
- .'- 长度为 3~63 字符。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'flowlog-logstore',
- ],
+ 'name' => 'ChildInstanceType',
+ 'in' => 'formData',
+ 'schema' => ['description' => '网络实例的类型。取值:'."\n"
+ .'- **VBR**:边界路由器实例。', 'type' => 'string', 'required' => true, 'example' => 'VBR'],
],
[
- 'name' => 'Tag',
- 'in' => 'query',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => '标签。'."\n"
- ."\n"
- .'最多可以绑定20个标签。',
- 'type' => 'array',
- 'items' => [
- 'description' => '标签信息。',
- 'type' => 'object',
- 'properties' => [
- 'Key' => [
- 'description' => '资源的标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestKey',
- ],
- 'Value' => [
- 'description' => '监听的标签值。N的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持128个字符,不能以acs:开头,不能包含http://或者https://。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestValue',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- 'maxItems' => 20,
- ],
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => ['description' => '子实例的描述信息。长度为0~128个字符。', 'type' => 'string', 'required' => false, 'example' => 'test'],
],
[
- 'name' => 'ResourceGroupId',
+ 'name' => 'DryRun',
'in' => 'formData',
- 'allowEmptyValue' => false,
- 'schema' => [
- 'description' => '流日志实例所属的资源组ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-aek2aq7f4va****'."\n",
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
- 'name' => 'TargetSlsRegionId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '当前字段代表需要投递的project所属region信息,仅跨地域投递需要填写该字段, 非跨地域投递不需要填写该字段。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou',
- ],
+ 'name' => 'ClientToken',
+ 'in' => 'formData',
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> '."\n"
+ .'> - 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<CreateAssociationResponse>',
- 'description' => 'RpcResponse<CreateAssociationResponse>',
+ 'title' => 'RpcResponse<ModifyEcrResponse>',
+ 'description' => 'RpcResponse<ModifyEcrResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n",
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的%**s**。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
- 'FlowLogId' => [
- 'description' => '流日志实例ID。',
- 'type' => 'string',
- 'example' => 'ecr-flog-m5evbtbpt****',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => 'DEB383C4-32C9-53DC-9B8B-8DBA26038074'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示成功,返回其他值表示失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'successful'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
- [
- 'errorCode' => 'ResourceAlreadyExist.FlowLogId',
- 'errorMessage' => 'The specified resource of FlowLogId[%s] already exists.',
- ],
- [
- 'errorCode' => 'InternalErrorTemp',
- 'errorMessage' => 'The request processing has failed due to some unknown error.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'ResourceNotFound.InstanceId', 'errorMessage' => 'The instance id does not exist.', 'description' => '当前输入的VPC/TR实例不存在'],
+ ['errorCode' => 'QuotaExceeded.ChildInstanceNum', 'errorMessage' => 'The number of sub-instances in the switching group exceeds threshold.', 'description' => '倒换组中子实例的数量超过阈值。'],
+ ['errorCode' => 'OperationFailed.NotSupportAcrossRegion', 'errorMessage' => 'Switching groups cannot be formed across regional sub-instances.', 'description' => '不支持跨地域子实例形成倒换组。'],
+ ['errorCode' => 'OperationFailed.NotSupportAcrossAccount', 'errorMessage' => 'Switching groups cannot be formed across account sub-instances.', 'description' => '不支持跨账号子实例形成倒换组。'."\n"],
+ ['errorCode' => 'ResourceInConfiguring.NodeId', 'errorMessage' => 'The current subInstance is not in steady state, please try again later.', 'description' => '当前子实例不处于稳态,请稍后重试。'],
+ ['errorCode' => 'IncorrectStatus.HaVbrGroup', 'errorMessage' => 'The current state of the switching group is not steady state, please try again later.', 'description' => '当前倒换组状态不为稳态,请稍后重试。'],
+ ['errorCode' => 'IncorrectStatus.Vbr', 'errorMessage' => 'The current VBR is not in steady state, please try again later.', 'description' => '当前VBR不处于稳态,请稍后重试。'],
+ ['errorCode' => 'OperationFailed.VbrInUsedByOtherHa', 'errorMessage' => 'The VBR in the input switching group is already in another switching group.', 'description' => '输入的倒换组中的VBR已经在其他倒换组中。'],
+ ['errorCode' => 'OperationFailed.VbrBgpPeerNotEnableBfd', 'errorMessage' => 'The configured BGP PEER of the input VBR in the switching group does not enable BFD.', 'description' => '输入的倒换组中的VBR,配置的BGP PEER没有使能BFD。'],
+ ['errorCode' => 'OperationFailed.VbrEcrNotRelation', 'errorMessage' => 'The VBR in the switching group is not bound to ECR.', 'description' => '倒换组中的VBR没有绑定到ECR。'],
+ ['errorCode' => 'DeviceNotSupport.EcrVbrHa', 'errorMessage' => 'The access device where the VBR is located does not support configuring a switching group.', 'description' => 'VBR所处的接入设备不支持配置倒换组。'],
+ ['errorCode' => 'OperationFailed.VbrBgpGroupLocalAsnNotSupport', 'errorMessage' => 'The BGP group AS number of the VBR configuration in the switching group is not supported.', 'description' => '倒换组中的VBR配置的BGP组AS号不支持。'],
+ ['errorCode' => 'OperationFailed.VbrAccessDeviceSame', 'errorMessage' => 'The VBR on the same access device cannot be added to a switching group.', 'description' => '处于同一台接入设备的VBR不能加入到一个倒换组中。'],
+ ['errorCode' => 'OperationFailed.VbrBgpGroupLocalAsnNotTheSameWithEcr', 'errorMessage' => 'The AS number of the BGP group of the VBR added to the switching group is different from the AS number of the ECR.', 'description' => '加入倒换组中的VBR的BGP组的AS号和ECR的AS号不相同。'],
+ ['errorCode' => 'OperationFailed.VbrBgpGroupLocalAsnNotTheSameWithOther', 'errorMessage' => 'The BGP group AS number of the VBR configuration in the switching group is not exactly the same.', 'description' => '加入倒换组中的VBR的BGP组的AS号不完全相同。'],
+ ['errorCode' => 'OperationFailed.VbrEcrNotConsistent', 'errorMessage' => 'The VBR in the switching group is not bound to the same ECR.', 'description' => '倒换组中的VBR没有绑定到同一个ECR中。'],
+ ],
+ 404 => [
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '修改专线网关关联子实例属性',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouterChildInstance',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"FlowLogId\\": \\"ecr-flog-m5evbtbpt****\\"\\n}","type":"json"}]',
- 'title' => '创建流日志',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DEB383C4-32C9-53DC-9B8B-8DBA26038074\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
],
- 'DeleteFlowlog' => [
- 'summary' => '删除流日志。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'ModifyExpressConnectRouterInterRegionTransitMode' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -7257,151 +4396,128 @@
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '253978',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectH4NOM0',
- ],
+ 'abilityTreeCode' => '197619',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectLCKWNS'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'DryRun',
+ 'name' => 'TransitModeList',
'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
+ 'description' => '跨域转发模式列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionId' => ['description' => '专线网关实例所属的地域。', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'],
+ 'Mode' => [
+ 'description' => '专线网关跨域转发模式,取值:'."\n"
+ .'- **ECMP**:负载均衡模式。'."\n"
+ .'- **NearBy**:就近转发模式。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => ['ECMP' => 'ECMP', 'NearBy' => 'NearBy'],
+ 'example' => 'ECMP',
+ ],
+ ],
+ 'required' => false,
+ ],
'required' => false,
- 'example' => 'false',
+ 'maxItems' => 100,
],
],
[
- 'name' => 'ClientToken',
+ 'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
- 'name' => 'FlowLogId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '流日志实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-flog-m5evbtbpt****'."\n",
- ],
+ 'name' => 'ClientToken',
+ 'in' => 'formData',
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => 'FF9nMec/RZ6H9oqFn1pvyir/SLRlxCCyHJonbGzqL01hiM6Jb3wJowdHvjCfog7ww1b9rSHMRFJnrUBfVba68TJg=='],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<CreateAssociationResponse>',
- 'description' => 'RpcResponse<CreateAssociationResponse>',
+ 'title' => 'RpcResponse<ModifyEcrTransitModeResponse>',
+ 'description' => 'RpcResponse<ModifyEcrTransitModeResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n",
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'IllegalParam.RegionId', 'errorMessage' => 'Area parameter invalid.', 'description' => '区域参数非法'],
+ ['errorCode' => 'IllegalParam.TransitMode', 'errorMessage' => 'The transmission mode parameter is invalid.', 'description' => '传输模式参数非法'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ],
+ 404 => [
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '修改专线网关(ECR)的跨地域转发模式',
+ 'summary' => '修改专线网关ECR(Express Connect Router)的跨地域转发模式。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ModifyExpressConnectRouterInterRegionTransitMode'],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
- 'title' => '删除流日志',
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouterInterRegionTransitMode',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
],
'ModifyFlowLogAttribute' => [
'summary' => '可以修改名称、描述、采样率、采样周期。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -7414,110 +4530,67 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '254019',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectH4NOM0',
- ],
+ 'abilityTreeNodes' => ['FEATUREexpressconnectH4NOM0'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-fu8rszhgv7623c****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-fu8rszhgv7623c****'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
[
'name' => 'FlowLogName',
'in' => 'formData',
- 'schema' => [
- 'description' => '流日志的新名称。长度为0~128个字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'myFlowlog',
- ],
+ 'schema' => ['description' => '流日志的新名称。长度为0~128个字符。', 'type' => 'string', 'required' => false, 'example' => 'myFlowlog'],
],
[
'name' => 'Interval',
'in' => 'query',
- 'schema' => [
- 'description' => '流日志捕获流量的捕获窗口时长。单位:秒。取值:'."\n"
- ."\n"
- .'- **60** '."\n"
- .'- **600**'."\n"
- ."\n"
- .'默认值:**600**。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '600',
- ],
+ 'schema' => ['description' => '流日志捕获流量的捕获窗口时长。单位:秒。取值:'."\n"
+ ."\n"
+ .'- **60** '."\n"
+ .'- **600**'."\n"
+ ."\n"
+ .'默认值:**600**。', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '600'],
],
[
'name' => 'SamplingRate',
'in' => 'query',
- 'schema' => [
- 'description' => '采样比例。取值'."\n"
- ."\n"
- .'- **1:4096**'."\n"
- .'- **1:2048**'."\n"
- .'- **1:1024**'."\n"
- ."\n"
- .'默认值:**1:4096**。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '1:4096',
- ],
+ 'schema' => ['description' => '采样比例。取值'."\n"
+ ."\n"
+ .'- **1:4096**'."\n"
+ .'- **1:2048**'."\n"
+ .'- **1:1024**'."\n"
+ ."\n"
+ .'默认值:**1:4096**。', 'type' => 'string', 'required' => false, 'example' => '1:4096'],
],
[
'name' => 'Description',
'in' => 'query',
- 'schema' => [
- 'description' => '流日志的描述信息。描述可以为空或长度为 0~256 个字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'myFlowlog',
- ],
+ 'schema' => ['description' => '流日志的描述信息。描述可以为空或长度为 0~256 个字符。', 'type' => 'string', 'required' => false, 'example' => 'myFlowlog'],
],
[
'name' => 'FlowLogId',
'in' => 'query',
- 'schema' => [
- 'description' => '流日志实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-flog-m5evbtbpt****',
- ],
+ 'schema' => ['description' => '流日志实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-flog-m5evbtbpt****'],
],
],
'responses' => [
@@ -7527,509 +4600,278 @@
'description' => 'RpcResponse<CreateAssociationResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n",
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '实例操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n"],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '实例操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'."\n"],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'."\n"],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'UnsupportedRegion', 'errorMessage' => 'Feature not supported in specified region.', 'description' => '指定的地域当前不支持专线网关功能。'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
+ 'staticInfo' => ['returnType' => 'synchronous'],
'title' => '修改流日志',
- ],
- 'DescribeFlowLogs' => [
- 'summary' => '查询流日志。',
- 'methods' => [
- 'post',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ModifyFlowLogAttribute'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyFlowLogAttribute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
+ ],
+ 'MoveResourceGroup' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '253981',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectH4NOM0',
- ],
+ 'abilityTreeCode' => '200712',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectJZV4YI'],
],
'parameters' => [
[
- 'name' => 'EcrId',
+ 'name' => 'NewResourceGroupId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-a5xqrgbeidz1w8****',
- ],
+ 'schema' => ['description' => '新资源组ID。'."\n"
+ .'关于资源组的更多信息,请参见[什么是资源组](~~94475~~)。'."\n", 'type' => 'string', 'required' => true, 'example' => 'rg-acfmvt3xpr5****'],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'formData',
+ 'schema' => ['description' => '资源类型。可能的值:'."\n"
+ ."\n"
+ .'- EXPRESSCONNECTROUTER:专线网关。', 'type' => 'string', 'required' => true, 'example' => 'EXPRESSCONNECTROUTER'],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '需要修改资源组的云资源的实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-897j0jooxyr1aq****'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => '是否只预检此次请求,取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改资源组。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n"
+ .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
+ 'schema' => ['description' => '用于保证请求的幂等性,防止重复提交请求。由客户端生成该参数值,要保证在不同请求间唯一,最大值不超过64个ASCII字符,且该参数值中不能包含非ASCII字符。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
+ 'title' => 'RpcResponse<BaseResult>',
+ 'description' => 'RpcResponse<BaseResult>',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['description' => '本次请求的ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **true**:成功。'."\n"
+ .'- **false**:失败。', 'type' => 'boolean', 'example' => 'true'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '接口返回信息', 'type' => 'string', 'example' => 'OK'],
+ ],
],
],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '修改专线网关所属的资源组',
+ 'summary' => '修改专线网关所属的资源组。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'MoveResourceGroup'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'Tag',
- 'in' => 'query',
- 'style' => 'repeatList',
- 'schema' => [
- 'description' => '标签。'."\n"
- ."\n"
- .'最多可以绑定20个标签。',
- 'type' => 'array',
- 'items' => [
- 'description' => '标签列表。',
- 'type' => 'object',
- 'properties' => [
- 'Key' => [
- 'description' => '资源的标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestKey',
- ],
- 'Value' => [
- 'description' => '监听的标签值。N的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持128个字符,不能以acs:开头,不能包含http://或者https://。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestValue',
- ],
- ],
- 'required' => false,
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:MoveResourceGroup',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
],
- 'required' => false,
- 'maxItems' => 20,
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\"\\n}","type":"json"}]',
+ ],
+ 'RevokeInstanceFromExpressConnectRouter' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'NextToken',
- 'in' => 'query',
- 'schema' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- ."\n"
- .'- 如果 NextToken 为空表示没有下一次查询。'."\n"
- .'- 如果 NextToken 有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gAAAAABkWw*******',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '197623',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect7LHFR8', 'FEATUREexpressconnectQL8QN0', 'FEATUREexpressconnectNHSYB7'],
+ ],
+ 'parameters' => [
[
- 'name' => 'MaxResults',
- 'in' => 'query',
- 'schema' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值:10。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'name' => 'EcrId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-mezk2idmsd0vx2****'],
],
[
- 'name' => 'FlowLogId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '流日志实例ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ecr-flog-jqnr0veifo5d****',
- ],
+ 'name' => 'EcrOwnerAliUid',
+ 'in' => 'formData',
+ 'schema' => ['description' => '撤销授权的ECR实例所属阿里云账号(主账号)ID。', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '121012345612****'."\n"],
],
[
- 'name' => 'FlowLogName',
- 'in' => 'query',
- 'schema' => [
- 'description' => '流日志名称。长度为0~128个字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'same-flowlog',
- ],
+ 'name' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '网络实例的ID。', 'type' => 'string', 'required' => true, 'example' => 'vbr-j6cwxhgg0s5nuephp****'],
],
[
- 'name' => 'ProjectName',
- 'in' => 'query',
- 'schema' => [
- 'description' => '存储捕获流量的 Project。'."\n"
- .'- 如果您已经在当前地域创建了 Project,您可以输入已创建的 Project 的名称。'."\n"
- .'- 如果您未在当前地域创建 Project,您可以为 Project 自定义名称,系统会帮您自动创建 Project。'."\n"
- ."\n\n"
- .'Project 名称在阿里云地域内全局唯一,创建后不可修改。其命名规则如下:'."\n"
- .' '."\n"
- .'- Project名称必须全局唯一。'."\n"
- .'- 只能包括小写'."\n"
- .'- 字母、数字和短划线(-)。'."\n"
- .'- 必须以小写字母或者数字开头和结尾。'."\n"
- .'- 长度为 3~63 字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'myFlowlog',
- ],
+ 'name' => 'InstanceType',
+ 'in' => 'formData',
+ 'schema' => ['description' => '网络实例的类型。取值:'."\n"
+ .'- **VBR**:边界路由器实例。'."\n"
+ .'- **VPC**:专有网络实例。', 'type' => 'string', 'required' => true, 'example' => 'VBR'],
],
[
- 'name' => 'LogStoreName',
- 'in' => 'query',
- 'schema' => [
- 'description' => '存储捕获流量的 Logstore。'."\n"
- .'- 如果您已经在当前地域创建了 Logstore,您可以输入已创建的 Logstore 的名称。'."\n"
- .'- 如果您未在当前地域创建 Logstore,您可以为 Logstore 自定义名称,系统会帮您自动创建 Logstore。 Logstore 名称。其命名规则如下:'."\n"
- ."\n"
- .'- 同一个 Project 下,Logstore 名称不可重复。'."\n"
- .'- 只能包括小写字母、数字、短划线(-)和下划线(_)。'."\n"
- .'- 必须以小写字母或者数字开头和结尾。'."\n"
- .'- 长度为 3~63 字符。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'myFlowlog',
- ],
+ 'name' => 'InstanceRegionId',
+ 'in' => 'formData',
+ 'schema' => ['description' => '撤销授权的网络实例所在的地域。', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'],
],
[
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '专线网关加载的VBR实例ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vbr-j6cwxhgg0s5nuephp****'."\n",
- ],
+ 'name' => 'DryRun',
+ 'in' => 'formData',
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
[
- 'name' => 'ResourceGroupId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '流日志实例所属资源组的ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-aek2aq7f4va****',
- ],
+ 'name' => 'ClientToken',
+ 'in' => 'formData',
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'."\n"],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<CreateAssociationResponse>',
- 'description' => 'RpcResponse<CreateAssociationResponse>',
+ 'title' => 'RpcResponse<RevokeInstanceFromEcrResponse>',
+ 'description' => 'RpcResponse<RevokeInstanceFromEcrResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
- 'TotalCount' => [
- 'description' => '符合查询条件的记录总数。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '11',
- ],
- 'MaxResults' => [
- 'description' => '本次读取的最大数据量。取值范围:1~2147483647。默认值为10。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'NextToken' => [
- 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n"
- .'- 如果**NextToken**为空表示没有下一次查询。'."\n"
- .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。',
- 'type' => 'string',
- 'example' => 'AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****',
- ],
- 'FlowLogs' => [
- 'description' => '流日志信息列表。',
- 'type' => 'array',
- 'items' => [
- 'description' => '流日志信息。',
- 'type' => 'object',
- 'properties' => [
- 'FlowLogId' => [
- 'description' => '流日志实例ID。',
- 'type' => 'string',
- 'example' => 'ecr-flog-leypqehtgtia2*****',
- ],
- 'EcrId' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'example' => 'ecr-h4cop1khw98*****',
- ],
- 'RegionId' => [
- 'description' => 'ECR所属的地域ID。',
- 'type' => 'string',
- 'example' => 'cn-shanghai',
- ],
- 'Status' => [
- 'description' => '流日志的状态。'."\n"
- .'- **Active**:已启动。'."\n"
- .'- **Inactive**:未启动。',
- 'type' => 'string',
- 'example' => 'Active',
- ],
- 'FlowLogName' => [
- 'description' => '流日志的名称。',
- 'type' => 'string',
- 'example' => 'myFlowlog',
- ],
- 'Description' => [
- 'description' => '专线网关实例的描述信息。',
- 'type' => 'string',
- 'example' => 'myFlowlog',
- ],
- 'Interval' => [
- 'description' => '流日志捕获流量的捕获窗口时长。单位:秒。取值:'."\n"
- ."\n"
- .'- **60** '."\n"
- .'- **600**'."\n"
- ."\n"
- .'默认值:**600**。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '600',
- ],
- 'SamplingRate' => [
- 'description' => '采样比例。取值'."\n"
- ."\n"
- .'- **1:4096**'."\n"
- .'- **1:2048**'."\n"
- .'- **1:1024**'."\n"
- ."\n"
- .'默认值:**1:4096**。',
- 'type' => 'string',
- 'example' => '1:4096 ',
- ],
- 'LogStoreName' => [
- 'description' => '存储捕获流量的 LogStore 名称。',
- 'type' => 'string',
- 'example' => 'FlowLogStore',
- ],
- 'ProjectName' => [
- 'description' => '存储捕获流量的 Project 名称。',
- 'type' => 'string',
- 'example' => 'FlowLogProject',
- ],
- 'InstanceType' => [
- 'description' => '网络实例的类型。取值:'."\n"
- .'- **VBR**:边界路由器实例。',
- 'type' => 'string',
- 'example' => 'VBR',
- ],
- 'ResourceGroupId' => [
- 'description' => '专线网关实例所属资源组的ID。',
- 'type' => 'string',
- 'example' => 'rg-aekzb3xwrexc4ry',
- ],
- 'Tags' => [
- 'description' => '专线网关实例的标签键。',
- 'type' => 'array',
- 'items' => [
- 'description' => '专线网关实例的标签键。',
- 'type' => 'object',
- 'properties' => [
- 'Key' => [
- 'description' => '实例的标签键。一旦传入该值,则不允许为空字符串。'."\n"
- ."\n"
- .'> 最多支持64个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。',
- 'type' => 'string',
- 'example' => 'TagKey',
- ],
- 'Value' => [
- 'description' => '标签值。'."\n"
- ."\n"
- .'>最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦输入该值,可以为空字符串。',
- 'type' => 'string',
- 'example' => 'TagValue',
- ],
- ],
- ],
- ],
- 'InstanceId' => [
- 'description' => '授权实例的ID。',
- 'type' => 'string',
- 'example' => 'vbr-9dpty76irpf4u15*****',
- ],
- 'CreationTime' => [
- 'description' => '流日志的创建时间。'."\n"
- .'时间按照 ISO8601 标准表示,并使用 UTC 时间。格式为:YYYY-MM-DDThh:mm:ssZ。',
- 'type' => 'string',
- 'example' => '2023-09-21T04:20Z',
- ],
- 'SlsRegionId' => [
- 'description' => '日志服务的地域ID。',
- 'type' => 'string',
- 'example' => 'cn-hangzhou',
- ],
- ],
- ],
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '撤销授权网络实例是否成功。取值:'."\n"
+ ."\n"
+ .'- **true**:成功。'."\n"
+ ."\n"
+ .'- **false**:失败。', 'type' => 'boolean', 'example' => 'true'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
- [
- 'errorCode' => 'IllegalParamFormat.%s',
- 'errorMessage' => 'The param format of %s is illegal.',
- ],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'IllegalParam.%s', 'errorMessage' => 'The param of %s is illegal.', 'description' => '参数非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\",\\n \\"TotalCount\\": 11,\\n \\"MaxResults\\": 10,\\n \\"NextToken\\": \\"AAAAAYws9fJ0Ur4MGm/5OkDoW/Zn0J0/sCjivzwX9oBcwFnWaaas/kSG+J/WzLOxJHS4****\\",\\n \\"FlowLogs\\": [\\n {\\n \\"FlowLogId\\": \\"ecr-flog-leypqehtgtia2*****\\",\\n \\"EcrId\\": \\"ecr-h4cop1khw98*****\\",\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"Status\\": \\"Active\\",\\n \\"FlowLogName\\": \\"myFlowlog\\",\\n \\"Description\\": \\"myFlowlog\\",\\n \\"Interval\\": 600,\\n \\"SamplingRate\\": \\"1:4096 \\",\\n \\"LogStoreName\\": \\"FlowLogStore\\",\\n \\"ProjectName\\": \\"FlowLogProject\\",\\n \\"InstanceType\\": \\"VBR\\",\\n \\"ResourceGroupId\\": \\"rg-aekzb3xwrexc4ry\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TagKey\\",\\n \\"Value\\": \\"TagValue\\"\\n }\\n ],\\n \\"InstanceId\\": \\"vbr-9dpty76irpf4u15*****\\",\\n \\"CreationTime\\": \\"2023-09-21T04:20Z\\",\\n \\"SlsRegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n}","type":"json"}]',
- 'title' => '查询流日志',
- ],
- 'DeactivateFlowLog' => [
- 'summary' => '流日志停止日志投递。',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '撤销网络实例对专线网关(ECR)的授权',
+ 'summary' => '撤销专有网络(VPC)或者边界路由器(VBR)对跨账号的专线网关ECR(Express Connect Router)的授权。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RevokeInstanceFromExpressConnectRouter'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:RevokeInstanceFromExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [
+ ['conditionKey' => 'InstanceType'],
+ ],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'VPC', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vpc/{#VpcId}'],
+ ['validationType' => 'conditional', 'product' => 'ExpressConnectRouter', 'resourceType' => 'VirtualBorderRouter', 'arn' => 'acs:expressconnect:{#regionId}:{#accountId}:virtualborderrouter/{#VbrId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
+ ],
+ 'SynchronizeExpressConnectRouterInterRegionBandwidth' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -8038,301 +4880,229 @@
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '254021',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectH4NOM0',
- ],
+ 'abilityTreeCode' => '197625',
+ 'abilityTreeNodes' => ['FEATUREexpressconnect9IGKFS'],
],
'parameters' => [
[
'name' => 'EcrId',
'in' => 'formData',
- 'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
- ],
+ 'schema' => ['description' => '专线网关实例ID。', 'type' => 'string', 'required' => true, 'example' => 'ecr-fu8rszhgv7623c****'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- ."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
- ],
- [
- 'name' => 'FlowLogId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '流日志实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'ecr-flog-m5evbtbpt****'."\n",
- ],
+ 'schema' => ['description' => '客户端Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<CreateAssociationResponse>',
- 'description' => 'RpcResponse<CreateAssociationResponse>',
+ 'title' => 'RpcResponse<SyncEcrBandwidthResponse>',
+ 'description' => 'RpcResponse<SyncEcrBandwidthResponse>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId',
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则代表所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.',
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **True**:成功。'."\n"
+ .'- **False**:失败。', 'type' => 'boolean', 'example' => 'True'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为 200 表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '操作返回信息。', 'type' => 'string', 'example' => 'OK'],
+ 'HttpStatusCode' => ['description' => 'HTTP状态码。', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'DynamicCode' => ['description' => '动态错误码。', 'type' => 'string', 'example' => 'IllegalParamFormat.EcrId'],
+ 'DynamicMessage' => ['description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
+ ."\n"
+ .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsInstanceId**,则代表所传入的请求参数**DtsInstanceId**不合法。', 'type' => 'string', 'example' => 'The param format of EcrId **** is illegal.'],
+ 'AccessDeniedDetail' => ['description' => '访问被拒绝详细信息。', 'type' => 'string', 'example' => 'Authentication is failed for ****'],
],
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
+ ['errorCode' => 'IncorrectStatus.Ecr', 'errorMessage' => 'Ecr Status does not allow current operation.', 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['errorCode' => 'OperationDenied.ForceDeleting', 'errorMessage' => 'The current instance is being deleted.', 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['errorCode' => 'MissingParam.%s', 'errorMessage' => 'The param of %s is missing.', 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['errorCode' => 'IllegalParamFormat.%s', 'errorMessage' => 'The param format of %s is illegal.', 'description' => '参数格式非法'],
+ ['errorCode' => 'Conflict.Lock', 'errorMessage' => 'There are other unfinished operations.', 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ],
+ 404 => [
+ ['errorCode' => 'ResourceNotFound.EcrId', 'errorMessage' => 'EcrId not found.', 'description' => 'ECR实例不存在'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '同步专线网关ECR的跨域带宽',
+ 'summary' => '同步专线网关ECR(Express Connect Router)的各地域之间的转发带宽限制。',
+ 'description' => '专线网关实例为**Active**状态时才允许更新。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SynchronizeExpressConnectRouterInterRegionBandwidth'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:SynchronizeExpressConnectRouterInterRegionBandwidth',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\"\\n}","type":"json"}]',
- 'title' => '停止流日志',
],
- 'ActivateFlowLog' => [
- 'summary' => '流日志开启日志投递。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'TagResources' => [
+ 'summary' => '专线网关绑定标签。每次调用该 API 只能为一个专线网关绑定标签,可一次绑定多个标签。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '254020',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectH4NOM0',
- ],
+ 'abilityTreeCode' => '200701',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectI9TIJD'],
],
'parameters' => [
[
- 'name' => 'EcrId',
+ 'name' => 'ResourceId',
'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '专线网关实例ID。',
- 'type' => 'string',
+ 'description' => '资源的实例 ID 列表。'."\n"
+ ."\n"
+ .'最多支持添加20个资源。',
+ 'type' => 'array',
+ 'items' => ['description' => '资源实例 ID 。', 'type' => 'string', 'required' => false, 'example' => 'ecr-897j0jooxyr1aq****'],
'required' => true,
- 'example' => 'ecr-mezk2idmsd0vx2****',
+ 'maxItems' => 100,
],
],
[
- 'name' => 'DryRun',
+ 'name' => 'Tag',
'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
+ 'description' => '要进行绑定的标签列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '要进行绑定的标签。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => '资源的标签键。'."\n"
+ ."\n"
+ .'一旦传入该值,则不允许为空字符串。最多支持64个字符,不能以`aliyun`或者`acs:`开头,不能包含`http://`或者`https:// `。'."\n"
+ ."\n"
+ .'一次最多支持输入20个标签的标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'],
+ 'Value' => ['description' => '标签值。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦输入该值,可以为空字符串。'."\n"
+ ."\n"
+ .'一次调用最多支持添加20个标签值。', 'type' => 'string', 'required' => false, 'example' => 'TestValue'],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
],
],
[
- 'name' => 'ClientToken',
+ 'name' => 'ResourceType',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId可能不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '资源类型。支持的类型包括:'."\n"
+ .'- **EXPRESSCONNECTROUTER**:专线网关ECR实例。'."\n"
+ .'- **EXPRESSCONNECTROUTERVPCASSOCIATION**:ECR与VPC的关联关系。'."\n"
+ .'- **EXPRESSCONNECTROUTERTRASSOCIATION**:ECR与TR的关联关系。'."\n"
+ .'- **ECRFLOWLOG**:ECR流日志。', 'type' => 'string', 'required' => true, 'example' => 'EXPRESSCONNECTROUTER'],
],
[
- 'name' => 'FlowLogId',
+ 'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '流日志实例ID。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'flowlog-m5evbtbpt****'."\n",
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'formData',
+ 'schema' => ['description' => '客户端 Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用 API 请求的 **RequestId** 作为 **ClientToken** 标识。每次 API 请求的 **RequestId** 不一样。', 'type' => 'string', 'required' => false, 'example' => '02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'RpcResponse<CreateAssociationResponse>',
- 'description' => 'RpcResponse<CreateAssociationResponse>',
+ 'title' => 'RpcResponse<BaseResult>',
+ 'description' => 'RpcResponse<BaseResult>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '05130E79-588D-5C40-A718-C4863A59****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **True**:成功。'."\n"
- .'- **False**:失败。',
- 'type' => 'boolean',
- 'example' => 'True',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '操作返回信息。',
- 'type' => 'string',
- 'example' => 'OK',
- ],
- 'HttpStatusCode' => [
- 'description' => 'HTTP状态码。',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'DynamicCode' => [
- 'description' => '动态错误码。',
- 'type' => 'string',
- 'example' => 'IllegalParamFormat.EcrId'."\n",
- ],
- 'DynamicMessage' => [
- 'description' => '动态错误信息,用于替换返回参数**ErrMessage**错误信息中的`%s`。'."\n"
- ."\n"
- .'> 如果**ErrMessage**返回**The Value of Input Parameter %s is not valid**,且**DynamicMessage**返回**DtsJobId**,则表示所传入的请求参数**DtsJobId**不合法。',
- 'type' => 'string',
- 'example' => 'The param format of EcrId **** is illegal.'."\n",
- ],
- 'AccessDeniedDetail' => [
- 'description' => '访问被拒绝详细信息。',
- 'type' => 'string',
- 'example' => 'Authentication is failed for ****'."\n",
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **true**:成功。'."\n"
+ .'- **false**:失败。', 'type' => 'boolean', 'example' => 'true'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '接口返回信息', 'type' => 'string', 'example' => 'OK'],
],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'IncorrectStatus.Ecr',
- 'errorMessage' => 'Ecr Status does not allow current operation.',
- ],
- [
- 'errorCode' => 'OperationDenied.ForceDeleting',
- 'errorMessage' => 'The current instance is being deleted.',
- ],
- [
- 'errorCode' => 'UnsupportedRegion',
- 'errorMessage' => 'Feature not supported in specified region.',
- ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\"\\n}","type":"json"}]',
+ 'title' => '专线网关绑定标签',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'TagResources'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:TagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"05130E79-588D-5C40-A718-C4863A59****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\",\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"IllegalParamFormat.EcrId\\\\n\\",\\n \\"DynamicMessage\\": \\"The param format of EcrId **** is illegal.\\\\n\\",\\n \\"AccessDeniedDetail\\": \\"Authentication is failed for ****\\\\n\\"\\n}","type":"json"}]',
- 'title' => '启用流日志',
],
- 'TagResources' => [
- 'summary' => '专线网关绑定标签。每次调用该 API 只能为一个专线网关绑定标签,可一次绑定多个标签。',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'UntagResources' => [
+ 'summary' => '解绑专线网关的标签。',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -8344,10 +5114,8 @@
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '200701',
- 'abilityTreeNodes' => [
- 'FEATUREexpressconnectI9TIJD',
- ],
+ 'abilityTreeCode' => '218206',
+ 'abilityTreeNodes' => ['FEATUREexpressconnectI9TIJD'],
],
'parameters' => [
[
@@ -8355,90 +5123,63 @@
'in' => 'formData',
'style' => 'repeatList',
'schema' => [
- 'description' => '专线网关实例 ID 列表。',
+ 'description' => '资源的实例ID列表。'."\n"
+ .'最多支持解绑 50 个资源实例ID。',
'type' => 'array',
- 'items' => [
- 'description' => '专线网关实例 ID 列表。最多支持添加20个资源。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ecr-897j0jooxyr1aq****',
- ],
+ 'items' => ['description' => '资源的实例ID。', 'type' => 'string', 'required' => false, 'example' => 'ecr-897j0jooxyr1aq****'],
'required' => true,
'maxItems' => 100,
],
],
[
- 'name' => 'Tag',
+ 'name' => 'TagKey',
'in' => 'formData',
'style' => 'repeatList',
'schema' => [
- 'description' => '要进行绑定的标签列表。',
+ 'description' => '要解绑的专线网关实例的标签键。',
'type' => 'array',
- 'items' => [
- 'description' => '要进行绑定的标签。',
- 'type' => 'object',
- 'properties' => [
- 'Key' => [
- 'description' => '资源的标签键。'."\n"
- ."\n"
- .'一旦传入该值,则不允许为空字符串。最多支持64个字符,不能以`aliyun`或者`acs:`开头,不能包含`http://`或者`https:// `。'."\n"
- ."\n"
- .'一次最多支持输入20个标签的标签键。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestKey',
- ],
- 'Value' => [
- 'description' => '标签值。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。一旦输入该值,可以为空字符串。'."\n"
- ."\n"
- .'一次调用最多支持添加20个标签值。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TestValue',
- ],
- ],
- 'required' => false,
- ],
- 'required' => true,
+ 'items' => ['description' => '要解绑的专线网关实例的标签键。', 'type' => 'string', 'required' => false, 'example' => 'TestKey'],
+ 'required' => false,
'maxItems' => 100,
],
],
[
+ 'name' => 'All',
+ 'in' => 'formData',
+ 'schema' => ['description' => '是否解绑所有标签,只针对**TagKey**为空时有效。取值:'."\n"
+ ."\n"
+ .'- **true**:解绑专线网关实例的所有标签。'."\n"
+ .'- **false**(默认值):不解绑专线网关实例的所有标签。'."\n"
+ ."\n"
+ .'> 您必须输入参数 **TagKey** 和参数 **All** 中的任意一个。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
+ ],
+ [
'name' => 'ResourceType',
'in' => 'formData',
- 'schema' => [
- 'description' => '资源类型。支持的类型为 **EXPRESSCONNECTROUTER**,即专线网关实例。',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'EXPRESSCONNECTROUTER',
- ],
+ 'schema' => ['description' => '资源类型。支持的类型包括:'."\n"
+ .'- **EXPRESSCONNECTROUTER**:专线网关ECR实例。'."\n"
+ .'- **EXPRESSCONNECTROUTERVPCASSOCIATION**:ECR与VPC的关联关系。'."\n"
+ .'- **EXPRESSCONNECTROUTERTRASSOCIATION**:ECR与TR的关联关系。'."\n"
+ .'- **ECRFLOWLOG**:ECR流日志。', 'type' => 'string', 'required' => true, 'example' => 'EXPRESSCONNECTROUTER'],
],
[
'name' => 'DryRun',
'in' => 'formData',
- 'schema' => [
- 'description' => '是否只预检此次请求。取值:'."\n"
- ."\n"
- .'- **true**:发送检查请求,不会修改服务资源。'."\n"
- .'- **false**(默认值):发送正常请求。',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => '是否只预检此次请求。取值:'."\n"
+ ."\n"
+ .'- **true**:发送检查请求,不会修改服务资源。'."\n"
+ ."\n"
+ .'- **false**(默认值):发送正常请求。', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
],
[
'name' => 'ClientToken',
'in' => 'formData',
- 'schema' => [
- 'description' => '客户端 Token,用于保证请求的幂等性。'."\n"
- ."\n"
- .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符。'."\n"
- ."\n"
- .'> 若您未指定,则系统自动使用 API 请求的 **RequestId** 作为 **ClientToken** 标识。每次 API 请求的 **RequestId** 不一样。',
- 'type' => 'string',
- 'required' => false,
- 'example' => '02fb3da4-130e-11e9-8e44-00****',
- ],
+ 'schema' => ['description' => '客户端 Token,用于保证请求的幂等性。'."\n"
+ ."\n"
+ .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符。'."\n"
+ ."\n"
+ .'> 若您未指定,则系统自动使用 API 请求的 **RequestId** 作为 **ClientToken** 标识。每次 API 请求的 **RequestId** 不一样。', 'type' => 'string', 'required' => false, 'example' => ' '."\n"
+ .'02fb3da4-130e-11e9-8e44-00****'],
],
],
'responses' => [
@@ -8448,168 +5189,721 @@
'description' => 'RpcResponse<BaseResult>',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => '请求ID。',
- 'type' => 'string',
- 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****',
- ],
- 'Success' => [
- 'description' => '是否调用成功。取值:'."\n"
- ."\n"
- .'- **true**:成功。'."\n"
- .'- **false**:失败。',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'Code' => [
- 'description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Message' => [
- 'description' => '接口返回信息',
- 'type' => 'string',
- 'example' => 'OK',
- ],
+ 'RequestId' => ['description' => '请求ID。', 'type' => 'string', 'example' => '6FABF516-FED3-5697-BDA2-B18C5D9A****'."\n"],
+ 'Success' => ['description' => '是否调用成功。取值:'."\n"
+ ."\n"
+ .'- **true**:成功。'."\n"
+ .'- **false**:失败。', 'type' => 'boolean', 'example' => 'true'],
+ 'Code' => ['description' => '判断调用是否成功。返回值为200表示加载成功,返回其他值表示加载失败,失败原因参见错误码。', 'type' => 'string', 'example' => '200'],
+ 'Message' => ['description' => '接口返回信息', 'type' => 'string', 'example' => 'OK'],
],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\"\\n}","type":"json"}]',
+ 'title' => '专线网关解绑标签',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UntagResources'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:UntagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6FABF516-FED3-5697-BDA2-B18C5D9A****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"OK\\"\\n}","type":"json"}]',
- 'title' => '专线网关绑定标签',
],
],
'endpoints' => [
- [
- 'regionId' => 'cn-qingdao',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-beijing',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-zhangjiakou',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-zhengzhou-jva',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-huhehaote',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-wulanchabu',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-hangzhou',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-shanghai',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-nanjing',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-fuzhou',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-shenzhen',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-heyuan',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-guangzhou',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-chengdu',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-wuhan-lr',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-hongkong',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-northeast-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-northeast-2',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-southeast-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-southeast-3',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-southeast-5',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-southeast-6',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'us-east-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'us-west-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'eu-west-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'eu-central-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-shanghai-finance-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-shenzhen-finance-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-southeast-7',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
+ ['regionId' => 'cn-hongkong', 'regionName' => '中国香港', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-zhangjiakou', 'regionName' => '华北3(张家口)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-zhengzhou-jva', 'regionName' => '郑州(联通合营)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-shenzhen', 'regionName' => '华南1(深圳)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-beijing', 'regionName' => '华北2(北京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-wulanchabu', 'regionName' => '华北6(乌兰察布)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-nanjing', 'regionName' => '华东5(南京-本地地域)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'ap-northeast-2', 'regionName' => '韩国(首尔)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'ap-northeast-1', 'regionName' => '日本(东京)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-fuzhou', 'regionName' => '华东6(福州-本地地域)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-chengdu', 'regionName' => '西南1(成都)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-qingdao', 'regionName' => '华北1(青岛)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-wuhan-lr', 'regionName' => '华中1(武汉-本地地域)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-shanghai', 'regionName' => '华东2(上海)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-guangzhou', 'regionName' => '华南3(广州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-heyuan', 'regionName' => '华南2(河源)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-1', 'regionName' => '新加坡', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-3', 'regionName' => '马来西亚(吉隆坡)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-huhehaote', 'regionName' => '华北5(呼和浩特)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-5', 'regionName' => '印度尼西亚(雅加达)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-6', 'regionName' => '菲律宾(马尼拉)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-7', 'regionName' => '泰国(曼谷)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-hangzhou', 'regionName' => '华东1(杭州)', 'areaId' => 'asiaPacific', 'areaName' => '亚太', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'us-west-1', 'regionName' => '美国(硅谷)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'us-east-1', 'regionName' => '美国(弗吉尼亚)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'eu-central-1', 'regionName' => '德国(法兰克福)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'eu-west-1', 'regionName' => '英国(伦敦)', 'areaId' => 'europeAmerica', 'areaName' => '欧洲与美洲', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'me-central-1', 'regionName' => '沙特(利雅得)', 'areaId' => 'middleEast', 'areaName' => '中东', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => 'expressconnectrouter.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-shenzhen-finance-1', 'regionName' => '华南1 金融云', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-shanghai-finance-1', 'regionName' => '华东2 金融云', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-heyuan-acdr-1', 'regionName' => '河源专属云汽车合规', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-beijing-finance-1', 'regionName' => '华北2 金融云(邀测)', 'areaId' => 'industryCloud', 'areaName' => '行业云', 'public' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com', 'vpc' => ''],
+ ],
+ 'errorCodes' => [
+ ['code' => 'Conflict.AllowedPrefixes', 'message' => 'The allowed route prefixes [%s] is conflict.', 'http_code' => 400, 'description' => '当前配置的路由前缀已存在,请确认后重新提交。'],
+ ['code' => 'Conflict.ASNOfECR', 'message' => 'ASN already used by other ECR.', 'http_code' => 400, 'description' => '指定的ASN被其它专线网关占用,请换成其它未使用的ASN。'],
+ ['code' => 'Conflict.ASNOfVBR', 'message' => 'ASN already used by other VBR.', 'http_code' => 400, 'description' => '当前VBR BgpGroup localAsn与ECR asn不一致,请调整一致后重新绑定。'],
+ ['code' => 'Conflict.Lock', 'message' => 'There are other unfinished operations.', 'http_code' => 400, 'description' => '您当前有其他未完成的操作,请稍后重试'],
+ ['code' => 'DeviceNotSupport.EcrVbrHa', 'message' => 'The access device where the VBR is located does not support configuring a switching group.', 'http_code' => 400, 'description' => 'VBR所处的接入设备不支持配置倒换组。'],
+ ['code' => 'ExclusiveParam.TransitRouterIdAndVpcId', 'message' => 'A private network instance cannot be bound to a forwarding router instance at the same time.', 'http_code' => 400, 'description' => '专有网络实例与转发路由器实例无法同时绑定,请调整后选择其中一个实例进行绑定'],
+ ['code' => 'IllegalParam.%s', 'message' => 'The param of %s is illegal.', 'http_code' => 400, 'description' => '参数非法'],
+ ['code' => 'IllegalParam.AlibabaSideAsn', 'message' => 'The entered Bgp Asn is incorrect.', 'http_code' => 400, 'description' => '当前输入的BgpAsn不正确,请检查后重新输入'],
+ ['code' => 'IllegalParam.EcrOwnerAliUid', 'message' => 'The Ecr instance account parameter is invalid.', 'http_code' => 400, 'description' => '该专线网关实例账号为非法参数,请核对后重新输入'],
+ ['code' => 'IllegalParam.InstanceOwnerId', 'message' => 'Specified parameter InstanceOwnerId is not valid.', 'http_code' => 400, 'description' => '该实例账号为非法参数,请核对后重新输入'."\n"],
+ ['code' => 'IllegalParam.RegionId', 'message' => 'Area parameter invalid.', 'http_code' => 400, 'description' => '区域参数非法'],
+ ['code' => 'IllegalParam.TransitMode', 'message' => 'The transmission mode parameter is invalid.', 'http_code' => 400, 'description' => '传输模式参数非法'],
+ ['code' => 'IllegalParamFormat.%s', 'message' => 'The param format of %s is illegal.', 'http_code' => 400, 'description' => '参数格式非法'],
+ ['code' => 'IllegalParamFormat.AllowedPrefixes', 'message' => 'The prefix parameter format is invalid. Procedure.', 'http_code' => 400, 'description' => '指定的前缀路由网段格式错误。'],
+ ['code' => 'IllegalParamFormat.CenId', 'message' => 'The format of the entered Cen instance ID is incorrect.', 'http_code' => 400, 'description' => '当前输入的Cen实例ID格式不正确'],
+ ['code' => 'IllegalParamFormat.DestinationCidrBlock', 'message' => 'The format of the specified destination Cidr route parameter is incorrect.', 'http_code' => 400, 'description' => '您当前指定的目的Cidr路由参数格式错误,请核对后重新输入。'],
+ ['code' => 'IllegalParamSize.AllowedPrefixes', 'message' => 'The number of prefix routes exceeded the quota.', 'http_code' => 400, 'description' => '您当前输入的前缀路由数量超过配额,请申请扩容。'],
+ ['code' => 'IncorrectStatus.Ecr', 'message' => 'Ecr Status does not allow current operation.', 'http_code' => 400, 'description' => '专线网关实例状态不允许当前操作。目前有其它操作正在执行或者专线网关实例正在被删除,请求稍后再试'],
+ ['code' => 'IncorrectStatus.EcrAssociation', 'message' => 'Ecr Association Status does not allow current operation.', 'http_code' => 400, 'description' => 'ECR Association实例不允许当前操作。请在进行中的操作完成后,重试'],
+ ['code' => 'IncorrectStatus.HaVbrGroup', 'message' => 'The current state of the switching group is not steady state, please try again later.', 'http_code' => 400, 'description' => '当前倒换组状态不为稳态,请稍后重试。'],
+ ['code' => 'IncorrectStatus.Vbr', 'message' => 'The current VBR is not in steady state, please try again later.', 'http_code' => 400, 'description' => '当前VBR不处于稳态,请稍后重试。'],
+ ['code' => 'MissingParam.%s', 'message' => 'The param of %s is missing.', 'http_code' => 400, 'description' => '请求参数未填写,请核对对应的参数后重试。'],
+ ['code' => 'OperationDenied.AttachmentInCurrentRegionExisted', 'message' => 'Only one forwarding router can be bound to an area.', 'http_code' => 400, 'description' => '当前操作被拒绝,专线网关实例在同一区域内只支持绑定一个转发路由器'],
+ ['code' => 'OperationDenied.CrossAccountAttaching', 'message' => 'If the forwarding router is bound to another account, perform this operation on the same account.', 'http_code' => 400, 'description' => '当前操作被拒绝,绑定其他账号转发路由器时,需在该账号做此操作'],
+ ['code' => 'OperationDenied.CrossAccountDisassociating', 'message' => 'Unbind cross-account.', 'http_code' => 400, 'description' => '当前操作被拒绝,需在跨账号页面解除绑定操作后再执行此操作'],
+ ['code' => 'OperationDenied.CrossBidAssociating', 'message' => 'Cross-border binding of resources is subject to compliance constraints.', 'http_code' => 400, 'description' => '您当前的绑定资源涉及跨中国站点资源和海外站点资源互通,受限于合规约束请联系您的商务经理沟通处理。'],
+ ['code' => 'OperationDenied.EcrAttachmentExisted', 'message' => 'Ecr and TR have been linked.', 'http_code' => 400, 'description' => '当前操作被拒绝,专线网关实例与TR已建立链接,请解除后再执行此操作。'],
+ ['code' => 'OperationDenied.ForceDeleting', 'message' => 'The current instance is being deleted.', 'http_code' => 400, 'description' => '您当前操作被拒绝,专线网关实例正在被强制删除,请稍后再试'],
+ ['code' => 'OperationDenied.InvalidVbrStatus', 'message' => 'Invalid virtual border router status.', 'http_code' => 400, 'description' => '无效的边界路由器状态,请确认边界路由器状态正常后重试。'],
+ ['code' => 'OperationDenied.NotGrantedByNodeOwner', 'message' => 'The node owner is not authorized.', 'http_code' => 400, 'description' => '您当前操作被拒绝,专线网关产品未授权'],
+ ['code' => 'OperationDenied.VbrAlreadyAttachedToCen', 'message' => 'VBR has already attached to CEN.', 'http_code' => 400, 'description' => '边界路由器已经绑定了云企业网, 请先将边界路由器从云企业网中删除后重试。'],
+ ['code' => 'OperationDenied.VbrAlreadyAttachedToEcr', 'message' => 'VBR has already attached to ECR.', 'http_code' => 400, 'description' => '边界路由器已经关联了专线网关,先将边界路由器从专线网关中删除后重试。'],
+ ['code' => 'OperationDenied.VbrDoesNotSupportMpbgp', 'message' => 'The VBR does not support Mpbgp configuration.', 'http_code' => 400, 'description' => '操作被拒绝,VBR暂不支持Mpbgp,'],
+ ['code' => 'OperationDenied.VbrHasBgpGroupInMiddleStatus', 'message' => 'The operation is not allowed because of VBR has BGP group in middle status.', 'http_code' => 400, 'description' => '当前操作无法正常执行,边界路由器中存在BGP组处于配置生效中,请等待生效后重试。'],
+ ['code' => 'OperationDenied.VbrHasRouteEntryInMiddleStatus', 'message' => 'The operation is not allowed because of VBR has route entry in middle status.', 'http_code' => 400, 'description' => '当前操作无法正常执行,边界路由器中存在路由条目处于配置生效中,请等待生效后重试。'],
+ ['code' => 'OperationDenied.VbrUsedInVbrHa', 'message' => 'The border router has been used by the switching group and cannot be bound to the leased line gateway.', 'http_code' => 400, 'description' => '卸载失败,边界路由器已关联倒换组。卸载前请先解除关联的倒换组。'],
+ ['code' => 'OperationFailed.CallingEcYaochi', 'message' => 'EC Yaochi component returned an error.', 'http_code' => 400, 'description' => '操作失败,内部EC瑶池组件返回错误'],
+ ['code' => 'OperationFailed.CallingVpcYaochi', 'message' => 'The system is abnormal. Please try again later.', 'http_code' => 400, 'description' => ' 操作失败,系统内部异常,请稍后重试,若重试仍失败请联系您的商务经理获取帮助。'],
+ ['code' => 'OperationFailed.CdtCrossBoarderNotOpened', 'message' => 'The Cdt cross-border transmission function is disabled.', 'http_code' => 400, 'description' => '当前操作失败,未开启阿里云数据跨境传输功能'],
+ ['code' => 'OperationFailed.CdtNotOpened', 'message' => 'The Cdt function is disabled.', 'http_code' => 400, 'description' => '当前操作失败,未开启阿里云数据传输功能'],
+ ['code' => 'OperationFailed.CrossBorderNotAllowed', 'message' => 'There is no qualification for creating cross-border links.', 'http_code' => 400, 'description' => '操作失败,当前企业不具备创建跨境链路权限,请联系您的商务经理添加此权限。'],
+ ['code' => 'OperationFailed.NotSupportAcrossAccount', 'message' => 'Switching groups cannot be formed across account sub-instances.', 'http_code' => 400, 'description' => '不支持跨账号子实例形成倒换组。'."\n"],
+ ['code' => 'OperationFailed.NotSupportAcrossRegion', 'message' => 'Switching groups cannot be formed across regional sub-instances.', 'http_code' => 400, 'description' => '不支持跨地域子实例形成倒换组。'],
+ ['code' => 'OperationFailed.RejectedByEcYaochi', 'message' => 'The request was rejected by Ec Yaochi.', 'http_code' => 400, 'description' => '当前操作失败,Ec瑶池拒绝了您的请求'],
+ ['code' => 'OperationFailed.RejectedByVpcYaochi', 'message' => 'Vpc Yaochi has rejected your current request.', 'http_code' => 400, 'description' => '操作失败,Vpc瑶池拒绝了您当前请求'],
+ ['code' => 'OperationFailed.UsedInRouteEntryNextHop', 'message' => 'The VPC also has a static route pointing to the ECR, and it is not allowed to disassociate the ECR.', 'http_code' => 400, 'description' => 'VPC还有静态路由指向ECR,不允许解除关联 ECR'],
+ ['code' => 'OperationFailed.UserNotInWhiteList', 'message' => 'The current user is not in the whitelist.', 'http_code' => 400, 'description' => '专线网关产品通过白名单开放,当前用户没有操作权限。请联系客服人员将当前用户添加至白名单。'],
+ ['code' => 'OperationFailed.VbrAccessDeviceSame', 'message' => 'The VBR on the same access device cannot be added to a switching group.', 'http_code' => 400, 'description' => '处于同一台接入设备的VBR不能加入到一个倒换组中。'],
+ ['code' => 'OperationFailed.VbrBgpGroupLocalAsnNotSupport', 'message' => 'The BGP group AS number of the VBR configuration in the switching group is not supported.', 'http_code' => 400, 'description' => '倒换组中的VBR配置的BGP组AS号不支持。'],
+ ['code' => 'OperationFailed.VbrBgpGroupLocalAsnNotTheSameWithEcr', 'message' => 'The AS number of the BGP group of the VBR added to the switching group is different from the AS number of the ECR.', 'http_code' => 400, 'description' => '加入倒换组中的VBR的BGP组的AS号和ECR的AS号不相同。'],
+ ['code' => 'OperationFailed.VbrBgpGroupLocalAsnNotTheSameWithOther', 'message' => 'The BGP group AS number of the VBR configuration in the switching group is not exactly the same.', 'http_code' => 400, 'description' => '加入倒换组中的VBR的BGP组的AS号不完全相同。'],
+ ['code' => 'OperationFailed.VbrBgpPeerNotEnableBfd', 'message' => 'The configured BGP PEER of the input VBR in the switching group does not enable BFD.', 'http_code' => 400, 'description' => '输入的倒换组中的VBR,配置的BGP PEER没有使能BFD。'],
+ ['code' => 'OperationFailed.VbrEcrNotConsistent', 'message' => 'The VBR in the switching group is not bound to the same ECR.', 'http_code' => 400, 'description' => '倒换组中的VBR没有绑定到同一个ECR中。'],
+ ['code' => 'OperationFailed.VbrEcrNotRelation', 'message' => 'The VBR in the switching group is not bound to ECR.', 'http_code' => 400, 'description' => '倒换组中的VBR没有绑定到ECR。'],
+ ['code' => 'OperationFailed.VbrInUsedByOtherHa', 'message' => 'The VBR in the input switching group is already in another switching group.', 'http_code' => 400, 'description' => '输入的倒换组中的VBR已经在其他倒换组中。'],
+ ['code' => 'QuotaExceeded.ChildInstanceNum', 'message' => 'The number of sub-instances in the switching group exceeds threshold.', 'http_code' => 400, 'description' => '倒换组中子实例的数量超过阈值。'],
+ ['code' => 'QuotaExceeded.EcrCountPerUser', 'message' => 'ECR Quota Exceeded.', 'http_code' => 400, 'description' => '您可创建的专线网关实例数量已达到配额上限,请联系您的商务经理申请更大的配额数量'],
+ ['code' => 'QuotaExceeded.TrCountPerEcr', 'message' => 'The number of TR bound to the ECR exceeds the quota.', 'http_code' => 400, 'description' => '单个专线网关实例可绑定的TR数量已达到配额上限,请联系您的商务经理申请更大的配额数量'],
+ ['code' => 'QuotaExceeded.VpcCountPerEcr', 'message' => 'The number of VPC bound to the ECR exceeds the quota.', 'http_code' => 400, 'description' => '单个专线网关实例可绑定的VPC数量已达到配额上限,请联系您的商务经理申请更大的配额数量'],
+ ['code' => 'ResourceAlreadyExist.ChildInstanceId', 'message' => 'The specified resource of ChildInstanceId already exists.', 'http_code' => 400, 'description' => '指定的资源已经关联到专线网关 ECR, 请核对后重试。'],
+ ['code' => 'ResourceAlreadyExist.FlowLogId', 'message' => 'The specified resource of FlowLogId[%s] already exists.', 'http_code' => 400, 'description' => '创建的流日志已经存在, 请核对后重试。'],
+ ['code' => 'ResourceAlreadyExist.TransitRouterId', 'message' => 'The specified resource of transit router already exists.', 'http_code' => 400, 'description' => '指定的 TR 资源已经关联到专线网关 ECR, 请核对后重试。'],
+ ['code' => 'ResourceAlreadyExist.VpcId', 'message' => 'The specified resource of VpcId already exists.', 'http_code' => 400, 'description' => '指定的 VPC 资源已经关联到专线网关 ECR, 请核对后重试。'],
+ ['code' => 'ResourceInConfiguring.NodeId', 'message' => 'The current subInstance is not in steady state, please try again later.', 'http_code' => 400, 'description' => '当前子实例不处于稳态,请稍后重试。'],
+ ['code' => 'ResourceInCreating.NexthopInstanceId', 'message' => 'The next hop instance is being created.', 'http_code' => 400, 'description' => '您当前所指的下一跳实例正在创建中'],
+ ['code' => 'ResourceInUse.Ecr', 'message' => 'The express connect router is currently in use.', 'http_code' => 400, 'description' => '专线网关实例当前正在被使用,请解除VBR/VPC/TR关联后重试。'],
+ ['code' => 'ResourceInUse.HaVbrGroup', 'message' => 'The specified resource of %s is in use.', 'http_code' => 400, 'description' => '边界路由器还在倒换组中,请退出倒换组后重试。'],
+ ['code' => 'ResourceNotFound.AssociationId', 'message' => 'EcrAssociationId not found.', 'http_code' => 404, 'description' => 'ECR Association实例不存在'],
+ ['code' => 'ResourceNotFound.CenId', 'message' => 'CenId not found.', 'http_code' => 400, 'description' => 'Cen实例不存在'],
+ ['code' => 'ResourceNotFound.EcrId', 'message' => 'EcrId not found.', 'http_code' => 404, 'description' => 'ECR实例不存在'],
+ ['code' => 'ResourceNotFound.InstanceId', 'message' => 'The instance id does not exist.', 'http_code' => 400, 'description' => '当前输入的VPC/TR实例不存在'],
+ ['code' => 'ResourceNotFound.NexthopInstanceId', 'message' => 'The next hop instance does not exist.', 'http_code' => 400, 'description' => '下一跳实例不存在'],
+ ['code' => 'ResourceNotFound.TrId', 'message' => 'TRId not found.', 'http_code' => 400, 'description' => 'TR实例不存在'],
+ ['code' => 'UnsupportedRegion', 'message' => 'Feature not supported in specified region.', 'http_code' => 400, 'description' => '指定的地域当前不支持专线网关功能。'],
+ ['code' => 'UnsupportedRegion.FlowLog', 'message' => 'The region where the VBR is located does not support ECR FlowLog.', 'http_code' => 400, 'description' => 'VBR所属地域不支持ECR FlowLog'],
+ ['code' => 'InternalErrorTemp', 'message' => 'The request processing has failed due to some unknown error.', 'http_code' => 400, 'description' => '内部错误。建议重试,如果多次重试报错请提交工单。'],
+ ['code' => 'ResourceInUse.ChildInstance', 'message' => 'The specified resource of ChildInstance is in use.', 'http_code' => 400, 'description' => '当前专线网关绑定的VBR未关闭Flowlog,请尝试关闭对应VBR的Flowlog后,再次发起卸载VBR操作。 '],
+ ],
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDisabledExpressConnectRouterRouteEntries'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterAllowedPrefixHistory'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ActivateFlowLog'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ModifyFlowLogAttribute'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateExpressConnectRouter'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTagResources'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UntagResources'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableExpressConnectRouterRouteEntries'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'MoveResourceGroup'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GrantInstanceToExpressConnectRouter'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteFlowlog'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ModifyExpressConnectRouterAssociationAllowedPrefix'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SynchronizeExpressConnectRouterInterRegionBandwidth'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterAssociation'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateExpressConnectRouterAssociation'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterRegion'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterInterRegionTransitMode'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnableExpressConnectRouterRouteEntries'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateFlowLog'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteExpressConnectRouterAssociation'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteExpressConnectRouter'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceGrantedToExpressConnectRouter'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ModifyExpressConnectRouterInterRegionTransitMode'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetachExpressConnectRouterChildInstance'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ForceDeleteExpressConnectRouter'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ModifyExpressConnectRouter'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListExpressConnectRouterSupportedRegion'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouter'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AttachExpressConnectRouterChildInstance'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CheckAddRegionToExpressConnectRouter'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RevokeInstanceFromExpressConnectRouter'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'TagResources'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterChildInstance'],
+ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeFlowLogs'],
+ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeactivateFlowLog'],
+ ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeExpressConnectRouterRouteEntries'],
],
- [
- 'regionId' => 'cn-beijing-finance-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
+ ],
+ 'ram' => [
+ 'productCode' => 'ExpressConnectRouter',
+ 'productName' => '高速通道',
+ 'ramCodes' => ['expressconnectrouter'],
+ 'ramLevel' => '资源级',
+ 'ramConditions' => [
+ [
+ 'name' => 'InstanceType',
+ 'schema' => [
+ 'type' => 'String',
+ 'description' => '实例类型',
+ 'enums' => ['VPC', 'VBR'],
+ ],
+ ],
],
- [
- 'regionId' => 'me-central-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
+ 'ramActions' => [
+ [
+ 'apiName' => 'ListExpressConnectRouterSupportedRegion',
+ 'description' => '查询专线网关(ECR)开服地域列表',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ListExpressConnectRouterSupportedRegion',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CheckAddRegionToExpressConnectRouter',
+ 'description' => '检查指定的地域加入专线网关(ECR)所需的云数据传输(CDT)服务',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:CheckAddRegionToExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteFlowlog',
+ 'description' => '删除流日志',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DeleteFlowlog',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DisableExpressConnectRouterRouteEntries',
+ 'description' => '禁用专线网关(ECR)路由项',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DisableExpressConnectRouterRouteEntries',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ModifyExpressConnectRouterAssociation',
+ 'description' => '修改专线网关关联子实例属性',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouterAssociation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeactivateFlowLog',
+ 'description' => '停止流日志',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DeactivateFlowLog',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeInstanceGrantedToExpressConnectRouter',
+ 'description' => '查询授权给专线网关(ECR)的网络实例',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeInstanceGrantedToExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListTagResources',
+ 'description' => '查询专线网关标签列表',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ListTagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ModifyExpressConnectRouterChildInstance',
+ 'description' => '修改专线网关关联子实例属性',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouterChildInstance',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeExpressConnectRouterAllowedPrefixHistory',
+ 'description' => '查询专线网关(ECR)的前缀路由历史记录',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterAllowedPrefixHistory',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ActivateFlowLog',
+ 'description' => '启用流日志',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ActivateFlowLog',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ModifyExpressConnectRouterAssociationAllowedPrefix',
+ 'description' => '修改专线网关(ECR)的前缀路由',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouterAssociationAllowedPrefix',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'MoveResourceGroup',
+ 'description' => '修改专线网关所属的资源组',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:MoveResourceGroup',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GrantInstanceToExpressConnectRouter',
+ 'description' => '将网络实例授权给专线网关(ECR)',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:GrantInstanceToExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [
+ ['conditionKey' => 'InstanceType', 'validationType' => 'always'],
+ ],
+ 'resources' => [
+ ['validationType' => 'conditional', 'product' => 'ExpressConnectRouter', 'resourceType' => 'VPC', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vpc/{#VpcId}'],
+ ['validationType' => 'conditional', 'product' => 'ExpressConnectRouter', 'resourceType' => 'VirtualBorderRouter', 'arn' => 'acs:expressconnect:{#regionId}:{#accountId}:virtualborderrouter/{#VbrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'RevokeInstanceFromExpressConnectRouter',
+ 'description' => '撤销网络实例对专线网关(ECR)的授权',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:RevokeInstanceFromExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [
+ ['conditionKey' => 'InstanceType'],
+ ],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'VPC', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vpc/{#VpcId}'],
+ ['validationType' => 'conditional', 'product' => 'ExpressConnectRouter', 'resourceType' => 'VirtualBorderRouter', 'arn' => 'acs:expressconnect:{#regionId}:{#accountId}:virtualborderrouter/{#VbrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeExpressConnectRouterChildInstance',
+ 'description' => '查询专线网关(ECR)绑定的子实例信息',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterChildInstance',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeExpressConnectRouterAssociation',
+ 'description' => '查询专线网关(ECR)关联的资源信息',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterAssociation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ModifyExpressConnectRouterInterRegionTransitMode',
+ 'description' => '修改专线网关(ECR)的跨地域转发模式',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouterInterRegionTransitMode',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateExpressConnectRouter',
+ 'description' => '新建专线网关(ECR)',
+ 'operationType' => 'create',
+ 'additionalActions' => [
+ ['action' => 'expressconnectrouter:CreateServiceLinkedRole'],
+ ],
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:CreateExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DetachExpressConnectRouterChildInstance',
+ 'description' => '从专线网关(ECR)卸载子实例',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DetachExpressConnectRouterChildInstance',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeExpressConnectRouterRouteEntries',
+ 'description' => '查询专线网关(ECR)的路由条目',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterRouteEntries',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeExpressConnectRouterRegion',
+ 'description' => '查询专线网关(ECR)相关资源的所在地域列表',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterRegion',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateFlowLog',
+ 'description' => '创建流日志',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:CreateFlowLog',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'TagResources',
+ 'description' => '专线网关绑定标签',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:TagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UntagResources',
+ 'description' => '专线网关解绑标签',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:UntagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ModifyFlowLogAttribute',
+ 'description' => '修改流日志',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyFlowLogAttribute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateExpressConnectRouterAssociation',
+ 'description' => '专线网关(ECR)关联资源',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:CreateExpressConnectRouterAssociation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'AttachExpressConnectRouterChildInstance',
+ 'description' => '加载子实例至专线网关(ECR)',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:AttachExpressConnectRouterChildInstance',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ModifyExpressConnectRouter',
+ 'description' => '修改专线网关(ECR)属性',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ModifyExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeExpressConnectRouter',
+ 'description' => '查询专线网关(ECR)列表',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteExpressConnectRouterAssociation',
+ 'description' => '专线网关(ECR)解除资源关联关系',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DeleteExpressConnectRouterAssociation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeFlowLogs',
+ 'description' => '查询流日志',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeFlowLogs',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => '全部资源', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeExpressConnectRouterInterRegionTransitMode',
+ 'description' => '查询专线网关(ECR)的跨域转发模式',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeExpressConnectRouterInterRegionTransitMode',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteExpressConnectRouter',
+ 'description' => '删除专线网关(ECR)',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DeleteExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ForceDeleteExpressConnectRouter',
+ 'description' => '删除专线网关(ECR)及关联关系',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:ForceDeleteExpressConnectRouter',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'EnableExpressConnectRouterRouteEntries',
+ 'description' => '启用专线网关(ECR)路由项',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:EnableExpressConnectRouterRouteEntries',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeDisabledExpressConnectRouterRouteEntries',
+ 'description' => '查询禁用的专线网关(ECR)路由',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:DescribeDisabledExpressConnectRouterRouteEntries',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'SynchronizeExpressConnectRouterInterRegionBandwidth',
+ 'description' => '同步专线网关ECR的跨域带宽',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'expressconnectrouter:SynchronizeExpressConnectRouterInterRegionBandwidth',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'ExpressConnectRouter', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ],
+ ],
+ ],
],
- [
- 'regionId' => 'cn-heyuan-acdr-1',
- 'endpoint' => 'expressconnectrouter.cn-shanghai.aliyuncs.com',
+ 'resourceTypes' => [
+ ['validationType' => 'always', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/{#EcrId}'],
+ ['validationType' => 'always', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouterflowlog/*'],
+ ['validationType' => 'conditional', 'resourceType' => 'VPC', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vpc/{#VpcId}'],
+ ['validationType' => 'conditional', 'resourceType' => 'VirtualBorderRouter', 'arn' => 'acs:expressconnect:{#regionId}:{#accountId}:virtualborderrouter/{#VbrId}'],
+ ['validationType' => 'always', 'resourceType' => 'ExpressConnectRouter', 'arn' => 'acs:expressconnectrouter::{#accountId}:expressconnectrouter/*'],
],
],
];