diff options
| author | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
|---|---|---|
| committer | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
| commit | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch) | |
| tree | 0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/zh_cn/gwlb/2024-04-15/api-docs.php | |
| download | acs-metadata-full-main.tar.gz acs-metadata-full-main.zip | |
first commitHEADv1.0.0+20260212main
Diffstat (limited to 'data/zh_cn/gwlb/2024-04-15/api-docs.php')
| -rw-r--r-- | data/zh_cn/gwlb/2024-04-15/api-docs.php | 5556 |
1 files changed, 5556 insertions, 0 deletions
diff --git a/data/zh_cn/gwlb/2024-04-15/api-docs.php b/data/zh_cn/gwlb/2024-04-15/api-docs.php new file mode 100644 index 0000000..5c12259 --- /dev/null +++ b/data/zh_cn/gwlb/2024-04-15/api-docs.php @@ -0,0 +1,5556 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'RPC', + 'product' => 'Gwlb', + 'version' => '2024-04-15', + ], + 'directories' => [ + [ + 'id' => 198458, + 'title' => '地域与可用区', + 'type' => 'directory', + 'children' => [ + 'DescribeRegions', + 'DescribeZones', + ], + ], + [ + 'id' => 198461, + 'title' => '实例', + 'type' => 'directory', + 'children' => [ + 'CreateLoadBalancer', + 'UpdateLoadBalancerAttribute', + 'UpdateLoadBalancerZones', + 'DeleteLoadBalancer', + 'ListLoadBalancers', + 'GetLoadBalancerAttribute', + ], + ], + [ + 'id' => 198468, + 'title' => '服务器组', + 'type' => 'directory', + 'children' => [ + 'CreateServerGroup', + 'UpdateServerGroupAttribute', + 'DeleteServerGroup', + 'AddServersToServerGroup', + 'RemoveServersFromServerGroup', + 'ListServerGroups', + 'ListServerGroupServers', + ], + ], + [ + 'id' => 198476, + 'title' => '监听', + 'type' => 'directory', + 'children' => [ + 'CreateListener', + 'UpdateListenerAttribute', + 'DeleteListener', + 'ListListeners', + 'GetListenerAttribute', + 'GetListenerHealthStatus', + ], + ], + [ + 'id' => 198483, + 'title' => '标签', + 'type' => 'directory', + 'children' => [ + 'TagResources', + 'UntagResources', + 'ListTagResources', + ], + ], + [ + 'id' => 198487, + 'title' => '资源组', + 'type' => 'directory', + 'children' => [ + 'MoveResourceGroup', + ], + ], + ], + 'components' => [ + 'schemas' => [], + ], + 'apis' => [ + 'DescribeRegions' => [ + 'summary' => '查询负载均衡支持地域和服务地址。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '222561', + 'abilityTreeNodes' => [ + 'FEATUREslbM7ALO6', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'AcceptLanguage', + 'in' => 'formData', + 'schema' => [ + 'description' => '支持的语言。取值:'."\n" + ."\n" + .'- **zh-CN**:中文'."\n" + ."\n" + .'- **en-US**(默认值):英文'."\n" + ."\n" + .'- **ja**:日文', + 'type' => 'string', + 'required' => false, + 'example' => 'zh-CN', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Regions' => [ + 'description' => '地域列表。', + 'type' => 'array', + 'items' => [ + 'description' => '地域信息对象。', + 'type' => 'object', + 'properties' => [ + 'LocalName' => [ + 'description' => '地域名称。', + 'type' => 'string', + 'example' => 'China (Hangzhou)', + ], + 'RegionEndpoint' => [ + 'description' => '地域服务地址。', + 'type' => 'string', + 'example' => 'gwlb.cn-hangzhou.aliyuncs.com', + ], + 'RegionId' => [ + 'description' => '地域ID。', + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + ], + ], + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '162FCE8D-CEEC-5083-90BF-B45D8C4F81FB', + ], + ], + ], + ], + ], + 'errorCodes' => [], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Regions\\": [\\n {\\n \\"LocalName\\": \\"China (Hangzhou)\\",\\n \\"RegionEndpoint\\": \\"gwlb.cn-hangzhou.aliyuncs.com\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ],\\n \\"RequestId\\": \\"162FCE8D-CEEC-5083-90BF-B45D8C4F81FB\\"\\n}","type":"json"}]', + 'title' => '查询地域', + ], + 'DescribeZones' => [ + 'summary' => '查询负载均衡支持可用区。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '222562', + 'abilityTreeNodes' => [ + 'FEATUREslbHRNRPI', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'AcceptLanguage', + 'in' => 'formData', + 'schema' => [ + 'description' => '支持的语言。取值:'."\n" + ."\n" + .'- **zh-CN**:中文'."\n" + ."\n" + .'- **en-US**(默认值):英文'."\n" + ."\n" + .'- **ja**:日文', + 'type' => 'string', + 'required' => false, + 'example' => 'zh-CN', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4C605F7E-D0F6-54E2-B004-F9B132F0D8B2', + ], + 'Zones' => [ + 'description' => '可用区列表。', + 'type' => 'array', + 'items' => [ + 'description' => '可用区信息对象。', + 'type' => 'object', + 'properties' => [ + 'LocalName' => [ + 'description' => '可用区名称。', + 'type' => 'string', + 'example' => 'Hangzhou Zone G', + ], + 'ZoneId' => [ + 'description' => '可用区ID。', + 'type' => 'string', + 'example' => 'cn-hangzhou-g', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4C605F7E-D0F6-54E2-B004-F9B132F0D8B2\\",\\n \\"Zones\\": [\\n {\\n \\"LocalName\\": \\"Hangzhou Zone G\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询可用区', + ], + 'CreateLoadBalancer' => [ + 'summary' => '创建负载均衡实例。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221915', + 'abilityTreeNodes' => [ + 'FEATUREslbHRNRPI', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'AddressIpVersion', + 'in' => 'formData', + 'schema' => [ + 'description' => '协议版本。取值:'."\n" + ."\n" + .'- **Ipv4**(默认值):Ipv4类型。', + 'type' => 'string', + 'required' => false, + 'example' => 'Ipv4', + 'default' => 'Ipv4', + 'enum' => [], + ], + ], + [ + 'name' => 'LoadBalancerName', + 'in' => 'formData', + 'schema' => [ + 'description' => '网关型负载均衡实例名称。'."\n" + ."\n" + .'长度为2~128个英文或中文字符,必须以字母或中文开头,可包含数字、半角句号(.)、下划线(_)和短划线(-)。', + 'type' => 'string', + 'required' => false, + 'example' => 'testGwlbName', + ], + ], + [ + 'name' => 'VpcId', + 'in' => 'formData', + 'schema' => [ + 'description' => '专有网络VPC ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'vpc-uf6qcgpv22ttrnnjh****', + ], + ], + [ + 'name' => 'ZoneMappings', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '可用区及交换机映射列表。至少需要添加一个可用区,最多支持添加20个可用区。若当前地域支持2个及以上的可用区,建议添加2个及以上可用区。', + 'type' => 'array', + 'items' => [ + 'description' => '可用区及交换机映射对象。', + 'type' => 'object', + 'properties' => [ + 'VSwitchId' => [ + 'description' => '可用区对应的交换机,每个可用区只能使用一台交换机和一个子网。', + 'type' => 'string', + 'required' => true, + 'example' => 'vsw-2f0eb020****', + ], + 'ZoneId' => [ + 'description' => '可用区ID,通过调用网关型负载均衡DescribeZones接口获得。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou-a', + ], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '标签列表。', + 'type' => 'array', + 'items' => [ + 'description' => '标签列表。一次调用最多支持20个标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。'."\n" + ."\n" + .'一个标签健最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testTagKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testTagValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmwbufq6q3****', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会创建实例。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'LoadBalancerId' => [ + 'description' => '网关型负载均衡实例的ID。', + 'type' => 'string', + 'example' => 'gwlb-9njtjmqt7zfcqm****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '00B19438-66BB-58C3-8C2F-DA5B6F95CBDA', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'DuplicatedParam.ZoneId', + 'errorMessage' => 'The param of ZoneId is duplicated.', + ], + [ + 'errorCode' => 'OperationDenied.VSwitchNotSupportIpv6', + 'errorMessage' => 'The operation is not allowed because of VSwitchNotSupportIpv6.', + ], + [ + 'errorCode' => 'ResourceNotEnough.VSwitchIp', + 'errorMessage' => 'The specified resource of VSwitchIp is not enough.', + ], + [ + 'errorCode' => 'DuplicatedParam.VSwitchId', + 'errorMessage' => 'The param of VSwitchId is duplicated.', + ], + [ + 'errorCode' => 'IllegalParamSize.ZoneMappings', + 'errorMessage' => 'The param size of ZoneMappings is illegal.', + ], + [ + 'errorCode' => 'Mismatch.ZoneIdAndVSwitchId', + 'errorMessage' => 'The ZoneId and VSwitchId are mismatched.', + ], + [ + 'errorCode' => 'QuotaExceeded.LoadBalancersNum', + 'errorMessage' => 'The quota of %s is exceeded for resource %s, usage %s/%s.', + ], + [ + 'errorCode' => 'DuplicatedParam.TagKey', + 'errorMessage' => 'The param of %s is duplicated.', + ], + [ + 'errorCode' => 'IllegalParam.TagKey', + 'errorMessage' => 'The param of %s is illegal.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::GetLoadBalancerAttribute', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LoadBalancerId\\": \\"gwlb-9njtjmqt7zfcqm****\\",\\n \\"RequestId\\": \\"00B19438-66BB-58C3-8C2F-DA5B6F95CBDA\\"\\n}","type":"json"}]', + 'title' => '创建负载均衡实例', + 'description' => '**请确保在使用该接口前,已充分了解网关型负载均衡产品的收费方式和[价格](~~2806160~~)**。'."\n" + .'- 创建网关型负载均衡实例时会自动为用户创建AliyunServiceRoleForGwlb SLR 角色。'."\n" + .'- **CreateLoadBalancer**接口属于异步接口,即系统返回一个实例 ID,但该网关型负载均衡实例尚未创建成功,系统后台的创建任务仍在进行。您可以调用[GetLoadBalancerAttribute](~~2853555~~)查询网关型负载均衡实例的创建状态:'."\n" + .' - 当网关型负载均衡实例处于**Provisioning**状态时,表示网关型负载均衡实例正在创建中。'."\n" + .' - 当网关型负载均衡实例处于**Active**状态时,表示网关型负载均衡实例创建成功。', + ], + 'UpdateLoadBalancerAttribute' => [ + 'summary' => '更新负载均衡实例属性。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221916', + 'abilityTreeNodes' => [ + 'FEATUREslbHRNRPI', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'LoadBalancerId', + 'in' => 'formData', + 'schema' => [ + 'description' => '网关型负载均衡实例的ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'gwlb-9njtjmqt7zfcqm****', + ], + ], + [ + 'name' => 'LoadBalancerName', + 'in' => 'formData', + 'schema' => [ + 'description' => '网关型负载均衡实例名称。'."\n" + ."\n" + .'长度为2~128个英文或中文字符,必须以字母或中文开头,可包含数字、半角句号(.)、下划线(_)和短划线(-)。', + 'type' => 'string', + 'required' => false, + 'example' => 'testGwlbName', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会更新实例属性。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + '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' => '123e4567-e89b-12d3-a456-426655440000', + ], + ], + [ + 'name' => 'TrafficMode', + 'in' => 'formData', + 'schema' => [ + 'description' => '流量模式。取值:'."\n" + ."\n" + .'- **LoadBalance**:负载均衡。'."\n" + .'- **ByPass**:绕行模式。', + 'type' => 'string', + 'required' => false, + 'example' => 'LoadBalance', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B956C629-0E8C-5EFF-BAC1-B0E3A8C5CBDD', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IncorrectBusinessStatus.LoadBalancer', + 'errorMessage' => 'The business status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'IncorrectStatus.LoadBalancer', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::GetLoadBalancerAttribute', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B956C629-0E8C-5EFF-BAC1-B0E3A8C5CBDD\\"\\n}","type":"json"}]', + 'title' => '更新负载均衡实例属性', + 'description' => '- UpdateLoadBalancerAttribute 属于异步接口,即系统返回一个请求 ID,但该实例属性尚未修改成功,系统后台的变更任务仍在进行。您可以调用 GetLoadBalancerAttribute 查询网关型负载均衡实例的更新状态:'."\n" + .' - 当网关型负载均衡实例处于 Configuring 状态时,表示网关型负载均衡实例正在更新中。'."\n" + .' - 当网关型负载均衡实例处于 Active 状态时,表示网关型负载均衡实例更新成功。', + ], + 'UpdateLoadBalancerZones' => [ + 'summary' => '更新负载均衡实例可用区。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221912', + 'abilityTreeNodes' => [ + 'FEATUREslb23BWZ4', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'LoadBalancerId', + 'in' => 'formData', + 'schema' => [ + 'description' => '网关型负载均衡实例的ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'gwlb-9njtjmqt7zfcqm****', + ], + ], + [ + 'name' => 'ZoneMappings', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '可用区及交换机映射列表。至少需要添加一个可用区,最多支持添加20个可用区。若当前地域支持2个及以上的可用区,建议添加2个及以上可用区。', + 'type' => 'array', + 'items' => [ + 'description' => '可用区及交换机映射对象。', + 'type' => 'object', + 'properties' => [ + 'VSwitchId' => [ + 'description' => '可用区对应的交换机,每个可用区只能使用一台交换机和一个子网。', + 'type' => 'string', + 'required' => true, + 'example' => 'vsw-bp1n75pbs77v5q6p3****', + ], + 'ZoneId' => [ + 'description' => '可用区ID,通过调用网关型负载均衡DescribeZones接口获得。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou-h', + ], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会更新实例可用区。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'由客户端生成该参数值,要保证在不同请求间唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'ED8905C2-A4F6-5E43-87B7-6A5DC8757146', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'OperationDenied.VSwitchChangeNotSupport', + 'errorMessage' => 'The operation is not allowed because of VSwitchChangeNotSupport.', + ], + [ + 'errorCode' => 'DuplicatedParam.VSwitchId', + 'errorMessage' => 'The param of VSwitchId is duplicated.', + ], + [ + 'errorCode' => 'DuplicatedParam.ZoneId', + 'errorMessage' => 'The param of ZoneId is duplicated.', + ], + [ + 'errorCode' => 'IllegalParamSize.ZoneMappings', + 'errorMessage' => 'The param size of ZoneMappings is illegal.', + ], + [ + 'errorCode' => 'IncorrectBusinessStatus.LoadBalancer', + 'errorMessage' => 'The business status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'IncorrectStatus.LoadBalancer', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'Mismatch.ZoneIdAndVSwitchId', + 'errorMessage' => 'The ZoneId and VSwitchId are mismatched.', + ], + [ + 'errorCode' => 'MissingParam.LoadBalancerId', + 'errorMessage' => 'The param of LoadBalancerId is missing.', + ], + [ + 'errorCode' => 'OperationDenied.VSwitchNotSupportIpv6', + 'errorMessage' => 'The operation is not allowed because of VSwitchNotSupportIpv6.', + ], + [ + 'errorCode' => 'ResourceAlreadyAssociated.GwlbeAssociated', + 'errorMessage' => 'The specified resource of %s is already associated.', + ], + [ + 'errorCode' => 'ResourceNotEnough.VSwitchIp', + 'errorMessage' => 'The specified resource of VSwitchIp is not enough.', + ], + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::GetLoadBalancerAttribute', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ED8905C2-A4F6-5E43-87B7-6A5DC8757146\\"\\n}","type":"json"}]', + 'title' => '更新负载均衡可用区', + 'description' => '**请确保在使用该接口前,已充分了解网关型负载均衡产品的收费方式和[价格](~~2806160~~)。**'."\n" + ."\n" + .'**UpdateLoadBalancerZones**属于异步接口,即系统返回一个请求ID,但该实例可用区及可用区属性尚未修改成功,系统后台的变更任务仍在进行。您可以调用[GetLoadBalancerAttribute](~~2853555~~)查询网关型负载均衡实例的更新状态:'."\n" + ."\n" + .'- 当网关型负载均衡实例处于**Configuring**状态时,表示网关型负载均衡实例正在更新中。'."\n" + .'- 当网关型负载均衡实例处于**Active**状态时,表示网关型负载均衡实例更新成功。'."\n" + ."\n" + .'><notice>每次调用该接口时,请确保您传入该网关型负载均衡实例的所有可用区参数,包括当前和新增的可用区。如您未传入当前的可用区参数,表示需要将当前可用区删除。您可以通过 GetLoadBalancerAttribute 接口查询该实例的当前可用区。></notice>', + ], + 'DeleteLoadBalancer' => [ + 'summary' => '删除负载均衡实例。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221917', + 'abilityTreeNodes' => [ + 'FEATUREslb12YEWG', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'LoadBalancerId', + 'in' => 'formData', + 'schema' => [ + 'description' => '网关型负载均衡实例的ID', + 'type' => 'string', + 'required' => true, + 'example' => 'gwlb-9njtjmqt7zfcqm****', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会删除实例。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '37907828-01AB-5AC3-9DDE-25D419091D54', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IncorrectBusinessStatus.LoadBalancer', + 'errorMessage' => 'The business status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'IncorrectStatus.LoadBalancer', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'MissingParam.LoadBalancerId', + 'errorMessage' => 'The param of LoadBalancerId is missing.', + ], + [ + 'errorCode' => 'ResourceAlreadyAssociated.GwlbeAssociated', + 'errorMessage' => 'The specified resource of %s is already associated.', + ], + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"37907828-01AB-5AC3-9DDE-25D419091D54\\"\\n}","type":"json"}]', + 'title' => '删除负载均衡实例', + ], + 'ListLoadBalancers' => [ + 'summary' => '查询负载均衡实例列表。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221914', + 'abilityTreeNodes' => [ + 'FEATUREslbHRNRPI', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ZoneIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '可用区ID列表。一次最多支持查询20个可用区ID。', + 'type' => 'array', + 'items' => [ + 'description' => '可用区ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-beijing-h', + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'VpcIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '专有网络唯一标识', + 'description' => '专有网络ID列表。一次最多支持查询20个VPC ID。', + 'type' => 'array', + 'items' => [ + 'description' => '专用网络ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-bp1xuejaht4o7yhh2****', + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'AddressIpVersion', + 'in' => 'formData', + 'schema' => [ + 'title' => '协议类型', + 'description' => '协议版本。取值:'."\n" + ."\n" + .'- **Ipv4**:Ipv4类型。', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'IPv4' => 'IPv4', + 'DualStack' => 'DualStack', + ], + 'example' => 'Ipv4', + 'enum' => [], + ], + ], + [ + 'name' => 'LoadBalancerStatus', + 'in' => 'formData', + 'schema' => [ + 'title' => '实例状态', + 'description' => '网关型负载均衡的实例状态。取值:'."\n" + .'- **Active**:运行中。'."\n" + .'- **Inactive**:已停止,表示实例监听不会再转发流量。'."\n" + .'- **Provisioning**:创建中。'."\n" + .'- **Configuring**:变配中。', + 'type' => 'string', + 'required' => false, + 'example' => 'Active', + ], + ], + [ + 'name' => 'LoadBalancerBusinessStatus', + 'in' => 'formData', + 'schema' => [ + 'title' => '实例业务状态', + 'description' => '网关型负载均衡的业务状态。取值:'."\n" + .'- **Normal**:正常状态。'."\n" + .'- **FinancialLocked**:欠费锁定状态。', + 'type' => 'string', + 'required' => false, + 'example' => 'Normal', + ], + ], + [ + 'name' => 'LoadBalancerNames', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '负载均衡实例名称', + 'description' => '网关型负载均衡实例名称列表。一次最多支持查询20个实例名称。', + 'type' => 'array', + 'items' => [ + 'description' => '网络型负载均衡实例名称。', + 'type' => 'string', + 'required' => false, + 'example' => 'testGwlbName', + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '企业资源组标识', + 'description' => '资源组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-aek2htf5qsyrn****', + ], + ], + [ + 'name' => 'LoadBalancerIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '实例列表', + 'description' => '网关型负载均衡实例的ID列表。一次最多支持查询20个实例。', + 'type' => 'array', + 'items' => [ + 'description' => '网关型负载均衡实例的ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'gwlb-cp6prgqy40hols****', + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'TrafficMode', + 'in' => 'formData', + 'schema' => [ + 'description' => '流量模式。取值:'."\n" + ."\n" + .'- **LoadBalance**:负载均衡。'."\n" + .'- **ByPass**:绕行模式。', + 'type' => 'string', + 'required' => false, + 'example' => 'LoadBalance', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '标签', + 'description' => '标签列表。一次调用最多支持20个标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签信息对象。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。'."\n" + ."\n" + .'一个标签健最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testTagKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testTagValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页游标', + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'required' => false, + 'example' => 'WyJyb290IiwibiIsIm4iLDEsMCwxNjg1MDY1NTgyNzYwLCI2NDcwMGY2ZTc2Zjc0MWFiZGEyZjQyNzc4ZDk2MmJkOTk3ZGZmM2Nm****', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页大小', + 'description' => '分批次查询时每次显示的条目数。取值范围:1~1000,默认值:20。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Skip', + 'in' => 'formData', + 'schema' => [ + 'description' => '查询时跳过指定的条目数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'LoadBalancers' => [ + 'description' => '网关型负载均衡实例列表。', + 'type' => 'array', + 'items' => [ + 'description' => '网关型负载均衡实例对象。', + 'type' => 'object', + 'properties' => [ + 'AddressIpVersion' => [ + 'description' => '协议版本。取值:'."\n" + ."\n" + .'- **IPv4**:IPv4类型。', + 'type' => 'string', + 'example' => 'IPv4', + ], + 'CreateTime' => [ + 'description' => '资源创建时间,使用格林威治时间,格式为**yyyy-MM-ddTHH:mm:ssZ**。', + 'type' => 'string', + 'example' => '2024-08-05T18:24:07Z', + ], + 'LoadBalancerBusinessStatus' => [ + 'description' => '网关型负载均衡的业务状态。取值:'."\n" + .'- **Normal**:正常状态。'."\n" + .'- **FinancialLocked**:欠费锁定状态。', + 'type' => 'string', + 'example' => 'Normal', + ], + 'LoadBalancerId' => [ + 'description' => '网关型负载均衡实例的ID。', + 'type' => 'string', + 'example' => 'gwlb-9njtjmqt7zfcqm****', + ], + 'LoadBalancerName' => [ + 'description' => '网关型负载均衡实例名称。'."\n" + ."\n" + .'长度为2~128个英文或中文字符,必须以字母或中文开头,可包含数字、半角句号(.)、下划线(_)和短划线(-)。', + 'type' => 'string', + 'example' => 'testGwlbName', + ], + 'LoadBalancerStatus' => [ + 'description' => '网关型负载均衡的实例状态。取值:'."\n" + .'- **Active**:运行中。'."\n" + .'- **Inactive**:已停止,表示实例监听不会再转发流量。'."\n" + .'- **Provisioning**:创建中。'."\n" + .'- **Configuring**:变配中。', + 'type' => 'string', + 'example' => 'Active', + ], + 'ResourceGroupId' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'example' => 'rg-aek26jasguy****', + ], + 'Tags' => [ + 'description' => '标签列表。', + 'type' => 'array', + 'items' => [ + 'description' => '标签对象。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。'."\n" + ."\n" + .'一个标签健最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'example' => 'testTagKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持输入20个标签值。一旦传入该值,可以为空字符串。'."\n" + ."\n" + .'一个标签值最多支持128个字符,必须以字母或中文开头,可包含数字、半角句号(.)、下划线(_)和短划线(-),不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'example' => 'testTagValue', + ], + ], + ], + ], + 'VpcId' => [ + 'description' => '专用网络ID。', + 'type' => 'string', + 'example' => 'vpc-uf6eg0vndlsa84n7r****', + ], + 'ZoneMappings' => [ + 'description' => '可用区及交换机映射列表。至少需要添加一个可用区,最多支持添加20个可用区。若当前地域支持2个及以上的可用区,建议添加2个及以上可用区。', + 'type' => 'array', + 'items' => [ + 'description' => '可用区及交换机映射对象。', + 'type' => 'object', + 'properties' => [ + 'LoadBalancerAddresses' => [ + 'description' => '网关型负载均衡实例地址列表。', + 'type' => 'array', + 'items' => [ + 'description' => '网关型负载均衡实例地址对象。', + 'type' => 'object', + 'properties' => [ + 'EniId' => [ + 'description' => '弹性网卡ENI ID。', + 'type' => 'string', + 'example' => 'eni-bp17qv9zbzyqy629****', + ], + 'PrivateIpv4Address' => [ + 'description' => 'IPv4 私网地址。', + 'type' => 'string', + 'example' => '192.168.XX.XX', + ], + ], + ], + ], + 'VSwitchId' => [ + 'description' => '可用区对应的交换机,每个可用区默认使用一台交换机和一个子网。', + 'type' => 'string', + 'example' => 'vsw-2zemule5dz7okwqfv****', + ], + 'ZoneId' => [ + 'description' => '可用区ID,通过调用网关型负载均衡DescribeZones接口获得。', + 'type' => 'string', + 'example' => 'cn-hangzhou-g', + ], + ], + ], + ], + ], + ], + ], + 'MaxResults' => [ + 'description' => '分批次查询时每次显示的条目数。取值范围:1~1000,默认值:20。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'NextToken' => [ + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 第一次查询和没有下一次查询时,均无需填写。'."\n" + .'- 如果有下一次查询,取值为上一次API调用返回的NextToken值。', + 'type' => 'string', + 'example' => 'CAESGgoSChAKDGNvbXBsZXRlVGltZRABCgQiAggAGAAiQAoJAIldD2UAAAAACjMDLgAAADFTNzMyZDMwMzAzMDY5NzQzNDM0NmI3NzM2NjUzNzc4NzM2YTc0NjYzOTYz****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '378A80E9-4262-5D8E-8D62-0969E52D7358', + ], + 'TotalCount' => [ + 'description' => '列表条目总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + ], + ], + ], + ], + 'errorCodes' => [], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LoadBalancers\\": [\\n {\\n \\"AddressIpVersion\\": \\"IPv4\\",\\n \\"CreateTime\\": \\"2024-08-05T18:24:07Z\\",\\n \\"LoadBalancerBusinessStatus\\": \\"Normal\\",\\n \\"LoadBalancerId\\": \\"gwlb-9njtjmqt7zfcqm****\\",\\n \\"LoadBalancerName\\": \\"testGwlbName\\",\\n \\"LoadBalancerStatus\\": \\"Active\\",\\n \\"ResourceGroupId\\": \\"rg-aek26jasguy****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"testTagKey\\",\\n \\"Value\\": \\"testTagValue\\"\\n }\\n ],\\n \\"VpcId\\": \\"vpc-uf6eg0vndlsa84n7r****\\",\\n \\"ZoneMappings\\": [\\n {\\n \\"LoadBalancerAddresses\\": [\\n {\\n \\"EniId\\": \\"eni-bp17qv9zbzyqy629****\\",\\n \\"PrivateIpv4Address\\": \\"192.168.XX.XX\\"\\n }\\n ],\\n \\"VSwitchId\\": \\"vsw-2zemule5dz7okwqfv****\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\"\\n }\\n ]\\n }\\n ],\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"CAESGgoSChAKDGNvbXBsZXRlVGltZRABCgQiAggAGAAiQAoJAIldD2UAAAAACjMDLgAAADFTNzMyZDMwMzAzMDY5NzQzNDM0NmI3NzM2NjUzNzc4NzM2YTc0NjYzOTYz****\\",\\n \\"RequestId\\": \\"378A80E9-4262-5D8E-8D62-0969E52D7358\\",\\n \\"TotalCount\\": 100\\n}","type":"json"}]', + 'title' => '查询负载均衡实例列表', + ], + 'GetLoadBalancerAttribute' => [ + 'summary' => '查询负载均衡实例详细信息。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221913', + 'abilityTreeNodes' => [ + 'FEATUREslbHRNRPI', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'LoadBalancerId', + 'in' => 'formData', + 'schema' => [ + 'description' => '网关型负载均衡实例的ID', + 'type' => 'string', + 'required' => true, + 'example' => 'gwlb-9njtjmqt7zfcqm****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'AddressIpVersion' => [ + 'description' => '协议版本。取值:'."\n" + ."\n" + .'- **Ipv4**:Ipv4类型', + 'type' => 'string', + 'example' => 'Ipv4', + ], + 'CreateTime' => [ + 'description' => '资源创建时间,使用格林威治时间,格式为**yyyy-MM-ddTHH:mm:ssZ**。', + 'type' => 'string', + 'example' => '2024-07-08T10:12:58Z', + ], + 'LoadBalancerBusinessStatus' => [ + 'description' => '网关型负载均衡的业务状态。取值:'."\n" + .'- **Normal**:正常状态。'."\n" + .'- **FinancialLocked**:欠费锁定状态。', + 'type' => 'string', + 'example' => 'Normal', + ], + 'LoadBalancerId' => [ + 'description' => '网关型负载均衡实例的ID。', + 'type' => 'string', + 'example' => 'gwlb-9njtjmqt7zfcqm****', + ], + 'LoadBalancerName' => [ + 'description' => '网关型负载均衡实例名称。'."\n" + ."\n" + .'长度为2~128个英文或中文字符,必须以字母或中文开头,可包含数字、半角句号(.)、下划线(_)和短划线(-)。', + 'type' => 'string', + 'example' => 'gwlb', + ], + 'LoadBalancerStatus' => [ + 'description' => '网关型负载均衡的实例状态。取值:'."\n" + .'- **Active**:运行中。'."\n" + .'- **Inactive**:已停止,表示实例监听不会再转发流量。'."\n" + .'- **Provisioning**:创建中。'."\n" + .'- **Configuring**:变配中。', + 'type' => 'string', + 'example' => 'Active', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B6DC5DDC-9560-59BF-80FA-ED1E5CB417DF', + ], + 'ResourceGroupId' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'example' => 'rg-acfmx7pmxcy****', + ], + 'Tags' => [ + 'description' => '标签列表。', + 'type' => 'array', + 'items' => [ + 'description' => '标签对象。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。'."\n" + ."\n" + .'一个标签健最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'example' => 'testTagKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'example' => 'testTagValue', + ], + ], + ], + ], + 'VpcId' => [ + 'description' => '专有网络ID。', + 'type' => 'string', + 'example' => 'vpc-k1aajsbwbaq4todet****', + ], + 'ZoneMappings' => [ + 'description' => '可用区及交换机映射列表。至少需要添加一个可用区,最多支持添加20个可用区。若当前地域支持2个及以上的可用区,建议添加2个及以上可用区。', + 'type' => 'array', + 'items' => [ + 'description' => '可用区及交换机映射对象。', + 'type' => 'object', + 'properties' => [ + 'LoadBalancerAddresses' => [ + 'description' => '网关型负载均衡实例地址列表。', + 'type' => 'array', + 'items' => [ + 'description' => '网关型负载均衡实例地址对象。', + 'type' => 'object', + 'properties' => [ + 'EniId' => [ + 'description' => '弹性网卡ENI ID。', + 'type' => 'string', + 'example' => 'eni-bp1iahwz3rzgvltz****', + ], + 'PrivateIpv4Address' => [ + 'description' => 'IPv4 私网地址。', + 'type' => 'string', + 'example' => '192.168.XX.XX', + ], + ], + ], + ], + 'VSwitchId' => [ + 'description' => '可用区对应的交换机,每个可用区只能使用一台交换机和一个子网。', + 'type' => 'string', + 'example' => 'vsw-uf6v8l7d2f1k53xrl****', + ], + 'ZoneId' => [ + 'description' => '可用区ID。', + 'type' => 'string', + 'example' => 'cn-hangzhou-j', + ], + ], + ], + ], + 'TrafficMode' => [ + 'description' => '流量模式。取值:'."\n" + ."\n" + .'- **LoadBalance**:负载均衡。'."\n" + .'- **ByPass**:绕行模式。', + 'type' => 'string', + 'example' => 'LoadBalance', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'MissingParam.LoadBalancerId', + 'errorMessage' => 'The param of LoadBalancerId is missing.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AddressIpVersion\\": \\"Ipv4\\",\\n \\"CreateTime\\": \\"2024-07-08T10:12:58Z\\",\\n \\"LoadBalancerBusinessStatus\\": \\"Normal\\",\\n \\"LoadBalancerId\\": \\"gwlb-9njtjmqt7zfcqm****\\",\\n \\"LoadBalancerName\\": \\"gwlb\\",\\n \\"LoadBalancerStatus\\": \\"Active\\",\\n \\"RequestId\\": \\"B6DC5DDC-9560-59BF-80FA-ED1E5CB417DF\\",\\n \\"ResourceGroupId\\": \\"rg-acfmx7pmxcy****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"testTagKey\\",\\n \\"Value\\": \\"testTagValue\\"\\n }\\n ],\\n \\"VpcId\\": \\"vpc-k1aajsbwbaq4todet****\\",\\n \\"ZoneMappings\\": [\\n {\\n \\"LoadBalancerAddresses\\": [\\n {\\n \\"EniId\\": \\"eni-bp1iahwz3rzgvltz****\\",\\n \\"PrivateIpv4Address\\": \\"192.168.XX.XX\\"\\n }\\n ],\\n \\"VSwitchId\\": \\"vsw-uf6v8l7d2f1k53xrl****\\",\\n \\"ZoneId\\": \\"cn-hangzhou-j\\"\\n }\\n ],\\n \\"TrafficMode\\": \\"LoadBalance\\"\\n}","type":"json"}]', + 'title' => '查询负载均衡实例详细信息', + ], + 'CreateServerGroup' => [ + 'summary' => '创建负载均衡服务器组。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225035', + 'abilityTreeNodes' => [ + 'FEATUREslb88O4KB', + 'FEATUREslb98XMCW', + 'FEATUREslb4EL8LZ', + 'FEATUREslb5QFSS9', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ServerGroupType', + 'in' => 'formData', + 'schema' => [ + 'title' => '服务器组类型', + 'description' => '服务器组类型。取值:'."\n" + ."\n" + .'- **Instance**(默认值):服务器类型,该类型服务器组支持添加**Ecs**、**Eni**、**Eci**类型实例。'."\n" + ."\n" + .'- **Ip**:IP地址类型,该类型服务器组支持直接添加IP地址类型的后端服务器。', + 'type' => 'string', + 'required' => false, + 'example' => 'Instance', + 'enum' => [ + 'Instance', + 'Ip', + ], + ], + ], + [ + 'name' => 'ServerGroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '服务器组名称', + 'description' => '服务器组名称。'."\n" + ."\n" + .'长度为2~128个字符,必须以大小写字母或中文开头,可包含数字、半角句号(.)、下划线(_)和短划线(-)。', + 'type' => 'string', + 'required' => false, + 'example' => 'testServerGroupName', + ], + ], + [ + 'name' => 'Protocol', + 'in' => 'formData', + 'schema' => [ + 'title' => '后端服务器类型', + 'description' => '后端转发协议。取值:'."\n" + ."\n" + .'- **GENEVE**(默认值)。', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'GENEVE' => 'GENEVE', + ], + 'example' => 'GENEVE', + 'enum' => [ + 'GENEVE', + ], + ], + ], + [ + 'name' => 'Scheduler', + 'in' => 'formData', + 'schema' => [ + 'title' => '会话保持类型', + 'description' => '调度算法。取值:'."\n" + ."\n" + .'- **5TCH**(默认值):五元组哈希,基于五元组(源IP、目的IP、源端口、目的端口和协议)的一致性哈希,相同的流会调度到相同的后端服务器。'."\n" + ."\n" + .'- **3TCH**:三元组哈希,基于三元组(源IP、目的IP和协议)的一致性哈希,相同的流会调度到相同的后端服务器。'."\n" + ."\n" + .'- **2TCH**:二元组哈希,基于二元组(源IP和目的IP)的一致性哈希,相同的流会调度到相同的后端服务器。', + 'type' => 'string', + 'required' => false, + 'example' => '5TCH', + 'enum' => [ + '5TCH', + '3TCH', + '2TCH', + ], + ], + ], + [ + 'name' => 'ServerFailoverMode', + 'in' => 'formData', + 'schema' => [ + 'title' => '', + 'description' => '服务器异常时,存量流量的处理方式。取值:'."\n" + ."\n" + .'- **NoRebalance(默认值)**:不重新平衡现有流量。'."\n" + .'- **Rebalance**:重新平衡现有流量。', + 'type' => 'string', + 'required' => false, + 'example' => 'NoRebalance', + 'enum' => [ + 'NoRebalance', + 'Rebalance', + ], + ], + ], + [ + 'name' => 'VpcId', + 'in' => 'formData', + 'schema' => [ + 'title' => '服务器组所在vpc的id', + 'description' => 'VPC实例ID。'."\n" + ."\n" + .'> 如果**ServerGroupType**取值为**Instance**时,只有该VPC下的服务器可以加入到该服务器组。', + 'type' => 'string', + 'required' => true, + 'docRequired' => false, + 'example' => 'vpc-bp15zckdt37pq72zv****', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '企业资源组id', + 'description' => '资源组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-atstuj3rtop****', + ], + ], + [ + 'name' => 'ConnectionDrainConfig', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '连接优雅中断配置', + 'description' => '连接优雅中断相关配置。', + 'type' => 'object', + 'properties' => [ + 'ConnectionDrainEnabled' => [ + 'title' => '是否开启连接优雅中断', + 'description' => '是否开启连接优雅中断。取值:'."\n" + ."\n" + .'- **true**:开启。'."\n" + ."\n" + .'- **false**(默认值):关闭。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + 'ConnectionDrainTimeout' => [ + 'title' => '连接优雅中断超时时间', + 'description' => '连接优雅中断超时时间。'."\n" + ."\n" + .'单位:秒。'."\n" + ."\n" + .'取值范围:**1**~**3600**。'."\n" + ."\n" + .'默认值:**300**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '300', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'HealthCheckConfig', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '健康检查配置', + 'description' => '健康检查相关配置。', + 'type' => 'object', + 'properties' => [ + 'HealthCheckConnectPort' => [ + 'title' => '健康检查使用的端口', + 'description' => '健康检查使用的后端服务器的端口。'."\n" + ."\n" + .'取值范围: **1**~**65535**。'."\n" + ."\n" + .'默认值:**80**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '80', + ], + 'HealthCheckConnectTimeout' => [ + 'title' => '健康检查响应的最大超时时间', + 'description' => '健康检查响应的最大超时时间。'."\n" + ."\n" + .'单位:秒。'."\n" + ."\n" + .'取值范围:**1**~**300**。'."\n" + ."\n" + .'默认值:**5**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + 'HealthCheckDomain' => [ + 'title' => '健康检查的域名', + 'description' => '用于健康检查的域名。取值:'."\n" + ."\n" + .'- **$SERVER_IP**(默认值):使用后端服务器内网IP。'."\n" + ."\n" + .'- **domain**:指定特定域名。长度限制1~80个字符,只能使用大小写字母、数字、短划线(-)、半角句号(.)。'."\n" + ."\n" + .'> 仅**HealthCheckProtocol**为**HTTP**时,该参数生效。', + 'type' => 'string', + 'required' => false, + 'example' => '$SERVER_IP', + ], + 'HealthCheckEnabled' => [ + 'title' => '是否开启健康检查', + 'description' => '是否开启健康检查,取值:'."\n" + ."\n" + .'- **true**(默认值):开启。'."\n" + ."\n" + .'- **false**:关闭。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'HealthCheckHttpCode' => [ + 'title' => '状态码,多个状态码用逗号分隔', + 'description' => '健康状态返回码列表。', + 'type' => 'array', + 'items' => [ + 'description' => '健康状态返回码,多个状态码用半角逗号(,)分隔。'."\n" + .'取值:'."\n" + .'- **http\\_2xx**'."\n" + .'- **http\\_3xx**'."\n" + .'- **http\\_4xx**'."\n" + .'- **http\\_5xx**'."\n" + ."\n" + .'默认值:**http\\_2xx** 。'."\n" + ."\n" + .'> 仅**HealthCheckProtocol**为**HTTP**时,该参数生效。', + 'type' => 'string', + 'required' => false, + 'example' => 'http_2xx', + 'enum' => [ + 'http_2xx', + 'http_3xx', + 'http_4xx', + 'http_5xx', + ], + ], + 'required' => false, + ], + 'HealthCheckInterval' => [ + 'title' => '健康检查时间间隔', + 'description' => '健康检查的时间间隔。'."\n" + ."\n" + .'单位:秒。'."\n" + ."\n" + .'取值范围:**1**~**50**。'."\n" + ."\n" + .'默认值:**10**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + 'HealthCheckPath' => [ + 'title' => '健康检查的path', + 'description' => '健康检查路径。'."\n" + ."\n" + .'长度为1~80个字符,只能使用大小写英文字母、数字和短划线(-)、正斜线(/)、半角句号(.)、百分号(%)、半角问号(?)、井号(#)和and(&)以及扩展字符集_;~!()*[]@$^:\',+='."\n" + ."\n" + .'必须以正斜线(/)开头。'."\n" + .'> 仅**HealthCheckProtocol**为**HTTP**时,该参数生效。', + 'type' => 'string', + 'required' => false, + 'example' => '/test/index.html', + ], + 'HealthCheckProtocol' => [ + 'title' => '健康检查协议类型', + 'description' => '健康检查协议,取值:'."\n" + ."\n" + .'- **TCP**(默认值):通过发送SYN握手报文来检测服务器端口是否存活。'."\n" + ."\n" + .'- **HTTP**:通过发送GET请求模拟浏览器的访问行为来检查服务器应用是否健康。', + 'type' => 'string', + 'required' => false, + 'example' => 'TCP', + 'enum' => [ + 'TCP', + 'HTTP', + ], + ], + 'HealthyThreshold' => [ + 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success', + 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由**失败**判定为**成功**。'."\n" + ."\n" + .'取值范围:**2**~**10**。'."\n" + ."\n" + .'默认值:**2**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + 'UnhealthyThreshold' => [ + 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail', + 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由**成功**判定为**失败**。'."\n" + ."\n" + .'取值范围:**2**~**10**。'."\n" + ."\n" + .'默认值:**2**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '标签列表', + 'description' => '标签列表。'."\n" + ."\n" + .'一次调用最多支持 20 个标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testTagKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testTagValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会创建服务器组。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'False', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '54B48E3D-DF70-471B-AA93-08E683A1B45', + ], + 'ServerGroupId' => [ + 'description' => '服务器组ID。', + 'type' => 'string', + 'example' => 'sgp-atstuj3rtoptyui****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IllegalParam.HealthCheckProtocol', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'QuotaExceeded.ServerGroupsNum', + 'errorMessage' => 'The quota of %s is exceeded for resource %s, usage %s/%s.', + ], + [ + 'errorCode' => 'DuplicatedParam.TagKey', + 'errorMessage' => 'The param of %s is duplicated.', + ], + [ + 'errorCode' => 'IllegalParam.TagKey', + 'errorMessage' => 'The param of %s is illegal.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.Vpc', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::ListServerGroups', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"54B48E3D-DF70-471B-AA93-08E683A1B45\\",\\n \\"ServerGroupId\\": \\"sgp-atstuj3rtoptyui****\\"\\n}","type":"json"}]', + 'title' => '创建服务器组', + 'description' => '**CreateServerGroup**接口属于异步接口,即系统返回一个请求ID,但该服务器组尚未创建成功,系统后台的创建任务仍在进行。您可以调用 ListServerGroups 查询服务器组的创建状态:'."\n" + .'- 当服务器组处于**Creating**状态时,表示服务器组正在创建中。'."\n" + .'- 当服务器组处于**Available**状态时,表示服务器组创建成功。', + ], + 'UpdateServerGroupAttribute' => [ + 'summary' => '更新负载均衡服务器组属性。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225039', + 'abilityTreeNodes' => [ + 'FEATUREslb3GOGI0', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ServerGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '服务器组ID', + 'description' => '服务器组ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'sgp-atstuj3rtoptyui****', + ], + ], + [ + 'name' => 'ServerGroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '服务器组名称', + 'description' => '服务器组名称。'."\n" + ."\n" + .'长度为2~128个字符,必须以大小写字母或中文开头,可包含数字、半角句号(.)、下划线(_)和短划线(-)。', + 'type' => 'string', + 'required' => false, + 'example' => 'testServerGroupName', + ], + ], + [ + 'name' => 'Scheduler', + 'in' => 'formData', + 'schema' => [ + 'title' => '会话保持类型', + 'description' => '调度算法。取值:'."\n" + ."\n" + .'- **5TCH**:五元组哈希,基于五元组(源IP、目的IP、源端口、目的端口和协议)的一致性哈希,相同的流会调度到相同的后端服务器。'."\n" + ."\n" + .'- **3TCH**:三元组哈希,基于三元组(源IP、目的IP和协议)的一致性哈希,相同的流会调度到相同的后端服务器。'."\n" + ."\n" + .'- **2TCH**:二元组哈希,基于二元组(源IP和目的IP)的一致性哈希,相同的流会调度到相同的后端服务器。', + 'type' => 'string', + 'required' => false, + 'example' => '5TCH', + 'enum' => [ + '5TCH', + '3TCH', + '2TCH', + ], + ], + ], + [ + 'name' => 'ServerFailoverMode', + 'in' => 'formData', + 'schema' => [ + 'description' => '服务器异常时,存量流量的处理方式。取值:'."\n" + ."\n" + .'- **NoRebalance**:不重新平衡现有流量。'."\n" + .'- **Rebalance**:重新平衡现有流量。', + 'type' => 'string', + 'required' => false, + 'example' => 'NoRebalance', + 'enum' => [ + 'NoRebalance', + 'Rebalance', + ], + ], + ], + [ + 'name' => 'ConnectionDrainConfig', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '连接优雅中断配置', + 'description' => '连接优雅中断相关配置。', + 'type' => 'object', + 'properties' => [ + 'ConnectionDrainEnabled' => [ + 'title' => '是否开启连接优雅中断', + 'description' => '是否开启连接优雅中断。取值:'."\n" + ."\n" + .'- **true**:开启。'."\n" + ."\n" + .'- **false**:关闭。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + 'ConnectionDrainTimeout' => [ + 'title' => '连接优雅中断超时时间', + 'description' => '连接优雅中断超时时间。'."\n" + ."\n" + .'单位:秒。'."\n" + ."\n" + .'取值范围:**1**~**3600**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '300', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'HealthCheckConfig', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '健康检查配置', + 'description' => '健康检查相关配置。', + 'type' => 'object', + 'properties' => [ + 'HealthCheckConnectPort' => [ + 'title' => '健康检查使用的端口', + 'description' => '健康检查使用的后端服务器的端口。'."\n" + ."\n" + .'取值范围: **1**~**65535**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '80', + ], + 'HealthCheckConnectTimeout' => [ + 'title' => '健康检查响应的最大超时时间', + 'description' => '健康检查响应的最大超时时间。'."\n" + ."\n" + .'单位:秒。'."\n" + ."\n" + .'取值范围:**1**~**300**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + 'HealthCheckDomain' => [ + 'title' => '健康检查的域名', + 'description' => '用于健康检查的域名。取值:'."\n" + ."\n" + .'- **$SERVER_IP**:使用后端服务器内网IP。'."\n" + ."\n" + .'- **domain**:指定特定域名。长度限制1~80个字符,只能使用大小写字母、数字、短划线(-)、半角句号(.)。'."\n" + ."\n" + .'> 仅**HealthCheckProtocol**为**HTTP**时,该参数生效。', + 'type' => 'string', + 'required' => false, + 'example' => '$SERVER_IP', + ], + 'HealthCheckEnabled' => [ + 'title' => '是否开启健康检查', + 'description' => '是否开启健康检查,取值:'."\n" + ."\n" + .'- **true**:开启。'."\n" + ."\n" + .'- **false**:关闭。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + 'HealthCheckHttpCode' => [ + 'title' => '状态码,多个状态码用逗号分隔', + 'description' => '健康状态返回码列表。', + 'type' => 'array', + 'items' => [ + 'description' => '健康状态返回码,多个状态码用半角逗号(,)分隔。'."\n" + .'取值:'."\n" + .'- **http\\_2xx**:返回HttpCode为2xx视为健康状态。'."\n" + .'- **http\\_3xx**:返回HttpCode为3xx视为健康状态。'."\n" + .'- **http\\_4xx**:返回HttpCode为4xx视为健康状态。'."\n" + .'- **http\\_5xx**:返回HttpCode为5xx视为健康状态。'."\n" + ."\n" + .'默认值:**http\\_2xx** 。'."\n" + ."\n" + .'> 仅**HealthCheckProtocol**为**HTTP**时,该参数生效。', + 'type' => 'string', + 'required' => false, + 'example' => 'http_2xx', + 'enum' => [ + 'http_2xx', + 'http_3xx', + 'http_4xx', + 'http_5xx', + ], + ], + 'required' => false, + ], + 'HealthCheckInterval' => [ + 'title' => '健康检查时间间隔', + 'description' => '健康检查的时间间隔。'."\n" + ."\n" + .'单位:秒。'."\n" + ."\n" + .'取值范围:**1**~**50**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + 'HealthCheckPath' => [ + 'title' => '健康检查的path', + 'description' => '健康检查路径。'."\n" + ."\n" + .'长度为1~80个字符,只能使用大小写英文字母、数字、字符`-/.%?#&`。 必须以正斜线(/)开头。'."\n" + .'> 仅**HealthCheckProtocol**为**HTTP**时,该参数生效。', + 'type' => 'string', + 'required' => false, + 'example' => '/test/index.html', + ], + 'HealthCheckProtocol' => [ + 'title' => '健康检查协议类型', + 'description' => '健康检查协议,取值:'."\n" + ."\n" + .'- **TCP**:通过发送SYN握手报文来检测服务器端口是否存活。'."\n" + ."\n" + .'- **HTTP**:通过发送GET请求模拟浏览器的访问行为来检查服务器应用是否健康。', + 'type' => 'string', + 'required' => false, + 'example' => 'TCP', + 'enum' => [ + 'TCP', + 'HTTP', + ], + ], + 'HealthyThreshold' => [ + 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success', + 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由**失败**判定为**成功**。'."\n" + ."\n" + .'取值范围:**2**~**10**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + 'UnhealthyThreshold' => [ + 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail', + 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由**成功**判定为**失败**。'."\n" + ."\n" + .'取值范围:**2**~**10**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会更新服务器组信息。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '返回数据结构体。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '54B48E3D-DF70-471B-AA93-08E683A1B45'."\n", + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IllegalParam.HealthCheckProtocol', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'IncorrectStatus.ServerGroup', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'OperationDenied.SchedulerNotConfigurable', + 'errorMessage' => 'The scheduling algorithm of server group is configurable only when TCP idle timeout of listener is default value.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.ServerGroup', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::ListServerGroups', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"54B48E3D-DF70-471B-AA93-08E683A1B45\\\\n\\"\\n}","type":"json"}]', + 'title' => '更新服务器组属性', + 'description' => '**UpdateServerGroupAttribute**接口属于异步接口,即系统返回一个请求ID,但该服务器组的配置尚未更新成功,系统后台的更新任务仍在进行。您可以调用 ListServerGroups 查询服务器组的配置的更新状态:'."\n" + .'- 当服务器组的配置处于**Configuring**状态时,表示服务器组的配置正在更新中。'."\n" + .'- 当服务器组的配置处于**Available**状态时,表示服务器组的配置更新成功。', + ], + 'DeleteServerGroup' => [ + 'summary' => '删除负载均衡服务器组。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225038', + 'abilityTreeNodes' => [ + 'FEATUREslb5QFSS9', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ServerGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '服务器组ID', + 'description' => '服务器组ID', + 'type' => 'string', + 'required' => true, + 'example' => 'sgp-atstuj3rtoptyui****', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求,取值:'."\n" + .'- **true**:发送检查请求,不会删除服务器组。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2XX状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '返回数据结构体。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '54B48E3D-DF70-471B-AA93-08E683A1B45', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IncorrectStatus.BackendServer', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'ResourceInUse.ServerGroup', + 'errorMessage' => 'The specified resource of %s is in use.', + ], + [ + 'errorCode' => 'IncorrectStatus.ServerGroup', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.ServerGroup', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"54B48E3D-DF70-471B-AA93-08E683A1B45\\"\\n}","type":"json"}]', + 'title' => '删除服务器组', + 'description' => '服务器组未被任何监听使用时支持删除。', + ], + 'AddServersToServerGroup' => [ + 'summary' => '向负载均衡服务器组中添加后端服务器。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225056', + 'abilityTreeNodes' => [ + 'FEATUREslb3GOGI0', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ServerGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => '服务器组ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'sgp-atstuj3rtoptyui****', + ], + ], + [ + 'name' => 'Servers', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '后端服务器列表。'."\n" + ."\n" + .'> 单次调用最多支持传入200个服务器。', + 'type' => 'array', + 'items' => [ + 'description' => '后端服务器。', + 'type' => 'object', + 'properties' => [ + 'Port' => [ + 'title' => '服务器端口', + 'description' => '后端服务器使用的端口,取值:'."\n" + ."\n" + .'- **6081**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6081', + ], + 'ServerId' => [ + 'title' => '服务器id', + 'description' => '后端服务器ID。'."\n" + ."\n" + .'- 当服务器组为**Instance**类型时,该参数为**Ecs**、**Eni**、**Eci**的资源ID。'."\n" + ."\n" + .'- 当服务器组为**Ip**类型时,该参数为IP地址。', + 'type' => 'string', + 'required' => true, + 'example' => 'i-bp67acfmxazb4p****', + ], + 'ServerIp' => [ + 'title' => '服务器ip', + 'description' => '后端服务器IP地址。', + 'type' => 'string', + 'required' => false, + 'example' => '192.168.XX.XX', + ], + 'ServerType' => [ + 'title' => '服务器类型', + 'description' => '后端服务器类型,取值:'."\n" + ."\n" + .'- **Ecs**:ECS实例。'."\n" + .'- **Eni**:ENI弹性网卡实例。'."\n" + .'- **Eci**:ECI弹性容器。'."\n" + .'- **Ip**:Ip地址。', + 'type' => 'string', + 'required' => true, + 'example' => 'Ecs', + 'enum' => [ + 'Ecs', + 'Eni', + 'Eci', + 'Ip', + ], + ], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 200, + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求,取值:'."\n" + .'- **true**:发送检查请求,不会向服务器组中添加后端服务器。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '返回数据结构体。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '54B48E3D-DF70-471B-AA93-08E683A1B45', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Conflict.Server', + 'errorMessage' => 'The %s [%s] is conflict.', + ], + [ + 'errorCode' => 'Mismatch.ServerType', + 'errorMessage' => 'The %s is mismatched for %s and %s.', + ], + [ + 'errorCode' => 'ResourceInUse.IP', + 'errorMessage' => 'The specified resource of %s is in use.', + ], + [ + 'errorCode' => 'IllegalParam.ServerIp', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'IllegalParam.EcsNetworkType', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'DuplicatedParam.Server', + 'errorMessage' => 'The param of %s is duplicated.', + ], + [ + 'errorCode' => 'ResourceInUse.Eni', + 'errorMessage' => 'The specified resource of %s is in use.', + ], + [ + 'errorCode' => 'IncorrectStatus.Eni', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'IllegalParam.IP', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'Mismatch.IP', + 'errorMessage' => 'The %s is mismatched for %s and %s.', + ], + [ + 'errorCode' => 'Mismatch.VpcId', + 'errorMessage' => 'The %s is mismatched for %s and %s.', + ], + [ + 'errorCode' => 'QuotaExceeded.ServerGroupServersNum', + 'errorMessage' => 'The quota of %s is exceeded for resource %s, usage %s/%s.', + ], + [ + 'errorCode' => 'QuotaExceeded.ServerGroupAzServersNum', + 'errorMessage' => 'The quota of %s is exceeded for resource %s, usage %s/%s.', + ], + [ + 'errorCode' => 'IncorrectStatus.ServerGroup', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.Eni', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.Eci', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.ServerGroup', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.Ecs', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::ListServerGroupServers', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"54B48E3D-DF70-471B-AA93-08E683A1B45\\"\\n}","type":"json"}]', + 'title' => '服务器组中添加后端服务器', + 'description' => '**AddServersToServerGroup**接口属于异步接口,即系统返回一个请求ID,但该后端服务器尚未添加成功,系统后台的添加任务仍在进行。'."\n" + ."\n" + .'1. 您可以调用 ListServerGroups 查询服务器组的状态:'."\n" + ."\n" + .'- 当服务器组处于**Configuring**状态时,表示服务器组正在变配中。'."\n" + .'- 当服务器组处于**Available**状态时,表示服务器组运行中。'."\n" + ."\n" + .'2. 您可以调用 ListServerGroupServers 查询后端服务器的状态:'."\n" + ."\n" + .'- 当后端服务器处于**Adding**状态时,表示后端服务器正在加入服务器组。'."\n" + .'- 当后端服务器处于**Available**状态时,表示后端服务器运行中。', + ], + 'RemoveServersFromServerGroup' => [ + 'summary' => '从负载均衡服务器组中移除后端服务器。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225065', + 'abilityTreeNodes' => [ + 'FEATUREslb3GOGI0', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ServerGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => '服务器组ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'sgp-atstuj3rtoptyui****', + ], + ], + [ + 'name' => 'Servers', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '后端服务器列表。'."\n" + ."\n" + .'> 单次调用最多支持传入200个服务器。', + 'type' => 'array', + 'items' => [ + 'description' => '后端服务器。', + 'type' => 'object', + 'properties' => [ + 'Port' => [ + 'title' => '服务器端口', + 'description' => '后端服务器使用的端口,取值:'."\n" + ."\n" + .'- **6081**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '6081', + ], + 'ServerId' => [ + 'title' => '服务器id', + 'description' => '后端服务器ID。'."\n" + ."\n" + .'- 当服务器组为**Instance**类型时,该参数为**Ecs**、**Eni**、**Eci**的资源ID。'."\n" + ."\n" + .'- 当服务器组为**Ip**类型时,该参数为IP地址。', + 'type' => 'string', + 'required' => true, + 'example' => 'i-bp67acfmxazb4p****', + ], + 'ServerIp' => [ + 'title' => '服务器ip', + 'description' => '后端服务器IP地址。', + 'type' => 'string', + 'required' => false, + 'example' => '192.168.xxx.xxx'."\n", + ], + 'ServerType' => [ + 'title' => '服务器类型', + 'description' => '后端服务器类型,取值:'."\n" + ."\n" + .'- **Ecs**:ECS实例。'."\n" + .'- **Eni**:ENI弹性网卡实例。'."\n" + .'- **Eci**:ECI弹性容器。'."\n" + .'- **Ip**:Ip地址。', + 'type' => 'string', + 'required' => true, + 'example' => 'Ecs', + 'enum' => [ + 'Ecs', + 'Eni', + 'Eci', + 'Ip', + ], + ], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 200, + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求,取值:'."\n" + .'- **true**:发送检查请求,不会从服务器组中移除后端服务器。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '返回数据结构体。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '54B48E3D-DF70-471B-AA93-08E683A1B45', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IncorrectStatus.BackendServer', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'IncorrectStatus.ServerGroup', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.BackendServer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.ServerGroup', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::ListServerGroupServers', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"54B48E3D-DF70-471B-AA93-08E683A1B45\\"\\n}","type":"json"}]', + 'title' => '服务器组中移除后端服务器', + 'description' => '**RemoveServersFromServerGroup**接口属于异步接口,即系统返回一个请求ID,但该后端服务器尚未移除成功,系统后台的移除任务仍在进行。'."\n" + .'1. 您可以调用 ListServerGroups 查询服务器组的状态:'."\n" + .' - 当服务器组处于**Configuring**状态时,表示服务器组正在变配中。'."\n" + .' - 当服务器组处于**Available**状态时,表示服务器组运行中。'."\n" + ."\n" + .'2. 您可以调用 ListServerGroupServers 查询后端服务器的状态:'."\n" + .' - 当后端服务器处于**Removing**状态时,表示后端服务器正在从服务器组中移除。'."\n" + .' - 当查询不到该后端服务器时,表示后端服务器移除成功。'."\n" + ."\n" + .'> - 若服务器所在的服务器组开启了连接优雅中断(**ConnectionDrainEnabled**为true),移除时后端服务器会先变为**Removing**状态,之后变为**Draining**状态。待连接优雅中断超时(**ConnectionDrainTimeout**)到期后,才会真正将服务器从服务器组移除。'."\n" + .'> - 期间可以再次将此服务器加入此服务器组,此时状态由**Draining**变为**Adding**,最终变为**Available**。', + ], + 'ListServerGroups' => [ + 'summary' => '查询负载均衡服务器组列表。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225041', + 'abilityTreeNodes' => [ + 'FEATUREslb5QFSS9', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ServerGroupIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '服务器组ID列表。'."\n" + ."\n" + .'一次最多支持查询20个服务器组ID。', + 'type' => 'array', + 'items' => [ + 'description' => '服务器组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'sgp-atstuj3rtoptyui****', + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'ServerGroupNames', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '服务器组名称列表。'."\n" + ."\n" + .'一次最多支持查询20个服务器组名称。', + 'type' => 'array', + 'items' => [ + 'description' => '服务器组名称。', + 'type' => 'string', + 'required' => false, + 'example' => 'testServerGroupName', + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'ServerGroupType', + 'in' => 'formData', + 'schema' => [ + 'description' => '服务器组类型。取值:'."\n" + ."\n" + .'- **Instance**:服务器类型,该类型服务器组支持添加**Ecs**、**Eni**、**Eci**类型实例。'."\n" + ."\n" + .'- **Ip**:IP地址类型,该类型服务器组支持直接添加IP地址类型的后端服务器。', + 'type' => 'string', + 'required' => false, + 'example' => 'Instance', + 'enum' => [ + 'Instance', + 'Ip', + ], + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-atstuj3rtop****', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '标签列表。'."\n" + ."\n" + .'一次调用最多支持 20 个标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testTagKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testTagValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'VpcId', + 'in' => 'formData', + 'schema' => [ + 'title' => '服务器组所在vpc的id', + 'description' => '专有网络ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-bp15zckdt37pq72zv****', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页游标', + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'required' => false, + 'example' => 'FFmyTO70tTpLG6I3FmYAXGKPd****', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页大小', + 'description' => '分批次查询时每次显示的条目数。'."\n" + ."\n" + .'取值范围:1~1000。'."\n" + ."\n" + .'默认值:20。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Skip', + 'in' => 'formData', + 'schema' => [ + 'description' => '查询时跳过指定的条目数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '返回数据结构体。', + 'type' => 'object', + 'properties' => [ + 'MaxResults' => [ + 'description' => '分批次查询时每次显示的条目数。'."\n" + ."\n" + .'取值范围:1~1000。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'NextToken' => [ + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'example' => 'FFmyTO70tTpLG6I3FmYAXGKPd****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '54B48E3D-DF70-471B-AA93-08E683A1B45', + ], + 'ServerGroups' => [ + 'description' => '后端服务器组列表。', + 'type' => 'array', + 'items' => [ + 'description' => '后端服务器组。', + 'type' => 'object', + 'properties' => [ + 'ConnectionDrainConfig' => [ + 'description' => '连接优雅中断相关配置。', + 'type' => 'object', + 'properties' => [ + 'ConnectionDrainEnabled' => [ + 'description' => '是否开启连接优雅中断。取值:'."\n" + ."\n" + .'- **true**:开启。'."\n" + ."\n" + .'- **false**:关闭。', + 'type' => 'boolean', + 'example' => 'false', + ], + 'ConnectionDrainTimeout' => [ + 'description' => '连接优雅中断超时时间。'."\n" + ."\n" + .'单位:秒。'."\n" + ."\n" + .'取值范围:**1**~**3600**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '300', + ], + ], + ], + 'CreateTime' => [ + 'description' => '资源创建时间,使用格林威治时间,格式为**yyyy-MM-ddTHH:mm:ssZ**。', + 'type' => 'string', + 'example' => '2024-08-05T18:24:07Z', + ], + 'HealthCheckConfig' => [ + 'title' => '健康检查配置', + 'description' => '健康检查相关配置。', + 'type' => 'object', + 'properties' => [ + 'HealthCheckConnectPort' => [ + 'title' => '健康检查使用的端口', + 'description' => '健康检查使用的后端服务器的端口。'."\n" + ."\n" + .'取值范围: **1**~**65535**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '80', + ], + 'HealthCheckConnectTimeout' => [ + 'title' => '健康检查响应的最大超时时间', + 'description' => '健康检查响应的最大超时时间。'."\n" + ."\n" + .'单位:秒。'."\n" + ."\n" + .'取值范围:**1**~**300**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'HealthCheckDomain' => [ + 'title' => '健康检查的域名', + 'description' => '用于健康检查的域名。取值:'."\n" + ."\n" + .'- **$SERVER_IP**:使用后端服务器内网IP。'."\n" + ."\n" + .'- **domain**:指定特定域名。长度限制1~80个字符,只能使用大小写字母、数字、短划线(-)、半角句号(.)。'."\n" + ."\n" + .'> 仅**HealthCheckProtocol**为**HTTP**时,该参数生效。', + 'type' => 'string', + 'example' => '$SERVER_IP', + ], + 'HealthCheckEnabled' => [ + 'title' => '是否开启健康检查', + 'description' => '是否开启健康检查,取值:'."\n" + ."\n" + .'- **true**:开启。'."\n" + ."\n" + .'- **false**:关闭。', + 'type' => 'boolean', + 'example' => 'true', + ], + 'HealthCheckHttpCode' => [ + 'title' => '状态码,多个状态码用逗号分隔', + 'description' => '健康状态返回码列表。', + 'type' => 'array', + 'items' => [ + 'description' => '健康状态返回码,多个状态码用半角逗号(,)分隔。'."\n" + .'取值:'."\n" + .'- **http\\_2xx**'."\n" + .'- **http\\_3xx**'."\n" + .'- **http\\_4xx**'."\n" + .'- **http\\_5xx**'."\n" + ."\n" + .'默认值:**http\\_2xx** 。'."\n" + ."\n" + .'> 仅**HealthCheckProtocol**为**HTTP**时,该参数生效。', + 'type' => 'string', + 'example' => 'http_2xx', + ], + ], + 'HealthCheckInterval' => [ + 'title' => '健康检查时间间隔', + 'description' => '健康检查的时间间隔。'."\n" + ."\n" + .'单位:秒。'."\n" + ."\n" + .'取值范围:**1**~**50**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'HealthCheckPath' => [ + 'title' => '健康检查的path', + 'description' => '健康检查路径。'."\n" + ."\n" + .'长度为1~80个字符,只能使用大小写英文字母、数字、字符`-/.%?#&`。 必须以正斜线(/)开头。'."\n" + .'> 仅**HealthCheckProtocol**为**HTTP**时,该参数生效。', + 'type' => 'string', + 'example' => '/test/index.html', + ], + 'HealthCheckProtocol' => [ + 'title' => '健康检查协议类型', + 'description' => '健康检查协议,取值:'."\n" + ."\n" + .'- **TCP**:通过发送SYN握手报文来检测服务器端口是否存活。'."\n" + ."\n" + .'- **HTTP**:通过发送GET请求模拟浏览器的访问行为来检查服务器应用是否健康。', + 'type' => 'string', + 'example' => 'TCP', + ], + 'HealthyThreshold' => [ + 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success', + 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由**失败**判定为**成功**。'."\n" + ."\n" + .'取值范围:**2**~**10**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'UnhealthyThreshold' => [ + 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail', + 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由**成功**判定为**失败**。'."\n" + ."\n" + .'取值范围:**2**~**10**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + ], + ], + 'Protocol' => [ + 'title' => '后端协议', + 'description' => '后端转发协议。取值:'."\n" + ."\n" + .'- **GENEVE**。', + 'type' => 'string', + 'example' => 'GENEVE', + ], + 'RelatedLoadBalancerIds' => [ + 'description' => '关联的负载均衡实例ID列表。', + 'type' => 'array', + 'items' => [ + 'description' => '关联的负载均衡实例ID。', + 'type' => 'string', + 'example' => 'gwlb-cp6prgqy40hols****', + ], + ], + 'ResourceGroupId' => [ + 'title' => '资源组id', + 'description' => '资源组ID。', + 'type' => 'string', + 'example' => 'rg-atstuj3rtop****', + ], + 'Scheduler' => [ + 'title' => '流量调度算法', + 'description' => '调度算法。取值:'."\n" + ."\n" + .'- **5TCH**:五元组哈希,基于五元组(源IP、目的IP、源端口、目的端口和协议)的一致性哈希,相同的流会调度到相同的后端服务器。'."\n" + ."\n" + .'- **3TCH**:三元组哈希,基于三元组(源IP、目的IP和协议)的一致性哈希,相同的流会调度到相同的后端服务器。'."\n" + ."\n" + .'- **2TCH**:二元组哈希,基于二元组(源IP和目的IP)的一致性哈希,相同的流会调度到相同的后端服务器。', + 'type' => 'string', + 'example' => '5TCH', + ], + 'ServerCount' => [ + 'description' => '后端服务器数量。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'ServerGroupId' => [ + 'title' => '服务器组id', + 'description' => '服务器组ID。', + 'type' => 'string', + 'example' => 'sgp-atstuj3rtoptyui****', + ], + 'ServerGroupName' => [ + 'title' => '服务器组名称', + 'description' => '服务器组名称。', + 'type' => 'string', + 'example' => 'testServerGroupName', + ], + 'ServerGroupStatus' => [ + 'title' => '服务器组状态', + 'description' => '服务器组状态。取值:'."\n" + ."\n" + .'- **Creating**:创建中。'."\n" + ."\n" + .'- **Available**:可用。'."\n" + ."\n" + .'- **Configuring**:变配中。', + 'type' => 'string', + 'example' => 'Available', + ], + 'ServerGroupType' => [ + 'title' => '服务器组类型', + 'description' => '服务器组类型。取值:'."\n" + ."\n" + .'- **Instance**:服务器类型,该类型服务器组支持添加**Ecs**、**Eni**、**Eci**类型实例。'."\n" + ."\n" + .'- **Ip**:IP地址类型,该类型服务器组支持直接添加IP地址类型的后端服务器。', + 'type' => 'string', + 'example' => 'Instance', + ], + 'ServerFailoverMode' => [ + 'description' => '服务器异常时,存量流量的处理方式。取值:'."\n" + ."\n" + .'- **NoRebalance**:不重新平衡现有流量。'."\n" + .'- **Rebalance**:重新平衡现有流量。', + 'type' => 'string', + 'example' => 'NoRebalance', + ], + 'Tags' => [ + 'title' => '标签', + 'description' => '标签列表。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'example' => 'testTagKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'example' => 'testTagValue', + ], + ], + ], + ], + 'VpcId' => [ + 'title' => '服务器组的vpcid', + 'description' => '专用网络ID。', + 'type' => 'string', + 'example' => 'vpc-bp15zckdt37pq72zv****', + ], + ], + ], + ], + 'TotalCount' => [ + 'description' => '列表条目数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + ], + 'errorCodes' => [], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"FFmyTO70tTpLG6I3FmYAXGKPd****\\",\\n \\"RequestId\\": \\"54B48E3D-DF70-471B-AA93-08E683A1B45\\",\\n \\"ServerGroups\\": [\\n {\\n \\"ConnectionDrainConfig\\": {\\n \\"ConnectionDrainEnabled\\": false,\\n \\"ConnectionDrainTimeout\\": 300\\n },\\n \\"CreateTime\\": \\"2024-08-05T18:24:07Z\\",\\n \\"HealthCheckConfig\\": {\\n \\"HealthCheckConnectPort\\": 80,\\n \\"HealthCheckConnectTimeout\\": 5,\\n \\"HealthCheckDomain\\": \\"$SERVER_IP\\",\\n \\"HealthCheckEnabled\\": true,\\n \\"HealthCheckHttpCode\\": [\\n \\"http_2xx\\"\\n ],\\n \\"HealthCheckInterval\\": 10,\\n \\"HealthCheckPath\\": \\"/test/index.html\\",\\n \\"HealthCheckProtocol\\": \\"TCP\\",\\n \\"HealthyThreshold\\": 2,\\n \\"UnhealthyThreshold\\": 2\\n },\\n \\"Protocol\\": \\"GENEVE\\",\\n \\"RelatedLoadBalancerIds\\": [\\n \\"gwlb-cp6prgqy40hols****\\"\\n ],\\n \\"ResourceGroupId\\": \\"rg-atstuj3rtop****\\",\\n \\"Scheduler\\": \\"5TCH\\",\\n \\"ServerCount\\": 2,\\n \\"ServerGroupId\\": \\"sgp-atstuj3rtoptyui****\\",\\n \\"ServerGroupName\\": \\"testServerGroupName\\",\\n \\"ServerGroupStatus\\": \\"Available\\",\\n \\"ServerGroupType\\": \\"Instance\\",\\n \\"ServerFailoverMode\\": \\"NoRebalance\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"testTagKey\\",\\n \\"Value\\": \\"testTagValue\\"\\n }\\n ],\\n \\"VpcId\\": \\"vpc-bp15zckdt37pq72zv****\\"\\n }\\n ],\\n \\"TotalCount\\": 1\\n}","type":"json"}]', + 'title' => '查询服务器组列表', + ], + 'ListServerGroupServers' => [ + 'summary' => '查询负载均衡服务器组中的服务器列表。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225066', + 'abilityTreeNodes' => [ + 'FEATUREslb3GOGI0', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ServerGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => '服务器组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'sgp-atstuj3rtoptyui****', + ], + ], + [ + 'name' => 'ServerIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '服务器ID列表。'."\n" + ."\n" + .'单次调用最多支持展示200个服务器。', + 'type' => 'array', + 'items' => [ + 'description' => '服务器ID。'."\n" + ."\n" + .'- 当服务器组为**Instance**类型时,该参数为**Ecs**、**Eni**、**Eci**的资源ID。'."\n" + ."\n" + .'- 当服务器组为**Ip**类型时,该参数为IP地址。', + 'type' => 'string', + 'required' => false, + 'example' => 'i-bp67acfmxazb4p****', + ], + 'required' => false, + 'maxItems' => 200, + ], + ], + [ + 'name' => 'ServerIps', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '服务器IP地址列表。'."\n" + ."\n" + .'单次调用最多支持展示200个服务器。', + 'type' => 'array', + 'items' => [ + 'description' => '服务器IP地址。', + 'type' => 'string', + 'required' => false, + 'example' => '192.168.xxx.xxx', + ], + 'required' => false, + 'maxItems' => 200, + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页游标', + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'required' => false, + 'example' => 'FFmyTO70tTpLG6I3FmYAXGKPd****', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页大小', + 'description' => '分批次查询时每次显示的条目数。'."\n" + ."\n" + .'取值范围:1~1000。'."\n" + ."\n" + .'默认值:20。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Skip', + 'in' => 'formData', + 'schema' => [ + 'description' => '查询时跳过指定的条目数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '返回数据结构体。', + 'type' => 'object', + 'properties' => [ + 'MaxResults' => [ + 'description' => '分批次查询时每次显示的条目数。'."\n" + ."\n" + .'取值范围:1~1000。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'NextToken' => [ + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 第一次查询和没有下一次查询时,均无需填写。'."\n" + .'- 如果有下一次查询,取值为上一次API调用返回的NextToken值。', + 'type' => 'string', + 'example' => 'FFmyTO70tTpLG6I3FmYAXGKPd****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '54B48E3D-DF70-471B-AA93-08E683A1B45', + ], + 'Servers' => [ + 'description' => '后端服务器列表。', + 'type' => 'array', + 'items' => [ + 'description' => '后端服务器。', + 'type' => 'object', + 'properties' => [ + 'Port' => [ + 'title' => '服务器端口', + 'description' => '后端服务器使用的端口,取值:'."\n" + ."\n" + .'- **6081**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6081', + ], + 'ServerGroupId' => [ + 'title' => '服务器所属的服务器组ID', + 'description' => '服务器组ID。', + 'type' => 'string', + 'example' => 'sgp-atstuj3rtoptyui****', + ], + 'ServerId' => [ + 'title' => '服务器id', + 'description' => '后端服务器ID。', + 'type' => 'string', + 'example' => 'i-bp67acfmxazb4p****', + ], + 'ServerIp' => [ + 'title' => '服务器ip', + 'description' => '后端服务器IP地址。', + 'type' => 'string', + 'example' => '192.168.xxx.xxx', + ], + 'ServerType' => [ + 'title' => '服务器类型', + 'description' => '后端服务器类型,取值:'."\n" + ."\n" + .'- **Ecs**:ECS实例。'."\n" + .'- **Eni**:ENI弹性网卡实例。'."\n" + .'- **Eci**:ECI弹性容器。'."\n" + .'- **Ip**:Ip地址。', + 'type' => 'string', + 'example' => 'Ecs', + ], + 'Status' => [ + 'title' => '资源状态', + 'description' => '后端服务器的状态。取值:'."\n" + ."\n" + .'- **Adding**:添加中。'."\n" + .'- **Available**:正常可用状态。'."\n" + .'- **Draining**:连接优雅中断中。'."\n" + .'- **Removing**:移除中。'."\n" + .'- **Replacing**:替换中。', + 'type' => 'string', + 'example' => 'Available', + ], + ], + ], + ], + 'TotalCount' => [ + 'description' => '列表条目数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + ], + 'errorCodes' => [], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"FFmyTO70tTpLG6I3FmYAXGKPd****\\",\\n \\"RequestId\\": \\"54B48E3D-DF70-471B-AA93-08E683A1B45\\",\\n \\"Servers\\": [\\n {\\n \\"Port\\": 6081,\\n \\"ServerGroupId\\": \\"sgp-atstuj3rtoptyui****\\",\\n \\"ServerId\\": \\"i-bp67acfmxazb4p****\\",\\n \\"ServerIp\\": \\"192.168.xxx.xxx\\",\\n \\"ServerType\\": \\"Ecs\\",\\n \\"Status\\": \\"Available\\"\\n }\\n ],\\n \\"TotalCount\\": 1\\n}","type":"json"}]', + 'title' => '查询服务器组中的服务器列表', + ], + 'CreateListener' => [ + 'summary' => '创建负载均衡监听器。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '220131', + 'abilityTreeNodes' => [ + 'FEATUREslbPNW4R2', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'LoadBalancerId', + 'in' => 'formData', + 'schema' => [ + 'description' => '网关型负载均衡实例的ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'gwlb-te609d6696632f7*****', + ], + ], + [ + 'name' => 'ListenerDescription', + 'in' => 'formData', + 'schema' => [ + 'description' => '自定义监听描述。'."\n" + ."\n" + .'长度限制为2~256个字符,支持中文和英文字母,可包含数字、半角逗号(,)、半角句号(.)、半角分号(;)、正斜线(/)、at(@)、下划线(_)和短划线(-)。', + 'type' => 'string', + 'required' => false, + 'example' => 'listener-description', + ], + ], + [ + 'name' => 'ServerGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => '服务器组 ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'sgp-ckh01px70dszof****', + ], + ], + [ + 'name' => 'TcpIdleTimeout', + 'in' => 'formData', + 'schema' => [ + 'title' => 'TCP连接空闲超时时间。默认值:**350**秒。'."\n" + ."\n" + .'取值范围:**60**-**6000**秒。', + 'description' => 'TCP连接空闲超时时间。'."\n" + ."\n" + .'取值范围:**60**-**6000** 秒。'."\n" + ."\n" + .'默认值:**350** 秒。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '350', + 'default' => '350', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会创建监听。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '标签列表。一次调用最多支持添加20个标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'testValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'ListenerId' => [ + 'title' => '', + 'description' => '监听ID。', + 'type' => 'string', + 'example' => 'lsn-wi3c0v30ivysrg****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A045E652-D298-5E70-A978-7247135336FB', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IncorrectBusinessStatus.LoadBalancer', + 'errorMessage' => 'The business status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'MissingParam.TagKey', + 'errorMessage' => 'The param of TagKey is missing.', + ], + [ + 'errorCode' => 'MissingParam.TagValue', + 'errorMessage' => 'The param of TagValue is missing.', + ], + [ + 'errorCode' => 'OperationDenied.TooManyListeners', + 'errorMessage' => 'The operation is not allowed because of TooManyListener.', + ], + [ + 'errorCode' => 'IncorrectStatus.LoadBalancer', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'ResourceInUse.IP', + 'errorMessage' => 'The specified resource of IP is in use.', + ], + [ + 'errorCode' => 'Mismatch.VpcId', + 'errorMessage' => 'The %s is mismatched for %s and %s.', + ], + [ + 'errorCode' => 'IncorrectStatus.ServerGroup', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'DuplicatedParam.TagKey', + 'errorMessage' => 'The param of %s is duplicated.', + ], + [ + 'errorCode' => 'IllegalParam.TagKey', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'IllegalParam.TagValue', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'OperationDenied.TcpIdleTimeoutConflictWithScheduler', + 'errorMessage' => 'The TCP idle timeout of listener must be default value when the scheduling algorithm of server group is not 5TCH.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.ServerGroup', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::GetListenerAttribute', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ListenerId\\": \\"lsn-wi3c0v30ivysrg****\\",\\n \\"RequestId\\": \\"A045E652-D298-5E70-A978-7247135336FB\\"\\n}","type":"json"}]', + 'title' => '创建监听', + 'description' => '**CreateListener** 接口属于异步接口,即系统返回一个请求 ID,但该监听尚未创建成功,系统后台的创建任务仍在进行。您可以调用[GetListenerAttribute](~~2853569~~)查询监听的创建状态:'."\n" + ."\n" + .'- 当监听处于 **Provisioning** 状态时,表示监听正在创建中。'."\n" + ."\n" + .'- 当监听处于 **Running** 状态时,表示监听创建成功。', + ], + 'UpdateListenerAttribute' => [ + 'summary' => '更新负载均衡监听的属性。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221402', + 'abilityTreeNodes' => [ + 'FEATUREslbC68LB1', + 'FEATUREslbPNW4R2', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ListenerId', + 'in' => 'formData', + 'schema' => [ + 'description' => '监听ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'lsn-lxce8iqbof2vl0****', + ], + ], + [ + 'name' => 'ListenerDescription', + 'in' => 'formData', + 'schema' => [ + 'description' => '自定义监听描述。'."\n" + ."\n" + .'长度限制为2~256个字符,支持中文和英文字母,可包含数字、半角逗号(,)、半角句号(.)、半角分号(;)、正斜线(/)、at(@)、下划线(_)和短划线(-)。', + 'type' => 'string', + 'required' => false, + 'example' => 'listener_description', + ], + ], + [ + 'name' => 'ServerGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => '服务器组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'sgp-sp8d2r6y7t0xtl****', + ], + ], + [ + 'name' => 'TcpIdleTimeout', + 'in' => 'formData', + 'schema' => [ + 'title' => 'TCP连接空闲超时时间。取值范围:**60**-**6000**秒。', + 'description' => 'TCP连接空闲超时时间。取值范围:**60**-**6000**秒。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '350', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会更新监听属性。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求 ID。', + 'type' => 'string', + 'example' => '7DBFC67C-A272-5952-8287-6C3EBE4E04D9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IncorrectBusinessStatus.LoadBalancer', + 'errorMessage' => 'The business status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'IncorrectStatus.LoadBalancer', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'IncorrectStatus.Listener', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'Mismatch.VpcId', + 'errorMessage' => 'The %s is mismatched for %s and %s.', + ], + [ + 'errorCode' => 'ResourceInUse.IP', + 'errorMessage' => 'The specified resource of IP is in use.', + ], + [ + 'errorCode' => 'IncorrectStatus.ServerGroup', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'OperationDenied.TcpIdleTimeoutConflictWithScheduler', + 'errorMessage' => 'The TCP idle timeout of listener must be default value when the scheduling algorithm of server group is not 5TCH.', + ], + [ + 'errorCode' => 'OperationDenied.TcpIdleTimeoutNotConfigurable', + 'errorMessage' => 'The TCP idle timeout of listener is configurable only when the scheduling algorithm of server group is 5TCH.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.Listener', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.ServerGroup', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::GetListenerAttribute', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7DBFC67C-A272-5952-8287-6C3EBE4E04D9\\"\\n}","type":"json"}]', + 'title' => '更新监听属性', + 'description' => '**UpdateListenerAttribute** 接口属于异步接口,即系统返回一个请求 ID,但该监听的配置尚未更新成功,系统后台的更新任务仍在进行。您可以调用 **GetListenerAttribute** 查询监听的配置的更新状态:'."\n" + ."\n" + .'- 当监听器处于 **Configuring** 状态时,表示监听的配置正在更新中。'."\n" + .'- 当监听器处于 **Running** 状态时,表示监听的配置更新成功。', + ], + 'DeleteListener' => [ + 'summary' => '删除负载均衡监听器。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221398', + 'abilityTreeNodes' => [ + 'FEATUREslbC68LB1', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ListenerId', + 'in' => 'formData', + 'schema' => [ + 'description' => '监听ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'lsn-brx2y3hqdincizg***', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会删除监听。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '5C6E3548-086F-5FF6-A2B3-B1871B3AB488', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IncorrectBusinessStatus.LoadBalancer', + 'errorMessage' => 'The business status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'IncorrectStatus.Listener', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + [ + 'errorCode' => 'IncorrectStatus.LoadBalancer', + 'errorMessage' => 'The status of %s [%s] is incorrect.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.Listener', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'asynchronous', + 'callback' => 'Gwlb::2024-04-15::GetListenerAttribute', + 'callbackInterval' => 3000, + 'maxCallbackTimes' => 100, + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C6E3548-086F-5FF6-A2B3-B1871B3AB488\\"\\n}","type":"json"}]', + 'title' => '删除监听', + 'description' => '**DeleteListener** 接口属于异步接口,即系统返回一个请求 ID,但该监听尚未删除成功,系统后台的删除任务仍在进行。您可以调用 **GetListenerAttribute** 查询监听的删除状态:'."\n" + ."\n" + .'- 当监听器处于 **Deleting** 状态时,表示监听正在删除中。'."\n" + .'- 当查询不到该监听时,表示监听删除成功。', + ], + 'ListListeners' => [ + 'summary' => '查询负载均衡监听列表。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221401', + 'abilityTreeNodes' => [ + 'FEATUREslbC68LB1', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ListenerIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '监听ID列表,最多支持20个监听ID。', + 'type' => 'array', + 'items' => [ + 'description' => '监听ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'lsn-w3t3vpgjj12b2i****', + ], + 'required' => false, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + [ + 'name' => 'LoadBalancerIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '网关型负载均衡实例ID。最多支持20个实例ID。', + 'type' => 'array', + 'items' => [ + 'description' => '网关型负载均衡实例ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'gwlb-rbtjolkkbudmrr****', + ], + 'required' => false, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页游标', + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'required' => false, + 'example' => 'd209f4e63ec942c967c50c888a13****', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页大小', + 'description' => '使用NextToken方式查询时,每次最多返回的结果数。取值范围:1~1000。默认值:20。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '标签列表。一次调用最多支持 20 个标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。'."\n" + ."\n" + .'一个标签健最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'tagKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'required' => false, + 'example' => 'tagValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + [ + 'name' => 'Skip', + 'in' => 'formData', + 'schema' => [ + 'description' => '分页查询时,跳过的条目数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'Listeners' => [ + 'description' => '网关型负载均衡监听列表。', + 'type' => 'array', + 'items' => [ + 'description' => '监听信息。', + 'type' => 'object', + 'properties' => [ + 'ListenerDescription' => [ + 'title' => '监听描述', + 'description' => '监听描述。', + 'type' => 'string', + 'example' => 'listener-description', + ], + 'ListenerId' => [ + 'title' => '自己生成后赋值', + 'description' => '监听ID。', + 'type' => 'string', + 'example' => 'lsn-vu7folhh5ntm8u****', + ], + 'ListenerStatus' => [ + 'title' => '监听状态', + 'description' => '当前监听的状态,取值:'."\n" + ."\n" + .'- **Provisioning**:创建中。'."\n" + .'- **Running**:运行中。'."\n" + .'- **Configuring**:配置中。'."\n" + .'- **Deleting**:删除中。', + 'type' => 'string', + 'example' => 'Running', + ], + 'LoadBalancerId' => [ + 'title' => '负载均衡实例ID', + 'description' => '网关型负载均衡实例的ID。', + 'type' => 'string', + 'example' => 'gwlb-uf6hbeh795xlqln7g****', + ], + 'ServerGroupId' => [ + 'title' => '服务器组ID', + 'description' => '服务器组ID。', + 'type' => 'string', + 'example' => 'sgp-5yapcb422i51ru****', + ], + 'TcpIdleTimeout' => [ + 'title' => 'TCP连接空闲超时时间。', + 'description' => 'TCP连接空闲超时时间。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '350', + ], + 'Tags' => [ + 'description' => '标签列表。', + 'type' => 'array', + 'items' => [ + 'description' => '标签列表。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。', + 'type' => 'string', + 'example' => 'testKey', + ], + 'Value' => [ + 'description' => '标签值。', + 'type' => 'string', + 'example' => 'testValue', + ], + ], + ], + ], + ], + ], + ], + 'MaxResults' => [ + 'description' => '使用NextToken方式查询时,每次最多返回的结果数。取值范围:1~1000。默认值:20。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'NextToken' => [ + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'example' => '5c281c0a0d6bfb6355ed088c2108aca8e0b5e8707e68****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '7DBFC67C-A272-5952-8287-6C3EBE4E04D9', + ], + 'TotalCount' => [ + 'description' => '列表条目总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParam.TagKey', + 'errorMessage' => 'The param of TagKey is missing.', + ], + [ + 'errorCode' => 'DuplicatedParam.TagKey', + 'errorMessage' => 'The param of %s is duplicated.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Listeners\\": [\\n {\\n \\"ListenerDescription\\": \\"listener-description\\",\\n \\"ListenerId\\": \\"lsn-vu7folhh5ntm8u****\\",\\n \\"ListenerStatus\\": \\"Running\\",\\n \\"LoadBalancerId\\": \\"gwlb-uf6hbeh795xlqln7g****\\",\\n \\"ServerGroupId\\": \\"sgp-5yapcb422i51ru****\\",\\n \\"TcpIdleTimeout\\": 350,\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"testKey\\",\\n \\"Value\\": \\"testValue\\"\\n }\\n ]\\n }\\n ],\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"5c281c0a0d6bfb6355ed088c2108aca8e0b5e8707e68****\\",\\n \\"RequestId\\": \\"7DBFC67C-A272-5952-8287-6C3EBE4E04D9\\",\\n \\"TotalCount\\": 8\\n}","type":"json"}]', + 'title' => '查询监听列表', + ], + 'GetListenerAttribute' => [ + 'summary' => '查询负载均衡实例的监听器详情。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221399', + 'abilityTreeNodes' => [ + 'FEATUREslbC68LB1', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ListenerId', + 'in' => 'formData', + 'schema' => [ + 'description' => '监听ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'lsn-brx2y3hqdinciz****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'ListenerDescription' => [ + 'title' => '监听描述', + 'description' => '自定义监听描述。'."\n" + ."\n" + .'长度限制为2~256个字符,支持中文和英文字母,可包含数字、半角逗号(,)、半角句号(.)、半角分号(;)、正斜线(/)、at(@)、下划线(_)和短划线(-)。', + 'type' => 'string', + 'example' => 'listener_description', + ], + 'ListenerId' => [ + 'title' => '', + 'description' => '监听ID。', + 'type' => 'string', + 'example' => 'lsn-3kbj3587mqhm3p****', + ], + 'ListenerStatus' => [ + 'title' => '监听状态', + 'description' => '当前监听的状态。取值:'."\n" + ."\n" + .'- **Provisioning**:创建中。'."\n" + .'- **Running**:运行中。'."\n" + .'- **Configuring**:配置中。'."\n" + .'- **Deleting**:删除中。', + 'type' => 'string', + 'example' => 'Provisioning', + ], + 'LoadBalancerId' => [ + 'title' => '负载均衡实例ID', + 'description' => '网关型负载均衡实例ID。', + 'type' => 'string', + 'example' => 'gwlb-te609d6696632f76****', + ], + 'RegionId' => [ + 'title' => '', + 'description' => '网关型负载均衡实例所在的地域 ID。', + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '75CC3312-7757-5EE1-90D8-49CEA66608AE', + ], + 'ServerGroupId' => [ + 'title' => '服务器组ID', + 'description' => '服务器组ID。', + 'type' => 'string', + 'example' => 'sgp-sp8d2r6y7t0xtl****', + ], + 'TcpIdleTimeout' => [ + 'title' => 'TCP连接空闲超时时间。', + 'description' => 'TCP连接空闲超时时间。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '350', + ], + 'Tags' => [ + 'description' => '标签列表。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'example' => 'testKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'example' => 'testValue', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.Listener', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ListenerDescription\\": \\"listener_description\\",\\n \\"ListenerId\\": \\"lsn-3kbj3587mqhm3p****\\",\\n \\"ListenerStatus\\": \\"Provisioning\\",\\n \\"LoadBalancerId\\": \\"gwlb-te609d6696632f76****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"RequestId\\": \\"75CC3312-7757-5EE1-90D8-49CEA66608AE\\",\\n \\"ServerGroupId\\": \\"sgp-sp8d2r6y7t0xtl****\\",\\n \\"TcpIdleTimeout\\": 350,\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"testKey\\",\\n \\"Value\\": \\"testValue\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询监听详细信息', + ], + 'GetListenerHealthStatus' => [ + 'summary' => '查询负载均衡实例监听的健康检查状态。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '221400', + 'abilityTreeNodes' => [ + 'FEATUREslbL239O5', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ListenerId', + 'in' => 'formData', + 'schema' => [ + 'description' => '监听ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'lsn-7sixpvm5fc3v0b****', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页游标', + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'required' => false, + 'example' => '4f1d7cc9f51e18904e8a063603a6b0c3d03bc69f78734254e0b5e8707e68****', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页大小', + 'description' => '分批次查询时每次显示的条目数。取值范围:1~1000,默认值为 20。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '1000', + 'minimum' => '1', + 'example' => '20', + ], + ], + [ + 'name' => 'Skip', + 'in' => 'formData', + 'schema' => [ + 'description' => '分页查询时,跳过的条目数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Filter', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '动态查询条件列表。一次最多添加20个动态查询条件。', + 'type' => 'array', + 'items' => [ + 'description' => '动态查询条件。', + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => '动态查询条件名称,可选择一个或者多个名称进行查询。取值范围:'."\n" + .'- **Status**:健康检查状态。'."\n" + .'- **ReasonCode**:Status 为异常状态时的详细原因。'."\n" + .'- **ServerId**:后端服务器ID。'."\n" + .'- **ServerIp**:后端服务器IP地址。', + 'type' => 'string', + 'required' => false, + 'example' => 'Status', + 'enum' => [ + 'Status', + 'ReasonCode', + 'ServerId', + 'ServerIp', + ], + ], + 'Values' => [ + 'description' => '动态查询条件的值列表。一次最多添加20个值。', + 'type' => 'array', + 'items' => [ + 'description' => '动态查询条件的值。取值范围参考返回参数中相应字段的取值。', + 'type' => 'string', + 'required' => false, + 'example' => 'Unhealthy', + ], + 'required' => false, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'ListenerHealthStatus' => [ + 'description' => '监听的服务器组健康检查状态列表。', + 'type' => 'array', + 'items' => [ + 'description' => '监听的服务器组健康检查状态结构。', + 'type' => 'object', + 'properties' => [ + 'ListenerId' => [ + 'description' => '监听ID。', + 'type' => 'string', + 'example' => 'lsn-sg8aha6pzjavvo****', + ], + 'ServerGroupInfos' => [ + 'description' => '服务器组信息列表。', + 'type' => 'array', + 'items' => [ + 'description' => '服务器组信息。', + 'type' => 'object', + 'properties' => [ + 'HealthCheckEnabled' => [ + 'description' => '是否开启健康检查。取值:'."\n" + .'- **true**:开启。'."\n" + .'- **false**:关闭。', + 'type' => 'boolean', + 'example' => 'true', + ], + 'ServerGroupId' => [ + 'description' => '服务器组 ID。', + 'type' => 'string', + 'example' => 'sgp-0vdsbyszro3nr6****', + ], + 'Servers' => [ + 'description' => '后端服务器列表。', + 'type' => 'array', + 'items' => [ + 'description' => '后端服务器。', + 'type' => 'object', + 'properties' => [ + 'Port' => [ + 'title' => '服务器端口', + 'description' => '后端服务器端口。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6081', + ], + 'Reason' => [ + 'description' => '**Status**为异常状态时的详细原因。', + 'type' => 'object', + 'properties' => [ + 'ReasonCode' => [ + 'description' => '**Status**为异常状态时的详细原因,取值:'."\n" + ."\n" + .'- **CONNECT_TIMEOUT**:负载均衡健康检查时向后端服务器建立连接超时。'."\n" + .'- **CONNECT_FAIL**:负载均衡健康检查时向后端服务器建立连接失败。'."\n" + .'- **RECV_TIMEOUT**:负载均衡健康检查时从后端服务器接收响应超时。'."\n" + .'- **CONNECT_INTERRUPT**:负载均衡健康检查与后端服务器连接中断。'."\n" + .'- **HTTP_CODE_NOT_MATCH**:负载均衡健康 HTTP 检查时从后端服务器接收的响应码与预期配置返回码不一致。'."\n" + .'- **HTTP_INVALID_HEADER**:负载均衡健康 HTTP 检查时从后端服务器接收响应格式错误。', + 'type' => 'string', + 'example' => 'CONNECT_TIMEOUT', + ], + ], + ], + 'ServerId' => [ + 'title' => '服务器id', + 'description' => '后端服务器ID。', + 'type' => 'string', + 'example' => 'i-2ze4rnh8yj9kif3z****', + ], + 'ServerIp' => [ + 'title' => '服务器ip', + 'description' => '后端服务器IP。', + 'type' => 'string', + 'example' => '192.168.0.XXX', + ], + 'Status' => [ + 'description' => '后端服务器健康检查状态。取值:'."\n" + ."\n" + .'- **Initial**:初始化中,表示负载均衡实例配置了健康检查,但查不到数据。'."\n" + .'- **Unhealthy**:异常,表示连续上报不健康的状态。'."\n" + .'- **Unused**:未使用;'."\n" + .'- **Unavailable**:未开启,表示未开启健康检查;'."\n" + .'- **Healthy**:健康检查正常;', + 'type' => 'string', + 'example' => 'Healthy', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'MaxResults' => [ + 'description' => '分批次查询时每次显示的条目数。取值范围:1~1000,默认值为 20。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'NextToken' => [ + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'example' => 'U12WEI6Ro2ol3wA54rBNSwdC5+lYy6q5SjIQEvc1wz5mjZxV+YjsHRdXV8XauY1BpOQIvwX63E0en54H3D****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0ED4F222-36A0-5470-8A9A-AAB4E96BAC1A', + ], + 'TotalCount' => [ + 'description' => '本次请求条件下的数据总量。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '31', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'IllegalParam.FilterValue', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'IllegalParam.FilterName', + 'errorMessage' => 'The param of %s is illegal.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.Listener', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ListenerHealthStatus\\": [\\n {\\n \\"ListenerId\\": \\"lsn-sg8aha6pzjavvo****\\",\\n \\"ServerGroupInfos\\": [\\n {\\n \\"HealthCheckEnabled\\": true,\\n \\"ServerGroupId\\": \\"sgp-0vdsbyszro3nr6****\\",\\n \\"Servers\\": [\\n {\\n \\"Port\\": 6081,\\n \\"Reason\\": {\\n \\"ReasonCode\\": \\"CONNECT_TIMEOUT\\"\\n },\\n \\"ServerId\\": \\"i-2ze4rnh8yj9kif3z****\\",\\n \\"ServerIp\\": \\"192.168.0.XXX\\",\\n \\"Status\\": \\"Healthy\\"\\n }\\n ]\\n }\\n ]\\n }\\n ],\\n \\"MaxResults\\": 20,\\n \\"NextToken\\": \\"U12WEI6Ro2ol3wA54rBNSwdC5+lYy6q5SjIQEvc1wz5mjZxV+YjsHRdXV8XauY1BpOQIvwX63E0en54H3D****\\",\\n \\"RequestId\\": \\"0ED4F222-36A0-5470-8A9A-AAB4E96BAC1A\\",\\n \\"TotalCount\\": 31\\n}","type":"json"}]', + 'title' => '查询监听健康检查状态', + ], + 'TagResources' => [ + 'summary' => '为指定的资源列表创建并绑定标签。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225141', + 'abilityTreeNodes' => [ + 'FEATUREslbRXTOWD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'formData', + 'schema' => [ + 'description' => '资源类型,取值:'."\n" + ."\n" + .'- **loadbalancer**:网关型负载均衡实例。'."\n" + .'- **listener**:监听。'."\n" + .'- **servergroup**:服务器组。', + 'type' => 'string', + 'required' => true, + 'example' => 'loadbalancer', + 'enum' => [], + ], + ], + [ + 'name' => 'ResourceId', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '资源 ID列表。一次调用最多支持添加 50 个资源 ID。', + 'type' => 'array', + 'items' => [ + 'description' => '资源ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'gwlb-nrnrxwd15en27r****', + ], + 'required' => true, + 'maxItems' => 50, + 'minItems' => 1, + ], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '标签列表。一次调用最多支持 20 个标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以`aliyun`和`acs:`开头,不能包含`http://`或者`https://`。', + 'type' => 'string', + 'required' => true, + 'example' => 'testKey', + ], + 'Value' => [ + 'description' => '标签值。最多支持256个字符,不能包含`http://`或`https://`。', + 'type' => 'string', + 'required' => true, + 'example' => 'testValue', + ], + ], + 'required' => true, + ], + 'required' => true, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会添加标签。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '54F6E60A-1777-5C17-A6A9-BCC1A7FE945B', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParam.TagKey', + 'errorMessage' => 'The param of TagKey is missing.', + ], + [ + 'errorCode' => 'MissingParam.TagValue', + 'errorMessage' => 'The param of TagValue is missing.', + ], + [ + 'errorCode' => 'ResourceQuotaExceeded.TagNum', + 'errorMessage' => 'The quota of %s is exceeded for resource %s, usage %s/%s.', + ], + [ + 'errorCode' => 'DuplicatedParam.TagKey', + 'errorMessage' => 'The param of %s is duplicated.', + ], + [ + 'errorCode' => 'IllegalParam.TagKey', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'IllegalParam.TagValue', + 'errorMessage' => 'The param of %s is illegal.', + ], + [ + 'errorCode' => 'DuplicatedParam.ResourceId', + 'errorMessage' => 'The param of %s is duplicated.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.Listener', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.ServerGroup', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"54F6E60A-1777-5C17-A6A9-BCC1A7FE945B\\"\\n}","type":"json"}]', + 'title' => '添加资源标签', + ], + 'UntagResources' => [ + 'summary' => '为指定的资源列表解绑标签。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225142', + 'abilityTreeNodes' => [ + 'FEATUREslbRXTOWD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'formData', + 'schema' => [ + 'description' => '资源类型,取值:'."\n" + ."\n" + .'- **loadbalancer**:网关型负载均衡实例。'."\n" + .'- **listener**:监听。'."\n" + .'- **servergroup**:服务器组。', + 'type' => 'string', + 'required' => true, + 'example' => 'loadbalancer', + 'enum' => [], + ], + ], + [ + 'name' => 'ResourceId', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '资源 ID列表。一次调用最多支持添加 50 个资源 ID。', + 'type' => 'array', + 'items' => [ + 'description' => '资源ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'gwlb-nrnrxwd15en27r****', + ], + 'required' => true, + 'maxItems' => 50, + 'minItems' => 1, + ], + ], + [ + 'name' => 'TagKey', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '要删除标签的标签键列表。一次调用最多支持删除 20 个标签', + 'type' => 'array', + 'items' => [ + 'description' => '要删除标签的标签键。', + 'type' => 'string', + 'required' => false, + 'example' => 'testKey', + ], + 'required' => false, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + [ + 'name' => 'All', + 'in' => 'formData', + 'schema' => [ + 'description' => '是否解绑资源的所有标签。当填写了TagKey参数时,本参数将被忽略。取值:'."\n" + ."\n" + .'- **true**:解绑资源的所有标签。'."\n" + .'- **false**(默认值):不解绑资源的所有标签。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会删除标签。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3DC0064C-C09E-5C99-8FD4-9CDB2DA7FA21', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ExclusiveParam.TagKeyAndAll', + 'errorMessage' => 'The param of %s and %s are mutually exclusive.', + ], + [ + 'errorCode' => 'MissingParam.TagKey', + 'errorMessage' => 'The param of TagKey is missing.', + ], + [ + 'errorCode' => 'DuplicatedParam.ResourceId', + 'errorMessage' => 'The param of %s is duplicated.', + ], + [ + 'errorCode' => 'DuplicatedParam.TagKey', + 'errorMessage' => 'The param of %s is duplicated.', + ], + [ + 'errorCode' => 'IllegalParam.TagKey', + 'errorMessage' => 'The param of %s is illegal.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.Listener', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.ServerGroup', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3DC0064C-C09E-5C99-8FD4-9CDB2DA7FA21\\"\\n}","type":"json"}]', + 'title' => '删除资源标签', + ], + 'ListTagResources' => [ + 'summary' => '查询指定资源绑定的标签。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225143', + 'abilityTreeNodes' => [ + 'FEATUREslbRXTOWD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'formData', + 'schema' => [ + 'description' => '资源类型,取值:'."\n" + ."\n" + .'- **loadbalancer**:网关型负载均衡实例。'."\n" + .'- **listener**:监听。'."\n" + .'- **servergroup**:服务器组。', + 'type' => 'string', + 'required' => true, + 'example' => 'loadbalancer', + 'enum' => [], + ], + ], + [ + 'name' => 'ResourceId', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '资源 ID列表。一次调用最多支持添加 50 个资源 ID。', + 'type' => 'array', + 'items' => [ + 'description' => '资源ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'gwlb-nrnrxwd15en27r****', + ], + 'required' => false, + 'maxItems' => 50, + 'minItems' => 1, + ], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => '标签列表。一次调用最多支持 20 个标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。', + 'type' => 'string', + 'required' => false, + 'example' => 'testKey', + ], + 'Value' => [ + 'description' => '标签值。', + 'type' => 'string', + 'required' => false, + 'example' => 'testValue', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页游标', + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'required' => false, + 'example' => 'WyI2NDQ3MWUxM2EzOWNhMmY0Y2M2YTRiNzZhOWQwNmU1Y2RlNTYzMGEzIiwibiIsIm4iLDEsLTEsMTY5ODcxMzI2NjU0MywiNjU0MDRlYjI2MmI3MDhjY2JiMjM0ZmU0ODNkNTVmMGRhZDllOTBi****', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'description' => '使用NextToken方式查询时,每次最多返回的结果数。取值范围:1~1000。默认值:20。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'NextToken' => [ + 'description' => '是否拥有下一次查询的令牌(Token)。取值:'."\n" + .'- 如果**NextToken**为空表示没有下一次查询。'."\n" + .'- 如果**NextToken**有返回值,该取值表示下一次查询开始的令牌。', + 'type' => 'string', + 'example' => 'd209f4e63ec942c967c50c888a13****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A95325A2-E421-58A6-88AD-7A26CE610F45', + ], + 'TagResources' => [ + 'description' => '标签资源列表。', + 'type' => 'array', + 'items' => [ + 'description' => '资源绑定的标签信息。', + 'type' => 'object', + 'properties' => [ + 'ResourceId' => [ + 'description' => '资源ID。', + 'type' => 'string', + 'example' => 'gwlb-nrnrxwd15en27r****'."\n", + ], + 'ResourceType' => [ + 'description' => '资源类型,取值:'."\n" + ."\n" + .'- **loadbalancer**:网关型负载均衡实例。'."\n" + .'- **listener**:监听。'."\n" + .'- **servergroup**:服务器组。', + 'type' => 'string', + 'example' => 'loadbalancer', + ], + 'TagKey' => [ + 'description' => '标签键。', + 'type' => 'string', + 'example' => 'testKey', + ], + 'TagValue' => [ + 'description' => '标签值。', + 'type' => 'string', + 'example' => 'testValue', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParam.TagsOrResourceIds', + 'errorMessage' => 'The param of TagsOrResourceIds is missing.', + ], + [ + 'errorCode' => 'MissingParam.TagKey', + 'errorMessage' => 'The param of TagKey is missing.', + ], + [ + 'errorCode' => 'DuplicatedParam.ResourceId', + 'errorMessage' => 'The param of %s is duplicated.', + ], + [ + 'errorCode' => 'DuplicatedParam.TagKey', + 'errorMessage' => 'The param of %s is duplicated.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"d209f4e63ec942c967c50c888a13****\\",\\n \\"RequestId\\": \\"A95325A2-E421-58A6-88AD-7A26CE610F45\\",\\n \\"TagResources\\": [\\n {\\n \\"ResourceId\\": \\"gwlb-nrnrxwd15en27r****\\\\n\\",\\n \\"ResourceType\\": \\"loadbalancer\\",\\n \\"TagKey\\": \\"testKey\\",\\n \\"TagValue\\": \\"testValue\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询资源标签', + ], + 'MoveResourceGroup' => [ + 'summary' => '修改资源所属的资源组。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '225546', + 'abilityTreeNodes' => [ + 'FEATUREslbRXTOWD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ResourceId', + 'in' => 'formData', + 'schema' => [ + 'description' => '资源ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'gwlb-nrnrxwd15en27r****', + ], + ], + [ + 'name' => 'NewResourceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => '目标资源组ID。', + 'type' => 'string', + 'required' => true, + 'example' => 'rg-aek253e4oit****', + ], + ], + [ + 'name' => 'ResourceType', + 'in' => 'formData', + 'schema' => [ + 'description' => '资源类型,取值:'."\n" + ."\n" + .'- **loadbalancer**:网关型负载均衡实例。'."\n" + .'- **servergroup**:服务器组。', + 'type' => 'string', + 'required' => true, + 'example' => 'loadbalancer', + 'enum' => [ + 'loadbalancer', + 'servergroup', + ], + ], + ], + [ + 'name' => 'DryRun', + 'in' => 'formData', + 'schema' => [ + 'title' => 'dryRun标记', + 'description' => '是否只预检此次请求。取值:'."\n" + .'- **true**:发送检查请求,不会迁移资源组。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码`DryRunOperation`。'."\n" + .'- **false**(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行操作。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等token', + 'description' => '客户端Token,用于保证请求的幂等性。'."\n" + ."\n" + .'从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。'."\n" + ."\n" + .'> 若您未指定,则系统自动使用API请求的**RequestId**作为**ClientToken**标识。每次API请求的**RequestId**可能不一样。', + 'type' => 'string', + 'required' => false, + 'example' => '123e4567-e89b-12d3-a456-42665544****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => '', + 'description' => '请求的返回值。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '78828B5C-521E-50F3-84D4-7019691D1382', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'OperationDenied.NotExist.ResourceGroup', + 'errorMessage' => 'The operation is not allowed because of NotExist.ResourceGroup.', + ], + [ + 'errorCode' => 'OperationDenied.StatusCheckFail.ResourceGroup', + 'errorMessage' => 'The operation is not allowed because of StatusCheckFail.ResourceGroup.', + ], + ], + 404 => [ + [ + 'errorCode' => 'ResourceNotFound.LoadBalancer', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + [ + 'errorCode' => 'ResourceNotFound.ServerGroup', + 'errorMessage' => 'The specified resource of %s is not found.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"78828B5C-521E-50F3-84D4-7019691D1382\\"\\n}","type":"json"}]', + 'title' => '迁移资源组', + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'cn-wulanchabu', + 'endpoint' => 'gwlb.cn-wulanchabu.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-1', + 'endpoint' => 'gwlb.ap-southeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing', + 'endpoint' => 'gwlb.cn-beijing.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai', + 'endpoint' => 'gwlb.cn-shanghai.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou', + 'endpoint' => 'gwlb.cn-hangzhou.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hongkong', + 'endpoint' => 'gwlb.cn-hongkong.aliyuncs.com', + ], + [ + 'regionId' => 'ap-northeast-1', + 'endpoint' => 'gwlb.ap-northeast-1.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen', + 'endpoint' => 'gwlb.cn-shenzhen.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-3', + 'endpoint' => 'gwlb.ap-southeast-3.aliyuncs.com', + ], + ], +]; |
