UNPKG

tencentcloud-sdk-nodejs-intl-en

Version:
875 lines (821 loc) • 75.4 kB
/* * Copyright (c) 2018 Tencent. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ const models = require("./models"); const AbstractClient = require('../../common/abstract_client') const DeleteRewriteRequest = models.DeleteRewriteRequest; const DescribeTargetGroupListResponse = models.DescribeTargetGroupListResponse; const DescribeQuotaRequest = models.DescribeQuotaRequest; const DescribeTargetGroupListRequest = models.DescribeTargetGroupListRequest; const BatchDeregisterTargetsResponse = models.BatchDeregisterTargetsResponse; const SetLoadBalancerSecurityGroupsResponse = models.SetLoadBalancerSecurityGroupsResponse; const RulesItems = models.RulesItems; const ExtraInfo = models.ExtraInfo; const ClassicalListener = models.ClassicalListener; const BatchModifyTargetWeightResponse = models.BatchModifyTargetWeightResponse; const SetSecurityGroupForLoadbalancersRequest = models.SetSecurityGroupForLoadbalancersRequest; const CreateLoadBalancerRequest = models.CreateLoadBalancerRequest; const DescribeLoadBalancerOverviewResponse = models.DescribeLoadBalancerOverviewResponse; const DeleteRuleRequest = models.DeleteRuleRequest; const CloneLoadBalancerRequest = models.CloneLoadBalancerRequest; const DisassociateTargetGroupsResponse = models.DisassociateTargetGroupsResponse; const ListenerBackend = models.ListenerBackend; const SetLoadBalancerClsLogResponse = models.SetLoadBalancerClsLogResponse; const TargetGroupInstance = models.TargetGroupInstance; const DescribeLoadBalancerTrafficResponse = models.DescribeLoadBalancerTrafficResponse; const MultiCertInfo = models.MultiCertInfo; const RsTagRule = models.RsTagRule; const ModifyRuleRequest = models.ModifyRuleRequest; const DescribeCustomizedConfigListResponse = models.DescribeCustomizedConfigListResponse; const DescribeBlockIPListResponse = models.DescribeBlockIPListResponse; const DescribeRewriteRequest = models.DescribeRewriteRequest; const ModifyLoadBalancerAttributesResponse = models.ModifyLoadBalancerAttributesResponse; const DescribeTargetGroupInstancesRequest = models.DescribeTargetGroupInstancesRequest; const DescribeLBOperateProtectRequest = models.DescribeLBOperateProtectRequest; const DescribeIdleLoadBalancersResponse = models.DescribeIdleLoadBalancersResponse; const AssociateTargetGroupsRequest = models.AssociateTargetGroupsRequest; const AddCustomizedConfigRequest = models.AddCustomizedConfigRequest; const ClassicalTarget = models.ClassicalTarget; const ListenerItem = models.ListenerItem; const RsWeightRule = models.RsWeightRule; const RegisterFunctionTargetsRequest = models.RegisterFunctionTargetsRequest; const DeregisterTargetsFromClassicalLBRequest = models.DeregisterTargetsFromClassicalLBRequest; const InquiryPriceModifyLoadBalancerRequest = models.InquiryPriceModifyLoadBalancerRequest; const ModifyCustomizedConfigRequest = models.ModifyCustomizedConfigRequest; const BasicTargetGroupInfo = models.BasicTargetGroupInfo; const ModifyTargetWeightResponse = models.ModifyTargetWeightResponse; const ZoneResource = models.ZoneResource; const DescribeTaskStatusRequest = models.DescribeTaskStatusRequest; const DescribeTargetGroupInstanceStatusResponse = models.DescribeTargetGroupInstanceStatusResponse; const DescribeClassicalLBByInstanceIdResponse = models.DescribeClassicalLBByInstanceIdResponse; const CreateRuleResponse = models.CreateRuleResponse; const CrossTargets = models.CrossTargets; const RuleHealth = models.RuleHealth; const ModifyDomainRequest = models.ModifyDomainRequest; const DisassociateCustomizedConfigResponse = models.DisassociateCustomizedConfigResponse; const BatchModifyTargetTagRequest = models.BatchModifyTargetTagRequest; const RegisterTargetGroupInstancesResponse = models.RegisterTargetGroupInstancesResponse; const ClassicalTargetInfo = models.ClassicalTargetInfo; const DescribeTargetsRequest = models.DescribeTargetsRequest; const ZoneInfo = models.ZoneInfo; const RegisterTargetsWithClassicalLBResponse = models.RegisterTargetsWithClassicalLBResponse; const DescribeTargetGroupsResponse = models.DescribeTargetGroupsResponse; const LoadBalancerHealth = models.LoadBalancerHealth; const InquiryPriceCreateLoadBalancerRequest = models.InquiryPriceCreateLoadBalancerRequest; const ModifyFunctionTargetsResponse = models.ModifyFunctionTargetsResponse; const DeleteLoadBalancerListenersRequest = models.DeleteLoadBalancerListenersRequest; const BlockedIP = models.BlockedIP; const ModifyRuleResponse = models.ModifyRuleResponse; const DescribeClassicalLBTargetsRequest = models.DescribeClassicalLBTargetsRequest; const InquiryPriceRenewLoadBalancerResponse = models.InquiryPriceRenewLoadBalancerResponse; const DeregisterFunctionTargetsResponse = models.DeregisterFunctionTargetsResponse; const DescribeCustomizedConfigListRequest = models.DescribeCustomizedConfigListRequest; const AutoRewriteRequest = models.AutoRewriteRequest; const IdleLoadBalancer = models.IdleLoadBalancer; const DescribeCrossTargetsResponse = models.DescribeCrossTargetsResponse; const FunctionInfo = models.FunctionInfo; const ModifyCustomizedConfigResponse = models.ModifyCustomizedConfigResponse; const DescribeLoadBalancerListByCertIdResponse = models.DescribeLoadBalancerListByCertIdResponse; const ModifyTargetGroupInstancesWeightResponse = models.ModifyTargetGroupInstancesWeightResponse; const DescribeTargetGroupsRequest = models.DescribeTargetGroupsRequest; const DescribeTaskStatusResponse = models.DescribeTaskStatusResponse; const BatchRegisterTargetsResponse = models.BatchRegisterTargetsResponse; const ModifyLoadBalancerAttributesRequest = models.ModifyLoadBalancerAttributesRequest; const InquiryPriceModifyLoadBalancerResponse = models.InquiryPriceModifyLoadBalancerResponse; const DescribeLBListenersRequest = models.DescribeLBListenersRequest; const SlaUpdateParam = models.SlaUpdateParam; const Target = models.Target; const DescribeLoadBalancerTrafficRequest = models.DescribeLoadBalancerTrafficRequest; const DescribeBlockIPListRequest = models.DescribeBlockIPListRequest; const MigrateClassicalLoadBalancersResponse = models.MigrateClassicalLoadBalancersResponse; const CertIdRelatedWithLoadBalancers = models.CertIdRelatedWithLoadBalancers; const DescribeClassicalLBHealthStatusResponse = models.DescribeClassicalLBHealthStatusResponse; const ModifyLoadBalancerSlaResponse = models.ModifyLoadBalancerSlaResponse; const DescribeClsLogSetRequest = models.DescribeClsLogSetRequest; const Listener = models.Listener; const LoadBalancerTraffic = models.LoadBalancerTraffic; const SpecAvailability = models.SpecAvailability; const ConfigListItem = models.ConfigListItem; const RegisterTargetsWithClassicalLBRequest = models.RegisterTargetsWithClassicalLBRequest; const HealthCheck = models.HealthCheck; const ModifyDomainAttributesResponse = models.ModifyDomainAttributesResponse; const ReplaceCertForLoadBalancersResponse = models.ReplaceCertForLoadBalancersResponse; const DescribeTargetsResponse = models.DescribeTargetsResponse; const ModifyListenerRequest = models.ModifyListenerRequest; const SetSecurityGroupForLoadbalancersResponse = models.SetSecurityGroupForLoadbalancersResponse; const DeregisterTargetGroupInstancesResponse = models.DeregisterTargetGroupInstancesResponse; const RegisterTargetsRequest = models.RegisterTargetsRequest; const DisassociateCustomizedConfigRequest = models.DisassociateCustomizedConfigRequest; const AssociateTargetGroupsResponse = models.AssociateTargetGroupsResponse; const CreateTopicRequest = models.CreateTopicRequest; const DeleteListenerRequest = models.DeleteListenerRequest; const ClassicalHealth = models.ClassicalHealth; const DescribeCustomizedConfigAssociateListRequest = models.DescribeCustomizedConfigAssociateListRequest; const RenewLoadBalancersResponse = models.RenewLoadBalancersResponse; const ModifyTargetPortResponse = models.ModifyTargetPortResponse; const MigrateClassicalLoadBalancersRequest = models.MigrateClassicalLoadBalancersRequest; const DescribeLoadBalancersDetailRequest = models.DescribeLoadBalancersDetailRequest; const TargetGroupBackend = models.TargetGroupBackend; const DeregisterFunctionTargetsRequest = models.DeregisterFunctionTargetsRequest; const DescribeClassicalLBByInstanceIdRequest = models.DescribeClassicalLBByInstanceIdRequest; const FunctionTarget = models.FunctionTarget; const InquiryPriceRefundLoadBalancerResponse = models.InquiryPriceRefundLoadBalancerResponse; const DescribeResourcesResponse = models.DescribeResourcesResponse; const ModifyTargetGroupInstancesWeightRequest = models.ModifyTargetGroupInstancesWeightRequest; const ManualRewriteResponse = models.ManualRewriteResponse; const TargetGroupInstanceStatus = models.TargetGroupInstanceStatus; const ModifyBlockIPListRequest = models.ModifyBlockIPListRequest; const RuleOutput = models.RuleOutput; const ModifyBlockIPListResponse = models.ModifyBlockIPListResponse; const ExclusiveCluster = models.ExclusiveCluster; const DescribeClassicalLBHealthStatusRequest = models.DescribeClassicalLBHealthStatusRequest; const DescribeListenersRequest = models.DescribeListenersRequest; const CreateClsLogSetResponse = models.CreateClsLogSetResponse; const Backend = models.Backend; const LBChargePrepaid = models.LBChargePrepaid; const AddCustomizedConfigResponse = models.AddCustomizedConfigResponse; const DeleteLoadBalancerRequest = models.DeleteLoadBalancerRequest; const ModifyLoadBalancersProjectRequest = models.ModifyLoadBalancersProjectRequest; const AssociateCustomizedConfigRequest = models.AssociateCustomizedConfigRequest; const CertificateInput = models.CertificateInput; const ResourceAvailability = models.ResourceAvailability; const SetLoadBalancerSecurityGroupsRequest = models.SetLoadBalancerSecurityGroupsRequest; const DescribeCustomizedConfigAssociateListResponse = models.DescribeCustomizedConfigAssociateListResponse; const RenewLoadBalancersRequest = models.RenewLoadBalancersRequest; const SetCustomizedConfigForLoadBalancerRequest = models.SetCustomizedConfigForLoadBalancerRequest; const CreateListenerResponse = models.CreateListenerResponse; const CreateTargetGroupResponse = models.CreateTargetGroupResponse; const AssociateCustomizedConfigResponse = models.AssociateCustomizedConfigResponse; const CreateLoadBalancerSnatIpsResponse = models.CreateLoadBalancerSnatIpsResponse; const ClassicalLoadBalancerInfo = models.ClassicalLoadBalancerInfo; const DescribeListenersResponse = models.DescribeListenersResponse; const LBOperateProtectInfo = models.LBOperateProtectInfo; const RegisterFunctionTargetsResponse = models.RegisterFunctionTargetsResponse; const CreateTopicResponse = models.CreateTopicResponse; const CreateRuleRequest = models.CreateRuleRequest; const ModifyTargetGroupInstancesPortResponse = models.ModifyTargetGroupInstancesPortResponse; const LbRsItem = models.LbRsItem; const RuleTargets = models.RuleTargets; const BatchDeregisterTargetsRequest = models.BatchDeregisterTargetsRequest; const DeregisterTargetGroupInstancesRequest = models.DeregisterTargetGroupInstancesRequest; const ManualRewriteRequest = models.ManualRewriteRequest; const InquiryPriceRefundLoadBalancerRequest = models.InquiryPriceRefundLoadBalancerRequest; const ModifyListenerResponse = models.ModifyListenerResponse; const DescribeTargetHealthResponse = models.DescribeTargetHealthResponse; const CertInfo = models.CertInfo; const CreateTargetGroupRequest = models.CreateTargetGroupRequest; const ClusterItem = models.ClusterItem; const BindDetailItem = models.BindDetailItem; const CreateListenerRequest = models.CreateListenerRequest; const CreateClsLogSetRequest = models.CreateClsLogSetRequest; const TypeInfo = models.TypeInfo; const DisassociateTargetGroupsRequest = models.DisassociateTargetGroupsRequest; const Filter = models.Filter; const BindItem = models.BindItem; const ModifyDomainResponse = models.ModifyDomainResponse; const RegisterTargetsResponse = models.RegisterTargetsResponse; const DeregisterTargetsFromClassicalLBResponse = models.DeregisterTargetsFromClassicalLBResponse; const DescribeLoadBalancersRequest = models.DescribeLoadBalancersRequest; const SetCustomizedConfigForLoadBalancerResponse = models.SetCustomizedConfigForLoadBalancerResponse; const DeleteLoadBalancerResponse = models.DeleteLoadBalancerResponse; const AutoRewriteResponse = models.AutoRewriteResponse; const DeregisterTargetsResponse = models.DeregisterTargetsResponse; const DescribeLoadBalancerOverviewRequest = models.DescribeLoadBalancerOverviewRequest; const RewriteTarget = models.RewriteTarget; const ItemPrice = models.ItemPrice; const ModifyTargetWeightRequest = models.ModifyTargetWeightRequest; const DescribeLoadBalancersDetailResponse = models.DescribeLoadBalancersDetailResponse; const TargetHealth = models.TargetHealth; const LoadBalancerDetail = models.LoadBalancerDetail; const LbRsTargets = models.LbRsTargets; const BatchModifyTargetWeightRequest = models.BatchModifyTargetWeightRequest; const DescribeTargetGroupInstanceStatusRequest = models.DescribeTargetGroupInstanceStatusRequest; const BatchModifyTargetTagResponse = models.BatchModifyTargetTagResponse; const DeleteRewriteResponse = models.DeleteRewriteResponse; const BatchTarget = models.BatchTarget; const DescribeLoadBalancerListByCertIdRequest = models.DescribeLoadBalancerListByCertIdRequest; const TargetRegionInfo = models.TargetRegionInfo; const DescribeTargetHealthRequest = models.DescribeTargetHealthRequest; const ReplaceCertForLoadBalancersRequest = models.ReplaceCertForLoadBalancersRequest; const DeleteRuleResponse = models.DeleteRuleResponse; const CloneLoadBalancerResponse = models.CloneLoadBalancerResponse; const DescribeClsLogSetResponse = models.DescribeClsLogSetResponse; const ModifyTargetGroupAttributeRequest = models.ModifyTargetGroupAttributeRequest; const ModifyDomainAttributesRequest = models.ModifyDomainAttributesRequest; const DeregisterTargetsRequest = models.DeregisterTargetsRequest; const InquiryPriceCreateLoadBalancerResponse = models.InquiryPriceCreateLoadBalancerResponse; const CreateLoadBalancerSnatIpsRequest = models.CreateLoadBalancerSnatIpsRequest; const TargetGroupHealthCheck = models.TargetGroupHealthCheck; const DescribeTargetGroupInstancesResponse = models.DescribeTargetGroupInstancesResponse; const DescribeQuotaResponse = models.DescribeQuotaResponse; const DeleteTargetGroupsResponse = models.DeleteTargetGroupsResponse; const Price = models.Price; const ModifyTargetGroupInstancesPortRequest = models.ModifyTargetGroupInstancesPortRequest; const BatchRegisterTargetsRequest = models.BatchRegisterTargetsRequest; const DeleteCustomizedConfigResponse = models.DeleteCustomizedConfigResponse; const DescribeLBOperateProtectResponse = models.DescribeLBOperateProtectResponse; const RuleInput = models.RuleInput; const TagInfo = models.TagInfo; const SnatIp = models.SnatIp; const DescribeBlockIPTaskResponse = models.DescribeBlockIPTaskResponse; const DescribeResourcesRequest = models.DescribeResourcesRequest; const DescribeClassicalLBListenersResponse = models.DescribeClassicalLBListenersResponse; const ModifyTargetGroupAttributeResponse = models.ModifyTargetGroupAttributeResponse; const ModifyLoadBalancerSlaRequest = models.ModifyLoadBalancerSlaRequest; const SetLoadBalancerStartStatusResponse = models.SetLoadBalancerStartStatusResponse; const DescribeBlockIPTaskRequest = models.DescribeBlockIPTaskRequest; const Resource = models.Resource; const CreateLoadBalancerResponse = models.CreateLoadBalancerResponse; const ModifyFunctionTargetsRequest = models.ModifyFunctionTargetsRequest; const DescribeRewriteResponse = models.DescribeRewriteResponse; const Quota = models.Quota; const AvailableZoneAffinityInfo = models.AvailableZoneAffinityInfo; const SetLoadBalancerClsLogRequest = models.SetLoadBalancerClsLogRequest; const LBItem = models.LBItem; const DeleteCustomizedConfigRequest = models.DeleteCustomizedConfigRequest; const DeleteLoadBalancerListenersResponse = models.DeleteLoadBalancerListenersResponse; const DescribeIdleLoadBalancersRequest = models.DescribeIdleLoadBalancersRequest; const DeleteLoadBalancerSnatIpsRequest = models.DeleteLoadBalancerSnatIpsRequest; const InternetAccessible = models.InternetAccessible; const OAuth = models.OAuth; const DescribeClassicalLBTargetsResponse = models.DescribeClassicalLBTargetsResponse; const RewriteLocationMap = models.RewriteLocationMap; const ModifyTargetPortRequest = models.ModifyTargetPortRequest; const ModifyLoadBalancersProjectResponse = models.ModifyLoadBalancersProjectResponse; const DescribeLoadBalancersResponse = models.DescribeLoadBalancersResponse; const DescribeLBListenersResponse = models.DescribeLBListenersResponse; const TargetGroupInfo = models.TargetGroupInfo; const DeleteListenerResponse = models.DeleteListenerResponse; const DeleteLoadBalancerSnatIpsResponse = models.DeleteLoadBalancerSnatIpsResponse; const InquiryPriceRenewLoadBalancerRequest = models.InquiryPriceRenewLoadBalancerRequest; const CertificateOutput = models.CertificateOutput; const DeleteTargetGroupsRequest = models.DeleteTargetGroupsRequest; const DescribeClassicalLBListenersRequest = models.DescribeClassicalLBListenersRequest; const SetLoadBalancerStartStatusRequest = models.SetLoadBalancerStartStatusRequest; const TargetGroupAssociation = models.TargetGroupAssociation; const ListenerHealth = models.ListenerHealth; const AssociationItem = models.AssociationItem; const DescribeCrossTargetsRequest = models.DescribeCrossTargetsRequest; const RegisterTargetGroupInstancesRequest = models.RegisterTargetGroupInstancesRequest; const LoadBalancer = models.LoadBalancer; /** * clb client * @class */ class ClbClient extends AbstractClient { constructor(credential, region, profile) { super("clb.intl.tencentcloudapi.com", "2018-03-17", credential, region, profile); } /** * This API is used to query the configured location, bound server or bound CLB instance. If there are domain names, the result will be filtered by domain name. * @param {DescribeCustomizedConfigAssociateListRequest} req * @param {function(string, DescribeCustomizedConfigAssociateListResponse):void} cb * @public */ DescribeCustomizedConfigAssociateList(req, cb) { let resp = new DescribeCustomizedConfigAssociateListResponse(); this.request("DescribeCustomizedConfigAssociateList", req, resp, cb); } /** * This API is used to query the price of adjusting the specification of a CLB instance. * @param {InquiryPriceModifyLoadBalancerRequest} req * @param {function(string, InquiryPriceModifyLoadBalancerResponse):void} cb * @public */ InquiryPriceModifyLoadBalancer(req, cb) { let resp = new InquiryPriceModifyLoadBalancerResponse(); this.request("InquiryPriceModifyLoadBalancer", req, resp, cb); } /** * This API is used to batch unbind real servers of the layer-4 and layer-7 VPC-based CLBs. Up to 500 real servers can be unbound in a batch. * @param {BatchDeregisterTargetsRequest} req * @param {function(string, BatchDeregisterTargetsResponse):void} cb * @public */ BatchDeregisterTargets(req, cb) { let resp = new BatchDeregisterTargetsResponse(); this.request("BatchDeregisterTargets", req, resp, cb); } /** * An HTTPS:443 listener needs to be created first, along with a forwarding rule. When this API is called, an HTTP:80 listener will be created automatically if it did not exist and a forwarding rule corresponding to `Domains` (specified in the input parameter) under the HTTPS:443 listener will also be created. After successful creation, access requests to an HTTP:80 address will be redirected to an HTTPS:443 address automatically. * @param {AutoRewriteRequest} req * @param {function(string, AutoRewriteResponse):void} cb * @public */ AutoRewrite(req, cb) { let resp = new AutoRewriteResponse(); this.request("AutoRewrite", req, resp, cb); } /** * This API is used to modify server weights of a target group in batches. This is an async API. After it is returned successfully, you can call the `DescribeTaskStatus` API with the returned `RequestID` as an input parameter to check whether this task is successful. * @param {ModifyTargetGroupInstancesWeightRequest} req * @param {function(string, ModifyTargetGroupInstancesWeightResponse):void} cb * @public */ ModifyTargetGroupInstancesWeight(req, cb) { let resp = new ModifyTargetGroupInstancesWeightResponse(); this.request("ModifyTargetGroupInstancesWeight", req, resp, cb); } /** * This API is used to associate configurations with a server or location based on the configuration type. It is preparing for decommissioning, please use SetCustomizedConfigForLoadBalancer. * @param {AssociateCustomizedConfigRequest} req * @param {function(string, AssociateCustomizedConfigResponse):void} cb * @public */ AssociateCustomizedConfig(req, cb) { let resp = new AssociateCustomizedConfigResponse(); this.request("AssociateCustomizedConfig", req, resp, cb); } /** * This API is used to unbind a CLB real server. This is an async API. After it is returned successfully, you can call the API `DescribeTaskStatus` with the returned RequestId as an input parameter to check whether this task is successful. * @param {DeregisterTargetsFromClassicalLBRequest} req * @param {function(string, DeregisterTargetsFromClassicalLBResponse):void} cb * @public */ DeregisterTargetsFromClassicalLB(req, cb) { let resp = new DeregisterTargetsFromClassicalLBResponse(); this.request("DeregisterTargetsFromClassicalLB", req, resp, cb); } /** * This API is used to query CLB instance details, including listener, rules, and target real servers. * @param {DescribeLoadBalancersDetailRequest} req * @param {function(string, DescribeLoadBalancersDetailResponse):void} cb * @public */ DescribeLoadBalancersDetail(req, cb) { let resp = new DescribeLoadBalancersDetailResponse(); this.request("DescribeLoadBalancersDetail", req, resp, cb); } /** * This API is used to bind target groups to Cloud Load Balancer listeners (Layer-4 protocol) or forwarding rules (L7 protocol). This API is asynchronous. After it returns a successful result, you need to call the [DescribeTaskStatus](https://www.tencentcloud.com/document/product/214/30683?from_cn_redirect=1) API with the returned RequestID as input parameter to check whether this task is successful. This API is used to describe restrictions. - Binding a legacy version target group to a Layer-4 listener requires the listener to have backend target groups enabled. - Layer-7 bind target group. LocationId is a required item in the data structure TargetGroupAssociation. - The VPC of the Cloud Load Balancer must match the VPC of the target group. * @param {AssociateTargetGroupsRequest} req * @param {function(string, AssociateTargetGroupsResponse):void} cb * @public */ AssociateTargetGroups(req, cb) { let resp = new AssociateTargetGroupsResponse(); this.request("AssociateTargetGroups", req, resp, cb); } /** * This API is used to unbind a server from a target group. This API is used to perform asynchronous operations. After it returns a successful result, call the [DescribeTaskStatus](https://www.tencentcloud.com/document/product/214/30683?from_cn_redirect=1) API with the returned RequestID as an input parameter to check whether this task is successful. * @param {DeregisterTargetGroupInstancesRequest} req * @param {function(string, DeregisterTargetGroupInstancesResponse):void} cb * @public */ DeregisterTargetGroupInstances(req, cb) { let resp = new DeregisterTargetGroupInstancesResponse(); this.request("DeregisterTargetGroupInstances", req, resp, cb); } /** * This API is used to get the list of listeners by CLB ID, listener protocol, or listener port. If no filter is specified, all listeners for the CLB instance will be returned. * @param {DescribeListenersRequest} req * @param {function(string, DescribeListenersResponse):void} cb * @public */ DescribeListeners(req, cb) { let resp = new DescribeListenersResponse(); this.request("DescribeListeners", req, resp, cb); } /** * This API is used to create a topic with the full-text index and key-value index enabled by default. The creation will fail if there is no CLB exclusive logset. * @param {CreateTopicRequest} req * @param {function(string, CreateTopicResponse):void} cb * @public */ CreateTopic(req, cb) { let resp = new CreateTopicResponse(); this.request("CreateTopic", req, resp, cb); } /** * This API is used to modify the projects of CLB instances. * @param {ModifyLoadBalancersProjectRequest} req * @param {function(string, ModifyLoadBalancersProjectResponse):void} cb * @public */ ModifyLoadBalancersProject(req, cb) { let resp = new ModifyLoadBalancersProjectResponse(); this.request("ModifyLoadBalancersProject", req, resp, cb); } /** * This API is used to create or manage a user-defined CLB configuration template. * @param {SetCustomizedConfigForLoadBalancerRequest} req * @param {function(string, SetCustomizedConfigForLoadBalancerResponse):void} cb * @public */ SetCustomizedConfigForLoadBalancer(req, cb) { let resp = new SetCustomizedConfigForLoadBalancerResponse(); this.request("SetCustomizedConfigForLoadBalancer", req, resp, cb); } /** * This API is used to query the backend service status of a target group. Currently, only GWLB type target groups support querying backend service status. * @param {DescribeTargetGroupInstanceStatusRequest} req * @param {function(string, DescribeTargetGroupInstanceStatusResponse):void} cb * @public */ DescribeTargetGroupInstanceStatus(req, cb) { let resp = new DescribeTargetGroupInstanceStatusResponse(); this.request("DescribeTargetGroupInstanceStatus", req, resp, cb); } /** * This API is used to bind a real server with a classic CLB instance. This is an async API. After it is returned successfully, you can call the API `DescribeTaskStatus` with the returned RequestId as an input parameter to check whether this task is successful. * @param {RegisterTargetsWithClassicalLBRequest} req * @param {function(string, RegisterTargetsWithClassicalLBResponse):void} cb * @public */ RegisterTargetsWithClassicalLB(req, cb) { let resp = new RegisterTargetsWithClassicalLBResponse(); this.request("RegisterTargetsWithClassicalLB", req, resp, cb); } /** * This API (DeregisterTargets) is used to unbind one or more real servers from a CLB listener or forwarding rule. For layer-4 listeners, only the listener ID needs to be specified. For layer-7 listeners, the forwarding rule also needs to be specified through LocationId or Domain+Url. This is an async API. After it is returned successfully, you can call the DescribeTaskStatus API with the returned RequestID as an input parameter to check whether this task is successful. * @param {DeregisterTargetsRequest} req * @param {function(string, DeregisterTargetsResponse):void} cb * @public */ DeregisterTargets(req, cb) { let resp = new DeregisterTargetsResponse(); this.request("DeregisterTargets", req, resp, cb); } /** * This API is used to modify the attributes of a CLB instance, such as name and cross-region attributes. Non-bandwidth-upshift users must add their CLB instance to a bandwidth package to configure cross-domain attributes. To modify the network billing mode, go to the console. This API is used to perform asynchronous operations. After returning a successful result, call the [DescribeTaskStatus](https://www.tencentcloud.com/document/product/214/30683?from_cn_redirect=1) API with the returned RequestID as an input parameter to check whether this task is successful. * @param {ModifyLoadBalancerAttributesRequest} req * @param {function(string, ModifyLoadBalancerAttributesResponse):void} cb * @public */ ModifyLoadBalancerAttributes(req, cb) { let resp = new ModifyLoadBalancerAttributesResponse(); this.request("ModifyLoadBalancerAttributes", req, resp, cb); } /** * This API is used to modify server ports of a target group in batches. This is an async API. After it is returned successfully, you can call the `DescribeTaskStatus` API with the returned `RequestID` as an input parameter to check whether this task is successful. * @param {ModifyTargetGroupInstancesPortRequest} req * @param {function(string, ModifyTargetGroupInstancesPortResponse):void} cb * @public */ ModifyTargetGroupInstancesPort(req, cb) { let resp = new ModifyTargetGroupInstancesPortResponse(); this.request("ModifyTargetGroupInstancesPort", req, resp, cb); } /** * The BatchModifyTargetWeight API is used to batch modify the forwarding weight of backend machines bound to a CLB listener. The maximum resource quantity for batch modification is 500. This is an asynchronous API. After it returns a successful result, you need to call the DescribeTaskStatus API with the returned RequestID as input parameter to check whether this task is successful. This API supports both layer-4 and layer-7 CLB listeners but is unsupported for classic CLB. * @param {BatchModifyTargetWeightRequest} req * @param {function(string, BatchModifyTargetWeightResponse):void} cb * @public */ BatchModifyTargetWeight(req, cb) { let resp = new BatchModifyTargetWeightResponse(); this.request("BatchModifyTargetWeight", req, resp, cb); } /** * This API (DeleteRewrite) is used to delete the redirection relationship between the specified forwarding rules. * @param {DeleteRewriteRequest} req * @param {function(string, DeleteRewriteResponse):void} cb * @public */ DeleteRewrite(req, cb) { let resp = new DeleteRewriteResponse(); this.request("DeleteRewrite", req, resp, cb); } /** * This API is used to disassociate personalized configurations and prepare for decommissioning. Please use SetCustomizedConfigForLoadBalancer. * @param {DisassociateCustomizedConfigRequest} req * @param {function(string, DisassociateCustomizedConfigResponse):void} cb * @public */ DisassociateCustomizedConfig(req, cb) { let resp = new DisassociateCustomizedConfigResponse(); this.request("DisassociateCustomizedConfig", req, resp, cb); } /** * This API is used to bind or unbind security groups for a public network load balancing instance. To query currently bound security groups of a load balancing instance, use the [DescribeLoadBalancers]((https://www.tencentcloud.com/document/product/1108/48459?from_cn_redirect=1)) API. This API follows set semantics. This API is used to pass in all security groups that should be bound to the Cloud Load Balancer instance during the binding operation (bound + new binding). For unbinding operations, the input parameters should specify all security groups bound to a CLB instance after unbinding. If you want to unbind all security groups, you can omit this parameter or input an empty array. Note: After a private network CLB is bound to an EIP, the security groups on the CLB do not take effect for the traffic from the EIP, but take effect for the traffic from the private network CLB. * @param {SetLoadBalancerSecurityGroupsRequest} req * @param {function(string, SetLoadBalancerSecurityGroupsResponse):void} cb * @public */ SetLoadBalancerSecurityGroups(req, cb) { let resp = new SetLoadBalancerSecurityGroupsResponse(); this.request("SetLoadBalancerSecurityGroups", req, resp, cb); } /** * This API is used to query the refund price of Cloud Load Balancer and only supports prepaid load balancing instances. * @param {InquiryPriceRefundLoadBalancerRequest} req * @param {function(string, InquiryPriceRefundLoadBalancerResponse):void} cb * @public */ InquiryPriceRefundLoadBalancer(req, cb) { let resp = new InquiryPriceRefundLoadBalancerResponse(); this.request("InquiryPriceRefundLoadBalancer", req, resp, cb); } /** * This API is used to delete listeners (layer-4 and layer-7) under a Cloud Load Balancer instance. This API is used to perform asynchronous operations. After returning a successful result, call the [DescribeTaskStatus](https://www.tencentcloud.com/document/product/214/30683?from_cn_redirect=1) API with the returned RequestID as an input parameter to check whether this task is successful. * @param {DeleteListenerRequest} req * @param {function(string, DeleteListenerResponse):void} cb * @public */ DeleteListener(req, cb) { let resp = new DeleteListenerResponse(); this.request("DeleteListener", req, resp, cb); } /** * This API is used to bind or unbind a security group to or from multiple public network CLB instances. * @param {SetSecurityGroupForLoadbalancersRequest} req * @param {function(string, SetSecurityGroupForLoadbalancersResponse):void} cb * @public */ SetSecurityGroupForLoadbalancers(req, cb) { let resp = new SetSecurityGroupForLoadbalancersResponse(); this.request("SetSecurityGroupForLoadbalancers", req, resp, cb); } /** * This API is used to register servers to a target group. This is an async API. After it is returned successfully, you can call the `DescribeTaskStatus` API with the returned `RequestID` as an input parameter to check whether this task is successful. * @param {RegisterTargetGroupInstancesRequest} req * @param {function(string, RegisterTargetGroupInstancesResponse):void} cb * @public */ RegisterTargetGroupInstances(req, cb) { let resp = new RegisterTargetGroupInstancesResponse(); this.request("RegisterTargetGroupInstances", req, resp, cb); } /** * This API is used to start or stop a load balancing instance or listener. This API is used to perform asynchronous operations. After returning a successful result, call the [DescribeTaskStatus](https://www.tencentcloud.com/document/product/214/30683?from_cn_redirect=1) API with the returned RequestID as an input parameter to check whether this task is successful. This feature is currently in beta test. To use it, submit a [ticket](https://console.cloud.tencent.com/workorder/category?level1_id=6&level2_id=163&source=0&data_title=%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1%20LB&step=1) for application. * @param {SetLoadBalancerStartStatusRequest} req * @param {function(string, SetLoadBalancerStartStatusResponse):void} cb * @public */ SetLoadBalancerStartStatus(req, cb) { let resp = new SetLoadBalancerStartStatusResponse(); this.request("SetLoadBalancerStartStatus", req, resp, cb); } /** * This API is used to modify the attributes of a CLB instance listener, including the listener name, health check parameters, certificate information, and forwarding policy. This API does not support classic CLB instances. This is an asynchronous API. After it returns the result successfully, you can call the [DescribeTaskStatus](https://intl.cloud.tencent.com/document/product/214/30683?from_cn_redirect=1) API with the returned RequestId as an input parameter to query whether the task is successful. * @param {ModifyListenerRequest} req * @param {function(string, ModifyListenerResponse):void} cb * @public */ ModifyListener(req, cb) { let resp = new ModifyListenerResponse(); this.request("ModifyListener", req, resp, cb); } /** * This API is used to delete personalized configurations and prepare for decommissioning. Please use SetCustomizedConfigForLoadBalancer. * @param {DeleteCustomizedConfigRequest} req * @param {function(string, DeleteCustomizedConfigResponse):void} cb * @public */ DeleteCustomizedConfig(req, cb) { let resp = new DeleteCustomizedConfigResponse(); this.request("DeleteCustomizedConfig", req, resp, cb); } /** * This API is used to query the list of AZs and resources supported for the user in the current region. * @param {DescribeResourcesRequest} req * @param {function(string, DescribeResourcesResponse):void} cb * @public */ DescribeResources(req, cb) { let resp = new DescribeResourcesResponse(); this.request("DescribeResources", req, resp, cb); } /** * This API is used to query CLB instances bound to the CVM or ENI. * @param {DescribeLBListenersRequest} req * @param {function(string, DescribeLBListenersResponse):void} cb * @public */ DescribeLBListeners(req, cb) { let resp = new DescribeLBListenersResponse(); this.request("DescribeLBListeners", req, resp, cb); } /** * This API is used to batch bind CVM instances or ENIs. Up to 500 servers can be bound in a batch. It supports cross-region binding, layer-4 and layer-7 (TCP/UDP/HTTP/HTTPS) protocols, and VPC-based CLBs only. * @param {BatchRegisterTargetsRequest} req * @param {function(string, BatchRegisterTargetsResponse):void} cb * @public */ BatchRegisterTargets(req, cb) { let resp = new BatchRegisterTargetsResponse(); this.request("BatchRegisterTargets", req, resp, cb); } /** * This API is used to bind a cloud function to the forwarding rule of a Cloud Load Balancer. Before that, you need to create a related HTTP or HTTPS listener and forwarding rule. This API is used to perform asynchronous operations. After returning a successful result, call the DescribeTaskStatus API with the returned RequestID as an input parameter to check whether this task is successful. This API is used to describe restrictions. - SCF binding is supported only in Guangzhou, Shenzhen Finance, Shanghai, Shanghai Finance, Beijing, Chengdu, Hong Kong (China), Singapore, Tokyo, and Silicon Valley. - Only the standard account type supports binding SCF. The classic account type is unsupported. We recommend upgrading to the standard account type. For more information, see [Checking Account Type](https://www.tencentcloud.com/document/product/684/15246). - Classic CLB does not support binding SCF. - Basic Network Type does not support binding SCF. - CLB supports binding ALL SCFs in the same region by default, supports cross-VPC binding, but cross-region selection is not supported. - Currently, only IPv4 and IPv6 NAT64 versions of Cloud Load Balancer support binding SCF. IPv6 version is not currently supported. - Only layer-7 (HTTP, HTTPS) listeners support binding SCF. Layer-4 (TCP, UDP, TCP SSL) listeners and layer-7 QUIC listeners are unsupported. - CLB binding SCF only supports binding SCF of the "Event function" type. - A forwarding rule supports binding only one SCF. * @param {RegisterFunctionTargetsRequest} req * @param {function(string, RegisterFunctionTargetsResponse):void} cb * @public */ RegisterFunctionTargets(req, cb) { let resp = new RegisterFunctionTargetsResponse(); this.request("RegisterFunctionTargets", req, resp, cb); } /** * This API is used to pull custom configuration lists to return the user configuration of `AppId`. * @param {DescribeCustomizedConfigListRequest} req * @param {function(string, DescribeCustomizedConfigListResponse):void} cb * @public */ DescribeCustomizedConfigList(req, cb) { let resp = new DescribeCustomizedConfigListResponse(); this.request("DescribeCustomizedConfigList", req, resp, cb); } /** * This API is used to modify the properties of forwarding rules under a layer-7 (HTTP/HTTPS) listener in Cloud Load Balancer, including forwarding path, health check attributes and forwarding policy. This is an asynchronous API. After it returns the result successfully, you can call the [DescribeTaskStatus](https://www.tencentcloud.com/document/product/214/30683?from_cn_redirect=1) API with the returned RequestId as an input parameter to query whether the task is successful. * @param {ModifyRuleRequest} req * @param {function(string, ModifyRuleResponse):void} cb * @public */ ModifyRule(req, cb) { let resp = new ModifyRuleResponse(); this.request("ModifyRule", req, resp, cb); } /** * This API is used to add, delete, and update the CLS topic of a CLB instance. * @param {SetLoadBalancerClsLogRequest} req * @param {function(string, SetLoadBalancerClsLogResponse):void} cb * @public */ SetLoadBalancerClsLog(req, cb) { let resp = new SetLoadBalancerClsLogResponse(); this.request("SetLoadBalancerClsLog", req, resp, cb); } /** * This API is used to modify the client IP blocklist of a CLB instance. One forwarding rule supports blocking up to 2,000,000 IPs. One blocklist can contain up to 2,000,000 entries. (This API is in beta test. To use it, please submit a ticket.) * @param {ModifyBlockIPListRequest} req * @param {function(string, ModifyBlockIPListResponse):void} cb * @public */ ModifyBlockIPList(req, cb) { let resp = new ModifyBlockIPListResponse(); this.request("ModifyBlockIPList", req, resp, cb); } /** * This API is used to renew annual and monthly subscription instances. * @param {RenewLoadBalancersRequest} req * @param {function(string, RenewLoadBalancersResponse):void} cb * @public */ RenewLoadBalancers(req, cb) { let resp = new RenewLoadBalancersResponse(); this.request("RenewLoadBalancers", req, resp, cb); } /** * This API (ModifyTargetPort) is used to modify the port of a real server bound to a listener. This is an async API. After it is returned successfully, you can call the DescribeTaskStatus API with the returned RequestID as an input parameter to check whether this task is successful. * @param {ModifyTargetPortRequest} req * @param {function(string, ModifyTargetPortResponse):void} cb * @public */ ModifyTargetPort(req, cb) { let resp = new ModifyTargetPortResponse(); this.request("ModifyTargetPort", req, resp, cb); } /** * This API is used to unbind a cloud function from the forwarding rule of a Cloud Load Balancer. For a layer-7 (HTTP/HTTPS) listener, the forwarding rule must be specified by LocationId or Domain+Url. This API is used to perform asynchronous operations. After it returns a successful result, call the [DescribeTaskStatus](https://www.tencentcloud.com/document/product/214/30683?from_cn_redirect=1) API with the returned RequestID as an input parameter to check whether this task is successful. This API is used to describe restrictions. - SCF binding is supported only in Guangzhou, Shenzhen Finance, Shanghai, Shanghai Finance, Beijing, Chengdu, Hong Kong (China), Singapore, Tokyo, and Silicon Valley. - Only the standard account type supports binding SCF. The classic account type is unsupported. We recommend upgrading to the standard account type. For more information, see [Account Types](https://www.tencentcloud.com/document/product/684/15246). - Classic CLB does not support binding SCF. - Basic Network Type does not support binding SCF. - CLB supports binding ALL SCFs in the same region by default, supports cross-VPC binding, but cross-region selection is not supported. - Currently, only IPv4 and IPv6 NAT64 versions of Cloud Load Balancer support binding SCF. IPv6 version is not currently supported. - Only layer-7 (HTTP, HTTPS) listeners support binding SCF. Layer-4 (TCP, UDP, TCP SSL) listeners and layer-7 QUIC listeners are unsupported. - CLB binding SCF only supports binding cloud functions of the "Event function" type. * @param {DeregisterFunctionTargetsRequest} req * @param {function(string, DeregisterFunctionTargetsResponse):void} cb * @public */ DeregisterFunctionTargets(req, cb) { let resp = new DeregisterFunctionTargetsResponse(); this.request("DeregisterFunctionTargets", req, resp, cb); } /** * This API is used to adjust the performance capacity specification of usage-based billing mode instances, for example, upgrading from shared type to performance capacity type, or adjusting the specification of performance and capacity instances. limit: -After upgrading from a shared instance to a performance and capacity instance, you cannot revert to a shared instance. -A classic CLB instance does not support upgrading to a performance and capacity instance. * @param {ModifyLoadBalancerSlaRequest} req * @param {function(string, ModifyLoadBalancerSlaResponse):void} cb * @public */ ModifyLoadBalancerSla(req, cb) { let resp = new ModifyLoadBalancerSlaResponse(); this.request("ModifyLoadBalancerSla", req, resp, cb); } /** * This API is used to query the execution status of an async IP blocking (blocklisting) task by the async task ID returned by the `ModifyBlockIPList` API. (This API is in beta test. To use it, please submit a ticket.) * @param {DescribeBlockIPTaskRequest} req * @param {function(string, DescribeBlockIPTaskResponse):void} cb * @public */ DescribeBlockIPTask(req, cb) { let resp = new DescribeBlockIPTaskResponse(); this.request("DescribeBlockIPTask", req, resp, cb); } /** * This API is used to get the list of classic CLB instance IDs through a real server ID. * @param {DescribeClassicalLBByInstanceIdRequest} req * @param {function(string, DescribeClassicalLBByInstanceIdResponse):void} cb * @public */ DescribeClassicalLBByInstanceId(req, cb) { let resp = new DescribeClassicalLBByInstanceIdResponse(); this.request("DescribeClassicalLBByInstanceId", req, resp, cb); } /** * This API is used to query CLB instances with high traffic under the current account, and return the top 10 results. For queries using a sub-account, only the CLB instances authorized to the sub-account will be returned. * @param {DescribeLoadBalancerTrafficRequest} req * @param {function(string, DescribeLoadBalancerTrafficResponse):void} cb * @public */ DescribeLoadBalancerTraffic(req, cb) { let resp = new DescribeLoadBalancerTrafficResponse(); this.request("DescribeLoadBalancerTraffic", req, resp, cb); } /** * Queries information of CVMs and ENIs that use cross-region binding 2.0 * @param {DescribeCrossTargetsRequest} req * @param {function(string, DescribeCrossTargetsResponse):void} cb * @public */ DescribeCrossTargets(req, cb) { let resp = new DescribeCrossTargetsResponse(); this.request("DescribeCrossTargets", req, resp, cb); } /** * This API (DescribeTargetHealth) is used to query the health check result of a real server of a CLB instance. * @param {DescribeTargetHealthRequest} req * @param {function(string, DescribeTargetHealthResponse):void} cb * @public */ DescribeTargetHealth(req, cb) { let resp = new DescribeTargetHealthResponse(); this.request("DescribeTargetHealth", req, resp, cb); } /** * After the original access address and the address to be redirected are configured manually, the system will automatically redirect requests made to the original access address to the target address of the corresponding path. Multiple paths can be configured as a redirection policy under one domain name to achieve automatic redirection between HTTP and HTTPS. A redirection policy should meet the following rules: if A has already been redirected to B, then it cannot be redirected to C (unless the original redirection relationship is deleted and a new one is created), and B cannot be redirected to any other addresses. * @param {ManualRewriteRequest} req * @param {function(string, ManualRewriteResponse):void} cb * @public */ ManualRewrite(req, cb) { let resp = new ManualRewriteResponse(); this.request("ManualRewrite", req, resp, cb); } /** * This API is used to modify the SCF bound to a Cloud Load Balancer forwarding rule. This API is used to describe restrictions. - Only supports binding SCF of the "Event function" type. * @param {ModifyFunctionTargetsRequest} req * @param {function(string, ModifyFunctionTargetsResponse):void} cb * @public */ ModifyFunctionTargets(req, cb) { let resp = new ModifyFunctionTargetsResponse(); this.request("ModifyFunctionTargets", req, resp, cb); } /** * This API is used to delete the SnatIp of the SnatPro load balancing. This API is used to perform asynchronous operations. After returning a succes