nlb-20220430/core/Client.cs (5,956 lines of code) (raw):

// This file is auto-generated, don't edit it. Thanks. using System; using System.Collections; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; using Tea; using Tea.Utils; using AlibabaCloud.SDK.Nlb20220430.Models; namespace AlibabaCloud.SDK.Nlb20220430 { public class Client : AlibabaCloud.OpenApiClient.Client { public Client(AlibabaCloud.OpenApiClient.Models.Config config): base(config) { this._endpointRule = "regional"; CheckConfig(config); this._endpoint = GetEndpoint("nlb", _regionId, _endpointRule, _network, _suffix, _endpointMap, _endpoint); } public string GetEndpoint(string productId, string regionId, string endpointRule, string network, string suffix, Dictionary<string, string> endpointMap, string endpoint) { if (!AlibabaCloud.TeaUtil.Common.Empty(endpoint)) { return endpoint; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(endpointMap) && !AlibabaCloud.TeaUtil.Common.Empty(endpointMap.Get(regionId))) { return endpointMap.Get(regionId); } return AlibabaCloud.EndpointUtil.Common.GetEndpointRules(productId, regionId, endpointRule, network, suffix); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds backend servers to a specified server group.</para> /// </summary> /// /// <param name="request"> /// AddServersToServerGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// AddServersToServerGroupResponse /// </returns> public AddServersToServerGroupResponse AddServersToServerGroupWithOptions(AddServersToServerGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Servers)) { bodyFlat["Servers"] = request.Servers; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AddServersToServerGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<AddServersToServerGroupResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<AddServersToServerGroupResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds backend servers to a specified server group.</para> /// </summary> /// /// <param name="request"> /// AddServersToServerGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// AddServersToServerGroupResponse /// </returns> public async Task<AddServersToServerGroupResponse> AddServersToServerGroupWithOptionsAsync(AddServersToServerGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Servers)) { bodyFlat["Servers"] = request.Servers; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AddServersToServerGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<AddServersToServerGroupResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<AddServersToServerGroupResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds backend servers to a specified server group.</para> /// </summary> /// /// <param name="request"> /// AddServersToServerGroupRequest /// </param> /// /// <returns> /// AddServersToServerGroupResponse /// </returns> public AddServersToServerGroupResponse AddServersToServerGroup(AddServersToServerGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return AddServersToServerGroupWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds backend servers to a specified server group.</para> /// </summary> /// /// <param name="request"> /// AddServersToServerGroupRequest /// </param> /// /// <returns> /// AddServersToServerGroupResponse /// </returns> public async Task<AddServersToServerGroupResponse> AddServersToServerGroupAsync(AddServersToServerGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await AddServersToServerGroupWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates additional certificates with a listener that uses SSL over TCP.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>AssociateAdditionalCertificatesWithListener</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/615175.html">ListListenerCertificates</a> operation to query the status of the task:</para> /// <list type="bullet"> /// <item><description>If the listener is in the <b>Associating</b> state, the additional certificates are being associated.</description></item> /// <item><description>If the listener is in the <b>Associated</b> state, the additional certificates are associated.</description></item> /// </list> /// </description> /// /// <param name="request"> /// AssociateAdditionalCertificatesWithListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// AssociateAdditionalCertificatesWithListenerResponse /// </returns> public AssociateAdditionalCertificatesWithListenerResponse AssociateAdditionalCertificatesWithListenerWithOptions(AssociateAdditionalCertificatesWithListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AdditionalCertificateIds)) { body["AdditionalCertificateIds"] = request.AdditionalCertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AssociateAdditionalCertificatesWithListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<AssociateAdditionalCertificatesWithListenerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<AssociateAdditionalCertificatesWithListenerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates additional certificates with a listener that uses SSL over TCP.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>AssociateAdditionalCertificatesWithListener</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/615175.html">ListListenerCertificates</a> operation to query the status of the task:</para> /// <list type="bullet"> /// <item><description>If the listener is in the <b>Associating</b> state, the additional certificates are being associated.</description></item> /// <item><description>If the listener is in the <b>Associated</b> state, the additional certificates are associated.</description></item> /// </list> /// </description> /// /// <param name="request"> /// AssociateAdditionalCertificatesWithListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// AssociateAdditionalCertificatesWithListenerResponse /// </returns> public async Task<AssociateAdditionalCertificatesWithListenerResponse> AssociateAdditionalCertificatesWithListenerWithOptionsAsync(AssociateAdditionalCertificatesWithListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AdditionalCertificateIds)) { body["AdditionalCertificateIds"] = request.AdditionalCertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AssociateAdditionalCertificatesWithListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<AssociateAdditionalCertificatesWithListenerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<AssociateAdditionalCertificatesWithListenerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates additional certificates with a listener that uses SSL over TCP.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>AssociateAdditionalCertificatesWithListener</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/615175.html">ListListenerCertificates</a> operation to query the status of the task:</para> /// <list type="bullet"> /// <item><description>If the listener is in the <b>Associating</b> state, the additional certificates are being associated.</description></item> /// <item><description>If the listener is in the <b>Associated</b> state, the additional certificates are associated.</description></item> /// </list> /// </description> /// /// <param name="request"> /// AssociateAdditionalCertificatesWithListenerRequest /// </param> /// /// <returns> /// AssociateAdditionalCertificatesWithListenerResponse /// </returns> public AssociateAdditionalCertificatesWithListenerResponse AssociateAdditionalCertificatesWithListener(AssociateAdditionalCertificatesWithListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return AssociateAdditionalCertificatesWithListenerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates additional certificates with a listener that uses SSL over TCP.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>AssociateAdditionalCertificatesWithListener</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/615175.html">ListListenerCertificates</a> operation to query the status of the task:</para> /// <list type="bullet"> /// <item><description>If the listener is in the <b>Associating</b> state, the additional certificates are being associated.</description></item> /// <item><description>If the listener is in the <b>Associated</b> state, the additional certificates are associated.</description></item> /// </list> /// </description> /// /// <param name="request"> /// AssociateAdditionalCertificatesWithListenerRequest /// </param> /// /// <returns> /// AssociateAdditionalCertificatesWithListenerResponse /// </returns> public async Task<AssociateAdditionalCertificatesWithListenerResponse> AssociateAdditionalCertificatesWithListenerAsync(AssociateAdditionalCertificatesWithListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await AssociateAdditionalCertificatesWithListenerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates an Internet Shared Bandwidth instance with a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// AttachCommonBandwidthPackageToLoadBalancerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// AttachCommonBandwidthPackageToLoadBalancerResponse /// </returns> public AttachCommonBandwidthPackageToLoadBalancerResponse AttachCommonBandwidthPackageToLoadBalancerWithOptions(AttachCommonBandwidthPackageToLoadBalancerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BandwidthPackageId)) { body["BandwidthPackageId"] = request.BandwidthPackageId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AttachCommonBandwidthPackageToLoadBalancer", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<AttachCommonBandwidthPackageToLoadBalancerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<AttachCommonBandwidthPackageToLoadBalancerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates an Internet Shared Bandwidth instance with a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// AttachCommonBandwidthPackageToLoadBalancerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// AttachCommonBandwidthPackageToLoadBalancerResponse /// </returns> public async Task<AttachCommonBandwidthPackageToLoadBalancerResponse> AttachCommonBandwidthPackageToLoadBalancerWithOptionsAsync(AttachCommonBandwidthPackageToLoadBalancerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BandwidthPackageId)) { body["BandwidthPackageId"] = request.BandwidthPackageId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "AttachCommonBandwidthPackageToLoadBalancer", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<AttachCommonBandwidthPackageToLoadBalancerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<AttachCommonBandwidthPackageToLoadBalancerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates an Internet Shared Bandwidth instance with a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// AttachCommonBandwidthPackageToLoadBalancerRequest /// </param> /// /// <returns> /// AttachCommonBandwidthPackageToLoadBalancerResponse /// </returns> public AttachCommonBandwidthPackageToLoadBalancerResponse AttachCommonBandwidthPackageToLoadBalancer(AttachCommonBandwidthPackageToLoadBalancerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return AttachCommonBandwidthPackageToLoadBalancerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates an Internet Shared Bandwidth instance with a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// AttachCommonBandwidthPackageToLoadBalancerRequest /// </param> /// /// <returns> /// AttachCommonBandwidthPackageToLoadBalancerResponse /// </returns> public async Task<AttachCommonBandwidthPackageToLoadBalancerResponse> AttachCommonBandwidthPackageToLoadBalancerAsync(AttachCommonBandwidthPackageToLoadBalancerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await AttachCommonBandwidthPackageToLoadBalancerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds the elastic IP address (EIP) and virtual IP address (VIP) of a zone to the DNS record.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>Before you call this operation, the zone of the Network Load Balancer (NLB) instance is removed from the DNS record by using the console or calling the <a href="https://help.aliyun.com/document_detail/2411999.html">StartShiftLoadBalancerZones</a> API operation.</para> /// </description> /// /// <param name="request"> /// CancelShiftLoadBalancerZonesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CancelShiftLoadBalancerZonesResponse /// </returns> public CancelShiftLoadBalancerZonesResponse CancelShiftLoadBalancerZonesWithOptions(CancelShiftLoadBalancerZonesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { body["ZoneMappings"] = request.ZoneMappings; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CancelShiftLoadBalancerZones", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CancelShiftLoadBalancerZonesResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<CancelShiftLoadBalancerZonesResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds the elastic IP address (EIP) and virtual IP address (VIP) of a zone to the DNS record.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>Before you call this operation, the zone of the Network Load Balancer (NLB) instance is removed from the DNS record by using the console or calling the <a href="https://help.aliyun.com/document_detail/2411999.html">StartShiftLoadBalancerZones</a> API operation.</para> /// </description> /// /// <param name="request"> /// CancelShiftLoadBalancerZonesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CancelShiftLoadBalancerZonesResponse /// </returns> public async Task<CancelShiftLoadBalancerZonesResponse> CancelShiftLoadBalancerZonesWithOptionsAsync(CancelShiftLoadBalancerZonesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { body["ZoneMappings"] = request.ZoneMappings; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CancelShiftLoadBalancerZones", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CancelShiftLoadBalancerZonesResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<CancelShiftLoadBalancerZonesResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds the elastic IP address (EIP) and virtual IP address (VIP) of a zone to the DNS record.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>Before you call this operation, the zone of the Network Load Balancer (NLB) instance is removed from the DNS record by using the console or calling the <a href="https://help.aliyun.com/document_detail/2411999.html">StartShiftLoadBalancerZones</a> API operation.</para> /// </description> /// /// <param name="request"> /// CancelShiftLoadBalancerZonesRequest /// </param> /// /// <returns> /// CancelShiftLoadBalancerZonesResponse /// </returns> public CancelShiftLoadBalancerZonesResponse CancelShiftLoadBalancerZones(CancelShiftLoadBalancerZonesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return CancelShiftLoadBalancerZonesWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds the elastic IP address (EIP) and virtual IP address (VIP) of a zone to the DNS record.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>Before you call this operation, the zone of the Network Load Balancer (NLB) instance is removed from the DNS record by using the console or calling the <a href="https://help.aliyun.com/document_detail/2411999.html">StartShiftLoadBalancerZones</a> API operation.</para> /// </description> /// /// <param name="request"> /// CancelShiftLoadBalancerZonesRequest /// </param> /// /// <returns> /// CancelShiftLoadBalancerZonesResponse /// </returns> public async Task<CancelShiftLoadBalancerZonesResponse> CancelShiftLoadBalancerZonesAsync(CancelShiftLoadBalancerZonesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await CancelShiftLoadBalancerZonesWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a TCP or UDP listener, or a listener that uses SSL over TCP for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="tmpReq"> /// CreateListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CreateListenerResponse /// </returns> public CreateListenerResponse CreateListenerWithOptions(CreateListenerRequest tmpReq, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(tmpReq); CreateListenerShrinkRequest request = new CreateListenerShrinkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(tmpReq, request); if (!AlibabaCloud.TeaUtil.Common.IsUnset(tmpReq.ProxyProtocolV2Config)) { request.ProxyProtocolV2ConfigShrink = AlibabaCloud.OpenApiUtil.Client.ArrayToStringWithSpecifiedStyle(tmpReq.ProxyProtocolV2Config, "ProxyProtocolV2Config", "json"); } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AlpnEnabled)) { body["AlpnEnabled"] = request.AlpnEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AlpnPolicy)) { body["AlpnPolicy"] = request.AlpnPolicy; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CaCertificateIds)) { body["CaCertificateIds"] = request.CaCertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CaEnabled)) { body["CaEnabled"] = request.CaEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CertificateIds)) { body["CertificateIds"] = request.CertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Cps)) { body["Cps"] = request.Cps; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.EndPort)) { body["EndPort"] = request.EndPort; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.IdleTimeout)) { body["IdleTimeout"] = request.IdleTimeout; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerDescription)) { body["ListenerDescription"] = request.ListenerDescription; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerPort)) { body["ListenerPort"] = request.ListenerPort; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerProtocol)) { body["ListenerProtocol"] = request.ListenerProtocol; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mss)) { body["Mss"] = request.Mss; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ProxyProtocolEnabled)) { body["ProxyProtocolEnabled"] = request.ProxyProtocolEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ProxyProtocolV2ConfigShrink)) { body["ProxyProtocolV2Config"] = request.ProxyProtocolV2ConfigShrink; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecSensorEnabled)) { body["SecSensorEnabled"] = request.SecSensorEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyId)) { body["SecurityPolicyId"] = request.SecurityPolicyId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StartPort)) { body["StartPort"] = request.StartPort; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { body["Tag"] = request.Tag; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CreateListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CreateListenerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<CreateListenerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a TCP or UDP listener, or a listener that uses SSL over TCP for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="tmpReq"> /// CreateListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CreateListenerResponse /// </returns> public async Task<CreateListenerResponse> CreateListenerWithOptionsAsync(CreateListenerRequest tmpReq, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(tmpReq); CreateListenerShrinkRequest request = new CreateListenerShrinkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(tmpReq, request); if (!AlibabaCloud.TeaUtil.Common.IsUnset(tmpReq.ProxyProtocolV2Config)) { request.ProxyProtocolV2ConfigShrink = AlibabaCloud.OpenApiUtil.Client.ArrayToStringWithSpecifiedStyle(tmpReq.ProxyProtocolV2Config, "ProxyProtocolV2Config", "json"); } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AlpnEnabled)) { body["AlpnEnabled"] = request.AlpnEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AlpnPolicy)) { body["AlpnPolicy"] = request.AlpnPolicy; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CaCertificateIds)) { body["CaCertificateIds"] = request.CaCertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CaEnabled)) { body["CaEnabled"] = request.CaEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CertificateIds)) { body["CertificateIds"] = request.CertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Cps)) { body["Cps"] = request.Cps; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.EndPort)) { body["EndPort"] = request.EndPort; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.IdleTimeout)) { body["IdleTimeout"] = request.IdleTimeout; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerDescription)) { body["ListenerDescription"] = request.ListenerDescription; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerPort)) { body["ListenerPort"] = request.ListenerPort; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerProtocol)) { body["ListenerProtocol"] = request.ListenerProtocol; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mss)) { body["Mss"] = request.Mss; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ProxyProtocolEnabled)) { body["ProxyProtocolEnabled"] = request.ProxyProtocolEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ProxyProtocolV2ConfigShrink)) { body["ProxyProtocolV2Config"] = request.ProxyProtocolV2ConfigShrink; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecSensorEnabled)) { body["SecSensorEnabled"] = request.SecSensorEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyId)) { body["SecurityPolicyId"] = request.SecurityPolicyId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.StartPort)) { body["StartPort"] = request.StartPort; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { body["Tag"] = request.Tag; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CreateListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CreateListenerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<CreateListenerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a TCP or UDP listener, or a listener that uses SSL over TCP for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// CreateListenerRequest /// </param> /// /// <returns> /// CreateListenerResponse /// </returns> public CreateListenerResponse CreateListener(CreateListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return CreateListenerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a TCP or UDP listener, or a listener that uses SSL over TCP for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// CreateListenerRequest /// </param> /// /// <returns> /// CreateListenerResponse /// </returns> public async Task<CreateListenerResponse> CreateListenerAsync(CreateListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await CreateListenerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a Network Load Balancer (NLB) instance in a specified region.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> When you create an NLB instance, the service-linked role AliyunServiceRoleForNlb is automatically created and assigned to you.</para> /// <list type="bullet"> /// <item><description><b>CreateLoadBalancer</b> is an asynchronous operation. After you send a request, the system returns an instance ID and runs the task in the background. You can call <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> to query the status of an NLB instance.<list type="bullet"> /// <item><description>If an NLB instance is in the <b>Provisioning</b> state, the NLB instance is being created.</description></item> /// <item><description>If an NLB instance is in the <b>Active</b> state, the NLB instance is created.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// CreateLoadBalancerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CreateLoadBalancerResponse /// </returns> public CreateLoadBalancerResponse CreateLoadBalancerWithOptions(CreateLoadBalancerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressIpVersion)) { body["AddressIpVersion"] = request.AddressIpVersion; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressType)) { body["AddressType"] = request.AddressType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BandwidthPackageId)) { body["BandwidthPackageId"] = request.BandwidthPackageId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DeletionProtectionConfig)) { bodyFlat["DeletionProtectionConfig"] = request.DeletionProtectionConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerBillingConfig)) { bodyFlat["LoadBalancerBillingConfig"] = request.LoadBalancerBillingConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerName)) { body["LoadBalancerName"] = request.LoadBalancerName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerType)) { body["LoadBalancerType"] = request.LoadBalancerType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ModificationProtectionConfig)) { bodyFlat["ModificationProtectionConfig"] = request.ModificationProtectionConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { body["Tag"] = request.Tag; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VpcId)) { body["VpcId"] = request.VpcId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { bodyFlat["ZoneMappings"] = request.ZoneMappings; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CreateLoadBalancer", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CreateLoadBalancerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<CreateLoadBalancerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a Network Load Balancer (NLB) instance in a specified region.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> When you create an NLB instance, the service-linked role AliyunServiceRoleForNlb is automatically created and assigned to you.</para> /// <list type="bullet"> /// <item><description><b>CreateLoadBalancer</b> is an asynchronous operation. After you send a request, the system returns an instance ID and runs the task in the background. You can call <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> to query the status of an NLB instance.<list type="bullet"> /// <item><description>If an NLB instance is in the <b>Provisioning</b> state, the NLB instance is being created.</description></item> /// <item><description>If an NLB instance is in the <b>Active</b> state, the NLB instance is created.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// CreateLoadBalancerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CreateLoadBalancerResponse /// </returns> public async Task<CreateLoadBalancerResponse> CreateLoadBalancerWithOptionsAsync(CreateLoadBalancerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressIpVersion)) { body["AddressIpVersion"] = request.AddressIpVersion; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressType)) { body["AddressType"] = request.AddressType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BandwidthPackageId)) { body["BandwidthPackageId"] = request.BandwidthPackageId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DeletionProtectionConfig)) { bodyFlat["DeletionProtectionConfig"] = request.DeletionProtectionConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerBillingConfig)) { bodyFlat["LoadBalancerBillingConfig"] = request.LoadBalancerBillingConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerName)) { body["LoadBalancerName"] = request.LoadBalancerName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerType)) { body["LoadBalancerType"] = request.LoadBalancerType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ModificationProtectionConfig)) { bodyFlat["ModificationProtectionConfig"] = request.ModificationProtectionConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { body["Tag"] = request.Tag; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VpcId)) { body["VpcId"] = request.VpcId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { bodyFlat["ZoneMappings"] = request.ZoneMappings; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CreateLoadBalancer", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CreateLoadBalancerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<CreateLoadBalancerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a Network Load Balancer (NLB) instance in a specified region.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> When you create an NLB instance, the service-linked role AliyunServiceRoleForNlb is automatically created and assigned to you.</para> /// <list type="bullet"> /// <item><description><b>CreateLoadBalancer</b> is an asynchronous operation. After you send a request, the system returns an instance ID and runs the task in the background. You can call <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> to query the status of an NLB instance.<list type="bullet"> /// <item><description>If an NLB instance is in the <b>Provisioning</b> state, the NLB instance is being created.</description></item> /// <item><description>If an NLB instance is in the <b>Active</b> state, the NLB instance is created.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// CreateLoadBalancerRequest /// </param> /// /// <returns> /// CreateLoadBalancerResponse /// </returns> public CreateLoadBalancerResponse CreateLoadBalancer(CreateLoadBalancerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return CreateLoadBalancerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a Network Load Balancer (NLB) instance in a specified region.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> When you create an NLB instance, the service-linked role AliyunServiceRoleForNlb is automatically created and assigned to you.</para> /// <list type="bullet"> /// <item><description><b>CreateLoadBalancer</b> is an asynchronous operation. After you send a request, the system returns an instance ID and runs the task in the background. You can call <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> to query the status of an NLB instance.<list type="bullet"> /// <item><description>If an NLB instance is in the <b>Provisioning</b> state, the NLB instance is being created.</description></item> /// <item><description>If an NLB instance is in the <b>Active</b> state, the NLB instance is created.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// CreateLoadBalancerRequest /// </param> /// /// <returns> /// CreateLoadBalancerResponse /// </returns> public async Task<CreateLoadBalancerResponse> CreateLoadBalancerAsync(CreateLoadBalancerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await CreateLoadBalancerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a custom security policy for a TCP/SSL listener.</para> /// </summary> /// /// <param name="request"> /// CreateSecurityPolicyRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CreateSecurityPolicyResponse /// </returns> public CreateSecurityPolicyResponse CreateSecurityPolicyWithOptions(CreateSecurityPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Ciphers)) { body["Ciphers"] = request.Ciphers; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyName)) { body["SecurityPolicyName"] = request.SecurityPolicyName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { body["Tag"] = request.Tag; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.TlsVersions)) { body["TlsVersions"] = request.TlsVersions; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CreateSecurityPolicy", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CreateSecurityPolicyResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<CreateSecurityPolicyResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a custom security policy for a TCP/SSL listener.</para> /// </summary> /// /// <param name="request"> /// CreateSecurityPolicyRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CreateSecurityPolicyResponse /// </returns> public async Task<CreateSecurityPolicyResponse> CreateSecurityPolicyWithOptionsAsync(CreateSecurityPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Ciphers)) { body["Ciphers"] = request.Ciphers; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyName)) { body["SecurityPolicyName"] = request.SecurityPolicyName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { body["Tag"] = request.Tag; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.TlsVersions)) { body["TlsVersions"] = request.TlsVersions; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CreateSecurityPolicy", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CreateSecurityPolicyResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<CreateSecurityPolicyResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a custom security policy for a TCP/SSL listener.</para> /// </summary> /// /// <param name="request"> /// CreateSecurityPolicyRequest /// </param> /// /// <returns> /// CreateSecurityPolicyResponse /// </returns> public CreateSecurityPolicyResponse CreateSecurityPolicy(CreateSecurityPolicyRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return CreateSecurityPolicyWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a custom security policy for a TCP/SSL listener.</para> /// </summary> /// /// <param name="request"> /// CreateSecurityPolicyRequest /// </param> /// /// <returns> /// CreateSecurityPolicyResponse /// </returns> public async Task<CreateSecurityPolicyResponse> CreateSecurityPolicyAsync(CreateSecurityPolicyRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await CreateSecurityPolicyWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a server group in a region.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>CreateServerGroup</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the creation status of the task.</para> /// <list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> status, the server group is created.</description></item> /// <item><description>If the task is in the <b>Processing</b> status, the server group is being created.</description></item> /// </list> /// </description> /// /// <param name="request"> /// CreateServerGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CreateServerGroupResponse /// </returns> public CreateServerGroupResponse CreateServerGroupWithOptions(CreateServerGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressIPVersion)) { body["AddressIPVersion"] = request.AddressIPVersion; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AnyPortEnabled)) { body["AnyPortEnabled"] = request.AnyPortEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ConnectionDrainEnabled)) { body["ConnectionDrainEnabled"] = request.ConnectionDrainEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ConnectionDrainTimeout)) { body["ConnectionDrainTimeout"] = request.ConnectionDrainTimeout; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.HealthCheckConfig)) { bodyFlat["HealthCheckConfig"] = request.HealthCheckConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PreserveClientIpEnabled)) { body["PreserveClientIpEnabled"] = request.PreserveClientIpEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Protocol)) { body["Protocol"] = request.Protocol; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Scheduler)) { body["Scheduler"] = request.Scheduler; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupName)) { body["ServerGroupName"] = request.ServerGroupName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupType)) { body["ServerGroupType"] = request.ServerGroupType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { body["Tag"] = request.Tag; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VpcId)) { body["VpcId"] = request.VpcId; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CreateServerGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CreateServerGroupResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<CreateServerGroupResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a server group in a region.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>CreateServerGroup</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the creation status of the task.</para> /// <list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> status, the server group is created.</description></item> /// <item><description>If the task is in the <b>Processing</b> status, the server group is being created.</description></item> /// </list> /// </description> /// /// <param name="request"> /// CreateServerGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// CreateServerGroupResponse /// </returns> public async Task<CreateServerGroupResponse> CreateServerGroupWithOptionsAsync(CreateServerGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressIPVersion)) { body["AddressIPVersion"] = request.AddressIPVersion; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AnyPortEnabled)) { body["AnyPortEnabled"] = request.AnyPortEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ConnectionDrainEnabled)) { body["ConnectionDrainEnabled"] = request.ConnectionDrainEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ConnectionDrainTimeout)) { body["ConnectionDrainTimeout"] = request.ConnectionDrainTimeout; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.HealthCheckConfig)) { bodyFlat["HealthCheckConfig"] = request.HealthCheckConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PreserveClientIpEnabled)) { body["PreserveClientIpEnabled"] = request.PreserveClientIpEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Protocol)) { body["Protocol"] = request.Protocol; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Scheduler)) { body["Scheduler"] = request.Scheduler; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupName)) { body["ServerGroupName"] = request.ServerGroupName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupType)) { body["ServerGroupType"] = request.ServerGroupType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { body["Tag"] = request.Tag; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VpcId)) { body["VpcId"] = request.VpcId; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "CreateServerGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<CreateServerGroupResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<CreateServerGroupResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a server group in a region.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>CreateServerGroup</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the creation status of the task.</para> /// <list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> status, the server group is created.</description></item> /// <item><description>If the task is in the <b>Processing</b> status, the server group is being created.</description></item> /// </list> /// </description> /// /// <param name="request"> /// CreateServerGroupRequest /// </param> /// /// <returns> /// CreateServerGroupResponse /// </returns> public CreateServerGroupResponse CreateServerGroup(CreateServerGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return CreateServerGroupWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Creates a server group in a region.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>CreateServerGroup</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the creation status of the task.</para> /// <list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> status, the server group is created.</description></item> /// <item><description>If the task is in the <b>Processing</b> status, the server group is being created.</description></item> /// </list> /// </description> /// /// <param name="request"> /// CreateServerGroupRequest /// </param> /// /// <returns> /// CreateServerGroupResponse /// </returns> public async Task<CreateServerGroupResponse> CreateServerGroupAsync(CreateServerGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await CreateServerGroupWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// DeleteListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DeleteListenerResponse /// </returns> public DeleteListenerResponse DeleteListenerWithOptions(DeleteListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DeleteListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DeleteListenerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DeleteListenerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// DeleteListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DeleteListenerResponse /// </returns> public async Task<DeleteListenerResponse> DeleteListenerWithOptionsAsync(DeleteListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DeleteListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DeleteListenerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DeleteListenerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// DeleteListenerRequest /// </param> /// /// <returns> /// DeleteListenerResponse /// </returns> public DeleteListenerResponse DeleteListener(DeleteListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DeleteListenerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// DeleteListenerRequest /// </param> /// /// <returns> /// DeleteListenerResponse /// </returns> public async Task<DeleteListenerResponse> DeleteListenerAsync(DeleteListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DeleteListenerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// DeleteLoadBalancerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DeleteLoadBalancerResponse /// </returns> public DeleteLoadBalancerResponse DeleteLoadBalancerWithOptions(DeleteLoadBalancerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DeleteLoadBalancer", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DeleteLoadBalancerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DeleteLoadBalancerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// DeleteLoadBalancerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DeleteLoadBalancerResponse /// </returns> public async Task<DeleteLoadBalancerResponse> DeleteLoadBalancerWithOptionsAsync(DeleteLoadBalancerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DeleteLoadBalancer", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DeleteLoadBalancerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DeleteLoadBalancerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// DeleteLoadBalancerRequest /// </param> /// /// <returns> /// DeleteLoadBalancerResponse /// </returns> public DeleteLoadBalancerResponse DeleteLoadBalancer(DeleteLoadBalancerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DeleteLoadBalancerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// DeleteLoadBalancerRequest /// </param> /// /// <returns> /// DeleteLoadBalancerResponse /// </returns> public async Task<DeleteLoadBalancerResponse> DeleteLoadBalancerAsync(DeleteLoadBalancerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DeleteLoadBalancerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a custom TLS security policy from a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// DeleteSecurityPolicyRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DeleteSecurityPolicyResponse /// </returns> public DeleteSecurityPolicyResponse DeleteSecurityPolicyWithOptions(DeleteSecurityPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyId)) { body["SecurityPolicyId"] = request.SecurityPolicyId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DeleteSecurityPolicy", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DeleteSecurityPolicyResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DeleteSecurityPolicyResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a custom TLS security policy from a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// DeleteSecurityPolicyRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DeleteSecurityPolicyResponse /// </returns> public async Task<DeleteSecurityPolicyResponse> DeleteSecurityPolicyWithOptionsAsync(DeleteSecurityPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyId)) { body["SecurityPolicyId"] = request.SecurityPolicyId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DeleteSecurityPolicy", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DeleteSecurityPolicyResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DeleteSecurityPolicyResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a custom TLS security policy from a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// DeleteSecurityPolicyRequest /// </param> /// /// <returns> /// DeleteSecurityPolicyResponse /// </returns> public DeleteSecurityPolicyResponse DeleteSecurityPolicy(DeleteSecurityPolicyRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DeleteSecurityPolicyWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a custom TLS security policy from a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// DeleteSecurityPolicyRequest /// </param> /// /// <returns> /// DeleteSecurityPolicyResponse /// </returns> public async Task<DeleteSecurityPolicyResponse> DeleteSecurityPolicyAsync(DeleteSecurityPolicyRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DeleteSecurityPolicyWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) server group.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>You can delete server groups that are not associated with listeners.</para> /// </description> /// /// <param name="request"> /// DeleteServerGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DeleteServerGroupResponse /// </returns> public DeleteServerGroupResponse DeleteServerGroupWithOptions(DeleteServerGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DeleteServerGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DeleteServerGroupResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DeleteServerGroupResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) server group.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>You can delete server groups that are not associated with listeners.</para> /// </description> /// /// <param name="request"> /// DeleteServerGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DeleteServerGroupResponse /// </returns> public async Task<DeleteServerGroupResponse> DeleteServerGroupWithOptionsAsync(DeleteServerGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DeleteServerGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DeleteServerGroupResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DeleteServerGroupResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) server group.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>You can delete server groups that are not associated with listeners.</para> /// </description> /// /// <param name="request"> /// DeleteServerGroupRequest /// </param> /// /// <returns> /// DeleteServerGroupResponse /// </returns> public DeleteServerGroupResponse DeleteServerGroup(DeleteServerGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DeleteServerGroupWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes a Network Load Balancer (NLB) server group.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>You can delete server groups that are not associated with listeners.</para> /// </description> /// /// <param name="request"> /// DeleteServerGroupRequest /// </param> /// /// <returns> /// DeleteServerGroupResponse /// </returns> public async Task<DeleteServerGroupResponse> DeleteServerGroupAsync(DeleteServerGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DeleteServerGroupWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the storage configurations of fine-grained monitoring.</para> /// </summary> /// /// <param name="request"> /// DescribeHdMonitorRegionConfigRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DescribeHdMonitorRegionConfigResponse /// </returns> public DescribeHdMonitorRegionConfigResponse DescribeHdMonitorRegionConfigWithOptions(DescribeHdMonitorRegionConfigRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DescribeHdMonitorRegionConfig", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DescribeHdMonitorRegionConfigResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DescribeHdMonitorRegionConfigResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the storage configurations of fine-grained monitoring.</para> /// </summary> /// /// <param name="request"> /// DescribeHdMonitorRegionConfigRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DescribeHdMonitorRegionConfigResponse /// </returns> public async Task<DescribeHdMonitorRegionConfigResponse> DescribeHdMonitorRegionConfigWithOptionsAsync(DescribeHdMonitorRegionConfigRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DescribeHdMonitorRegionConfig", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DescribeHdMonitorRegionConfigResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DescribeHdMonitorRegionConfigResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the storage configurations of fine-grained monitoring.</para> /// </summary> /// /// <param name="request"> /// DescribeHdMonitorRegionConfigRequest /// </param> /// /// <returns> /// DescribeHdMonitorRegionConfigResponse /// </returns> public DescribeHdMonitorRegionConfigResponse DescribeHdMonitorRegionConfig(DescribeHdMonitorRegionConfigRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DescribeHdMonitorRegionConfigWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the storage configurations of fine-grained monitoring.</para> /// </summary> /// /// <param name="request"> /// DescribeHdMonitorRegionConfigRequest /// </param> /// /// <returns> /// DescribeHdMonitorRegionConfigResponse /// </returns> public async Task<DescribeHdMonitorRegionConfigResponse> DescribeHdMonitorRegionConfigAsync(DescribeHdMonitorRegionConfigRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DescribeHdMonitorRegionConfigWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries regions that support Network Load Balancer (NLB) instances.</para> /// </summary> /// /// <param name="request"> /// DescribeRegionsRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DescribeRegionsResponse /// </returns> public DescribeRegionsResponse DescribeRegionsWithOptions(DescribeRegionsRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AcceptLanguage)) { query["AcceptLanguage"] = request.AcceptLanguage; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServiceCode)) { query["ServiceCode"] = request.ServiceCode; } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DescribeRegions", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DescribeRegionsResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DescribeRegionsResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries regions that support Network Load Balancer (NLB) instances.</para> /// </summary> /// /// <param name="request"> /// DescribeRegionsRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DescribeRegionsResponse /// </returns> public async Task<DescribeRegionsResponse> DescribeRegionsWithOptionsAsync(DescribeRegionsRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AcceptLanguage)) { query["AcceptLanguage"] = request.AcceptLanguage; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServiceCode)) { query["ServiceCode"] = request.ServiceCode; } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DescribeRegions", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DescribeRegionsResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DescribeRegionsResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries regions that support Network Load Balancer (NLB) instances.</para> /// </summary> /// /// <param name="request"> /// DescribeRegionsRequest /// </param> /// /// <returns> /// DescribeRegionsResponse /// </returns> public DescribeRegionsResponse DescribeRegions(DescribeRegionsRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DescribeRegionsWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries regions that support Network Load Balancer (NLB) instances.</para> /// </summary> /// /// <param name="request"> /// DescribeRegionsRequest /// </param> /// /// <returns> /// DescribeRegionsResponse /// </returns> public async Task<DescribeRegionsResponse> DescribeRegionsAsync(DescribeRegionsRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DescribeRegionsWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the zones of a region in which a Network Load Balancer (NLB) instance is deployed.</para> /// </summary> /// /// <param name="request"> /// DescribeZonesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DescribeZonesResponse /// </returns> public DescribeZonesResponse DescribeZonesWithOptions(DescribeZonesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AcceptLanguage)) { query["AcceptLanguage"] = request.AcceptLanguage; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { query["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServiceCode)) { query["ServiceCode"] = request.ServiceCode; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DescribeZones", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DescribeZonesResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DescribeZonesResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the zones of a region in which a Network Load Balancer (NLB) instance is deployed.</para> /// </summary> /// /// <param name="request"> /// DescribeZonesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DescribeZonesResponse /// </returns> public async Task<DescribeZonesResponse> DescribeZonesWithOptionsAsync(DescribeZonesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AcceptLanguage)) { query["AcceptLanguage"] = request.AcceptLanguage; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { query["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServiceCode)) { query["ServiceCode"] = request.ServiceCode; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DescribeZones", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DescribeZonesResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DescribeZonesResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the zones of a region in which a Network Load Balancer (NLB) instance is deployed.</para> /// </summary> /// /// <param name="request"> /// DescribeZonesRequest /// </param> /// /// <returns> /// DescribeZonesResponse /// </returns> public DescribeZonesResponse DescribeZones(DescribeZonesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DescribeZonesWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the zones of a region in which a Network Load Balancer (NLB) instance is deployed.</para> /// </summary> /// /// <param name="request"> /// DescribeZonesRequest /// </param> /// /// <returns> /// DescribeZonesResponse /// </returns> public async Task<DescribeZonesResponse> DescribeZonesAsync(DescribeZonesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DescribeZonesWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates a Network Load Balancer (NLB) instance from an Internet Shared Bandwidth instance.</para> /// </summary> /// /// <param name="request"> /// DetachCommonBandwidthPackageFromLoadBalancerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DetachCommonBandwidthPackageFromLoadBalancerResponse /// </returns> public DetachCommonBandwidthPackageFromLoadBalancerResponse DetachCommonBandwidthPackageFromLoadBalancerWithOptions(DetachCommonBandwidthPackageFromLoadBalancerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BandwidthPackageId)) { body["BandwidthPackageId"] = request.BandwidthPackageId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DetachCommonBandwidthPackageFromLoadBalancer", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DetachCommonBandwidthPackageFromLoadBalancerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DetachCommonBandwidthPackageFromLoadBalancerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates a Network Load Balancer (NLB) instance from an Internet Shared Bandwidth instance.</para> /// </summary> /// /// <param name="request"> /// DetachCommonBandwidthPackageFromLoadBalancerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DetachCommonBandwidthPackageFromLoadBalancerResponse /// </returns> public async Task<DetachCommonBandwidthPackageFromLoadBalancerResponse> DetachCommonBandwidthPackageFromLoadBalancerWithOptionsAsync(DetachCommonBandwidthPackageFromLoadBalancerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.BandwidthPackageId)) { body["BandwidthPackageId"] = request.BandwidthPackageId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DetachCommonBandwidthPackageFromLoadBalancer", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DetachCommonBandwidthPackageFromLoadBalancerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DetachCommonBandwidthPackageFromLoadBalancerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates a Network Load Balancer (NLB) instance from an Internet Shared Bandwidth instance.</para> /// </summary> /// /// <param name="request"> /// DetachCommonBandwidthPackageFromLoadBalancerRequest /// </param> /// /// <returns> /// DetachCommonBandwidthPackageFromLoadBalancerResponse /// </returns> public DetachCommonBandwidthPackageFromLoadBalancerResponse DetachCommonBandwidthPackageFromLoadBalancer(DetachCommonBandwidthPackageFromLoadBalancerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DetachCommonBandwidthPackageFromLoadBalancerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates a Network Load Balancer (NLB) instance from an Internet Shared Bandwidth instance.</para> /// </summary> /// /// <param name="request"> /// DetachCommonBandwidthPackageFromLoadBalancerRequest /// </param> /// /// <returns> /// DetachCommonBandwidthPackageFromLoadBalancerResponse /// </returns> public async Task<DetachCommonBandwidthPackageFromLoadBalancerResponse> DetachCommonBandwidthPackageFromLoadBalancerAsync(DetachCommonBandwidthPackageFromLoadBalancerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DetachCommonBandwidthPackageFromLoadBalancerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the public IPv6 address of a dual-stack Network Load Balancer (NLB) instance to a private IPv6 address.</para> /// </summary> /// /// <param name="request"> /// DisableLoadBalancerIpv6InternetRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DisableLoadBalancerIpv6InternetResponse /// </returns> public DisableLoadBalancerIpv6InternetResponse DisableLoadBalancerIpv6InternetWithOptions(DisableLoadBalancerIpv6InternetRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DisableLoadBalancerIpv6Internet", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DisableLoadBalancerIpv6InternetResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DisableLoadBalancerIpv6InternetResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the public IPv6 address of a dual-stack Network Load Balancer (NLB) instance to a private IPv6 address.</para> /// </summary> /// /// <param name="request"> /// DisableLoadBalancerIpv6InternetRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DisableLoadBalancerIpv6InternetResponse /// </returns> public async Task<DisableLoadBalancerIpv6InternetResponse> DisableLoadBalancerIpv6InternetWithOptionsAsync(DisableLoadBalancerIpv6InternetRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DisableLoadBalancerIpv6Internet", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DisableLoadBalancerIpv6InternetResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DisableLoadBalancerIpv6InternetResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the public IPv6 address of a dual-stack Network Load Balancer (NLB) instance to a private IPv6 address.</para> /// </summary> /// /// <param name="request"> /// DisableLoadBalancerIpv6InternetRequest /// </param> /// /// <returns> /// DisableLoadBalancerIpv6InternetResponse /// </returns> public DisableLoadBalancerIpv6InternetResponse DisableLoadBalancerIpv6Internet(DisableLoadBalancerIpv6InternetRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DisableLoadBalancerIpv6InternetWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the public IPv6 address of a dual-stack Network Load Balancer (NLB) instance to a private IPv6 address.</para> /// </summary> /// /// <param name="request"> /// DisableLoadBalancerIpv6InternetRequest /// </param> /// /// <returns> /// DisableLoadBalancerIpv6InternetResponse /// </returns> public async Task<DisableLoadBalancerIpv6InternetResponse> DisableLoadBalancerIpv6InternetAsync(DisableLoadBalancerIpv6InternetRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DisableLoadBalancerIpv6InternetWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates additional certificates from a listener that uses SSL over TCP.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>DisassociateAdditionalCertificatesWithListener</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/615175.html">ListListenerCertificates</a> operation to query the status of the task:</para> /// <list type="bullet"> /// <item><description>If an additional certificate is in the <b>Dissociating</b> state, the additional certificate is being disassociated.</description></item> /// <item><description>If an additional certificate is in the <b>Dissociated</b> state, the additional certificate is disassociated.</description></item> /// </list> /// </description> /// /// <param name="request"> /// DisassociateAdditionalCertificatesWithListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DisassociateAdditionalCertificatesWithListenerResponse /// </returns> public DisassociateAdditionalCertificatesWithListenerResponse DisassociateAdditionalCertificatesWithListenerWithOptions(DisassociateAdditionalCertificatesWithListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AdditionalCertificateIds)) { body["AdditionalCertificateIds"] = request.AdditionalCertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DisassociateAdditionalCertificatesWithListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DisassociateAdditionalCertificatesWithListenerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<DisassociateAdditionalCertificatesWithListenerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates additional certificates from a listener that uses SSL over TCP.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>DisassociateAdditionalCertificatesWithListener</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/615175.html">ListListenerCertificates</a> operation to query the status of the task:</para> /// <list type="bullet"> /// <item><description>If an additional certificate is in the <b>Dissociating</b> state, the additional certificate is being disassociated.</description></item> /// <item><description>If an additional certificate is in the <b>Dissociated</b> state, the additional certificate is disassociated.</description></item> /// </list> /// </description> /// /// <param name="request"> /// DisassociateAdditionalCertificatesWithListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// DisassociateAdditionalCertificatesWithListenerResponse /// </returns> public async Task<DisassociateAdditionalCertificatesWithListenerResponse> DisassociateAdditionalCertificatesWithListenerWithOptionsAsync(DisassociateAdditionalCertificatesWithListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AdditionalCertificateIds)) { body["AdditionalCertificateIds"] = request.AdditionalCertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "DisassociateAdditionalCertificatesWithListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<DisassociateAdditionalCertificatesWithListenerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<DisassociateAdditionalCertificatesWithListenerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates additional certificates from a listener that uses SSL over TCP.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>DisassociateAdditionalCertificatesWithListener</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/615175.html">ListListenerCertificates</a> operation to query the status of the task:</para> /// <list type="bullet"> /// <item><description>If an additional certificate is in the <b>Dissociating</b> state, the additional certificate is being disassociated.</description></item> /// <item><description>If an additional certificate is in the <b>Dissociated</b> state, the additional certificate is disassociated.</description></item> /// </list> /// </description> /// /// <param name="request"> /// DisassociateAdditionalCertificatesWithListenerRequest /// </param> /// /// <returns> /// DisassociateAdditionalCertificatesWithListenerResponse /// </returns> public DisassociateAdditionalCertificatesWithListenerResponse DisassociateAdditionalCertificatesWithListener(DisassociateAdditionalCertificatesWithListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return DisassociateAdditionalCertificatesWithListenerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates additional certificates from a listener that uses SSL over TCP.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>DisassociateAdditionalCertificatesWithListener</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/615175.html">ListListenerCertificates</a> operation to query the status of the task:</para> /// <list type="bullet"> /// <item><description>If an additional certificate is in the <b>Dissociating</b> state, the additional certificate is being disassociated.</description></item> /// <item><description>If an additional certificate is in the <b>Dissociated</b> state, the additional certificate is disassociated.</description></item> /// </list> /// </description> /// /// <param name="request"> /// DisassociateAdditionalCertificatesWithListenerRequest /// </param> /// /// <returns> /// DisassociateAdditionalCertificatesWithListenerResponse /// </returns> public async Task<DisassociateAdditionalCertificatesWithListenerResponse> DisassociateAdditionalCertificatesWithListenerAsync(DisassociateAdditionalCertificatesWithListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await DisassociateAdditionalCertificatesWithListenerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the network type of the IPv6 address of a dual-stack Network Load Balancer (NLB) instance from internal-facing to Internet-facing.</para> /// </summary> /// /// <param name="request"> /// EnableLoadBalancerIpv6InternetRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// EnableLoadBalancerIpv6InternetResponse /// </returns> public EnableLoadBalancerIpv6InternetResponse EnableLoadBalancerIpv6InternetWithOptions(EnableLoadBalancerIpv6InternetRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "EnableLoadBalancerIpv6Internet", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<EnableLoadBalancerIpv6InternetResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<EnableLoadBalancerIpv6InternetResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the network type of the IPv6 address of a dual-stack Network Load Balancer (NLB) instance from internal-facing to Internet-facing.</para> /// </summary> /// /// <param name="request"> /// EnableLoadBalancerIpv6InternetRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// EnableLoadBalancerIpv6InternetResponse /// </returns> public async Task<EnableLoadBalancerIpv6InternetResponse> EnableLoadBalancerIpv6InternetWithOptionsAsync(EnableLoadBalancerIpv6InternetRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "EnableLoadBalancerIpv6Internet", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<EnableLoadBalancerIpv6InternetResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<EnableLoadBalancerIpv6InternetResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the network type of the IPv6 address of a dual-stack Network Load Balancer (NLB) instance from internal-facing to Internet-facing.</para> /// </summary> /// /// <param name="request"> /// EnableLoadBalancerIpv6InternetRequest /// </param> /// /// <returns> /// EnableLoadBalancerIpv6InternetResponse /// </returns> public EnableLoadBalancerIpv6InternetResponse EnableLoadBalancerIpv6Internet(EnableLoadBalancerIpv6InternetRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return EnableLoadBalancerIpv6InternetWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the network type of the IPv6 address of a dual-stack Network Load Balancer (NLB) instance from internal-facing to Internet-facing.</para> /// </summary> /// /// <param name="request"> /// EnableLoadBalancerIpv6InternetRequest /// </param> /// /// <returns> /// EnableLoadBalancerIpv6InternetResponse /// </returns> public async Task<EnableLoadBalancerIpv6InternetResponse> EnableLoadBalancerIpv6InternetAsync(EnableLoadBalancerIpv6InternetRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await EnableLoadBalancerIpv6InternetWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the result of an asynchronous operation performed on a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// GetJobStatusRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// GetJobStatusResponse /// </returns> public GetJobStatusResponse GetJobStatusWithOptions(GetJobStatusRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { query["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.JobId)) { query["JobId"] = request.JobId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetJobStatus", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<GetJobStatusResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<GetJobStatusResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the result of an asynchronous operation performed on a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// GetJobStatusRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// GetJobStatusResponse /// </returns> public async Task<GetJobStatusResponse> GetJobStatusWithOptionsAsync(GetJobStatusRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { query["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.JobId)) { query["JobId"] = request.JobId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetJobStatus", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<GetJobStatusResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<GetJobStatusResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the result of an asynchronous operation performed on a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// GetJobStatusRequest /// </param> /// /// <returns> /// GetJobStatusResponse /// </returns> public GetJobStatusResponse GetJobStatus(GetJobStatusRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GetJobStatusWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the result of an asynchronous operation performed on a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// GetJobStatusRequest /// </param> /// /// <returns> /// GetJobStatusResponse /// </returns> public async Task<GetJobStatusResponse> GetJobStatusAsync(GetJobStatusRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GetJobStatusWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the details of a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// GetListenerAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// GetListenerAttributeResponse /// </returns> public GetListenerAttributeResponse GetListenerAttributeWithOptions(GetListenerAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { query["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { query["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { query["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetListenerAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<GetListenerAttributeResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<GetListenerAttributeResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the details of a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// GetListenerAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// GetListenerAttributeResponse /// </returns> public async Task<GetListenerAttributeResponse> GetListenerAttributeWithOptionsAsync(GetListenerAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { query["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { query["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { query["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetListenerAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<GetListenerAttributeResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<GetListenerAttributeResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the details of a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// GetListenerAttributeRequest /// </param> /// /// <returns> /// GetListenerAttributeResponse /// </returns> public GetListenerAttributeResponse GetListenerAttribute(GetListenerAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GetListenerAttributeWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the details of a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// GetListenerAttributeRequest /// </param> /// /// <returns> /// GetListenerAttributeResponse /// </returns> public async Task<GetListenerAttributeResponse> GetListenerAttributeAsync(GetListenerAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GetListenerAttributeWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the health check status of a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// GetListenerHealthStatusRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// GetListenerHealthStatusResponse /// </returns> public GetListenerHealthStatusResponse GetListenerHealthStatusWithOptions(GetListenerHealthStatusRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { query["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetListenerHealthStatus", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<GetListenerHealthStatusResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<GetListenerHealthStatusResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the health check status of a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// GetListenerHealthStatusRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// GetListenerHealthStatusResponse /// </returns> public async Task<GetListenerHealthStatusResponse> GetListenerHealthStatusWithOptionsAsync(GetListenerHealthStatusRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { query["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetListenerHealthStatus", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<GetListenerHealthStatusResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<GetListenerHealthStatusResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the health check status of a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// GetListenerHealthStatusRequest /// </param> /// /// <returns> /// GetListenerHealthStatusResponse /// </returns> public GetListenerHealthStatusResponse GetListenerHealthStatus(GetListenerHealthStatusRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GetListenerHealthStatusWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the health check status of a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// GetListenerHealthStatusRequest /// </param> /// /// <returns> /// GetListenerHealthStatusResponse /// </returns> public async Task<GetListenerHealthStatusResponse> GetListenerHealthStatusAsync(GetListenerHealthStatusRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GetListenerHealthStatusWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the details about a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// GetLoadBalancerAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// GetLoadBalancerAttributeResponse /// </returns> public GetLoadBalancerAttributeResponse GetLoadBalancerAttributeWithOptions(GetLoadBalancerAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { query["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { query["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { query["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetLoadBalancerAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<GetLoadBalancerAttributeResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<GetLoadBalancerAttributeResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the details about a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// GetLoadBalancerAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// GetLoadBalancerAttributeResponse /// </returns> public async Task<GetLoadBalancerAttributeResponse> GetLoadBalancerAttributeWithOptionsAsync(GetLoadBalancerAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { query["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { query["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { query["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "GetLoadBalancerAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<GetLoadBalancerAttributeResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<GetLoadBalancerAttributeResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the details about a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// GetLoadBalancerAttributeRequest /// </param> /// /// <returns> /// GetLoadBalancerAttributeResponse /// </returns> public GetLoadBalancerAttributeResponse GetLoadBalancerAttribute(GetLoadBalancerAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return GetLoadBalancerAttributeWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the details about a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// GetLoadBalancerAttributeRequest /// </param> /// /// <returns> /// GetLoadBalancerAttributeResponse /// </returns> public async Task<GetLoadBalancerAttributeResponse> GetLoadBalancerAttributeAsync(GetLoadBalancerAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await GetLoadBalancerAttributeWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the server certificate of a TCP/SSL listener.</para> /// </summary> /// /// <param name="request"> /// ListListenerCertificatesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListListenerCertificatesResponse /// </returns> public ListListenerCertificatesResponse ListListenerCertificatesWithOptions(ListListenerCertificatesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CertType)) { body["CertType"] = request.CertType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CertificateIds)) { body["CertificateIds"] = request.CertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListListenerCertificates", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListListenerCertificatesResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<ListListenerCertificatesResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the server certificate of a TCP/SSL listener.</para> /// </summary> /// /// <param name="request"> /// ListListenerCertificatesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListListenerCertificatesResponse /// </returns> public async Task<ListListenerCertificatesResponse> ListListenerCertificatesWithOptionsAsync(ListListenerCertificatesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CertType)) { body["CertType"] = request.CertType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CertificateIds)) { body["CertificateIds"] = request.CertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListListenerCertificates", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListListenerCertificatesResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<ListListenerCertificatesResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the server certificate of a TCP/SSL listener.</para> /// </summary> /// /// <param name="request"> /// ListListenerCertificatesRequest /// </param> /// /// <returns> /// ListListenerCertificatesResponse /// </returns> public ListListenerCertificatesResponse ListListenerCertificates(ListListenerCertificatesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ListListenerCertificatesWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the server certificate of a TCP/SSL listener.</para> /// </summary> /// /// <param name="request"> /// ListListenerCertificatesRequest /// </param> /// /// <returns> /// ListListenerCertificatesResponse /// </returns> public async Task<ListListenerCertificatesResponse> ListListenerCertificatesAsync(ListListenerCertificatesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ListListenerCertificatesWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries listeners added to a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListListenersRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListListenersResponse /// </returns> public ListListenersResponse ListListenersWithOptions(ListListenersRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerIds)) { query["ListenerIds"] = request.ListenerIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerProtocol)) { query["ListenerProtocol"] = request.ListenerProtocol; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerIds)) { query["LoadBalancerIds"] = request.LoadBalancerIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { query["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { query["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecSensorEnabled)) { query["SecSensorEnabled"] = request.SecSensorEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { query["Tag"] = request.Tag; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListListeners", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListListenersResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<ListListenersResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries listeners added to a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListListenersRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListListenersResponse /// </returns> public async Task<ListListenersResponse> ListListenersWithOptionsAsync(ListListenersRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerIds)) { query["ListenerIds"] = request.ListenerIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerProtocol)) { query["ListenerProtocol"] = request.ListenerProtocol; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerIds)) { query["LoadBalancerIds"] = request.LoadBalancerIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { query["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { query["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecSensorEnabled)) { query["SecSensorEnabled"] = request.SecSensorEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { query["Tag"] = request.Tag; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListListeners", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListListenersResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<ListListenersResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries listeners added to a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListListenersRequest /// </param> /// /// <returns> /// ListListenersResponse /// </returns> public ListListenersResponse ListListeners(ListListenersRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ListListenersWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries listeners added to a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListListenersRequest /// </param> /// /// <returns> /// ListListenersResponse /// </returns> public async Task<ListListenersResponse> ListListenersAsync(ListListenersRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ListListenersWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the basic information about Network Load Balancer (NLB) instances.</para> /// </summary> /// /// <param name="request"> /// ListLoadBalancersRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListLoadBalancersResponse /// </returns> public ListLoadBalancersResponse ListLoadBalancersWithOptions(ListLoadBalancersRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressIpVersion)) { query["AddressIpVersion"] = request.AddressIpVersion; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressType)) { query["AddressType"] = request.AddressType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DNSName)) { query["DNSName"] = request.DNSName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Ipv6AddressType)) { query["Ipv6AddressType"] = request.Ipv6AddressType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerBusinessStatus)) { query["LoadBalancerBusinessStatus"] = request.LoadBalancerBusinessStatus; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerIds)) { query["LoadBalancerIds"] = request.LoadBalancerIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerNames)) { query["LoadBalancerNames"] = request.LoadBalancerNames; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerStatus)) { query["LoadBalancerStatus"] = request.LoadBalancerStatus; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerType)) { query["LoadBalancerType"] = request.LoadBalancerType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { query["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { query["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { query["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { query["Tag"] = request.Tag; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VpcIds)) { query["VpcIds"] = request.VpcIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneId)) { query["ZoneId"] = request.ZoneId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListLoadBalancers", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListLoadBalancersResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<ListLoadBalancersResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the basic information about Network Load Balancer (NLB) instances.</para> /// </summary> /// /// <param name="request"> /// ListLoadBalancersRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListLoadBalancersResponse /// </returns> public async Task<ListLoadBalancersResponse> ListLoadBalancersWithOptionsAsync(ListLoadBalancersRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressIpVersion)) { query["AddressIpVersion"] = request.AddressIpVersion; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressType)) { query["AddressType"] = request.AddressType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DNSName)) { query["DNSName"] = request.DNSName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Ipv6AddressType)) { query["Ipv6AddressType"] = request.Ipv6AddressType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerBusinessStatus)) { query["LoadBalancerBusinessStatus"] = request.LoadBalancerBusinessStatus; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerIds)) { query["LoadBalancerIds"] = request.LoadBalancerIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerNames)) { query["LoadBalancerNames"] = request.LoadBalancerNames; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerStatus)) { query["LoadBalancerStatus"] = request.LoadBalancerStatus; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerType)) { query["LoadBalancerType"] = request.LoadBalancerType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { query["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { query["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { query["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { query["Tag"] = request.Tag; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VpcIds)) { query["VpcIds"] = request.VpcIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneId)) { query["ZoneId"] = request.ZoneId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListLoadBalancers", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListLoadBalancersResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<ListLoadBalancersResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the basic information about Network Load Balancer (NLB) instances.</para> /// </summary> /// /// <param name="request"> /// ListLoadBalancersRequest /// </param> /// /// <returns> /// ListLoadBalancersResponse /// </returns> public ListLoadBalancersResponse ListLoadBalancers(ListLoadBalancersRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ListLoadBalancersWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the basic information about Network Load Balancer (NLB) instances.</para> /// </summary> /// /// <param name="request"> /// ListLoadBalancersRequest /// </param> /// /// <returns> /// ListLoadBalancersResponse /// </returns> public async Task<ListLoadBalancersResponse> ListLoadBalancersAsync(ListLoadBalancersRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ListLoadBalancersWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the TLS security policies set for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListSecurityPolicyRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListSecurityPolicyResponse /// </returns> public ListSecurityPolicyResponse ListSecurityPolicyWithOptions(ListSecurityPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { query["Tag"] = request.Tag; } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyIds)) { body["SecurityPolicyIds"] = request.SecurityPolicyIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyNames)) { body["SecurityPolicyNames"] = request.SecurityPolicyNames; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListSecurityPolicy", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListSecurityPolicyResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<ListSecurityPolicyResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the TLS security policies set for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListSecurityPolicyRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListSecurityPolicyResponse /// </returns> public async Task<ListSecurityPolicyResponse> ListSecurityPolicyWithOptionsAsync(ListSecurityPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { query["Tag"] = request.Tag; } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyIds)) { body["SecurityPolicyIds"] = request.SecurityPolicyIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyNames)) { body["SecurityPolicyNames"] = request.SecurityPolicyNames; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListSecurityPolicy", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListSecurityPolicyResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<ListSecurityPolicyResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the TLS security policies set for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListSecurityPolicyRequest /// </param> /// /// <returns> /// ListSecurityPolicyResponse /// </returns> public ListSecurityPolicyResponse ListSecurityPolicy(ListSecurityPolicyRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ListSecurityPolicyWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the TLS security policies set for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListSecurityPolicyRequest /// </param> /// /// <returns> /// ListSecurityPolicyResponse /// </returns> public async Task<ListSecurityPolicyResponse> ListSecurityPolicyAsync(ListSecurityPolicyRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ListSecurityPolicyWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries servers in a server group of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListServerGroupServersRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListServerGroupServersResponse /// </returns> public ListServerGroupServersResponse ListServerGroupServersWithOptions(ListServerGroupServersRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerIds)) { body["ServerIds"] = request.ServerIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerIps)) { body["ServerIps"] = request.ServerIps; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListServerGroupServers", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListServerGroupServersResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<ListServerGroupServersResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries servers in a server group of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListServerGroupServersRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListServerGroupServersResponse /// </returns> public async Task<ListServerGroupServersResponse> ListServerGroupServersWithOptionsAsync(ListServerGroupServersRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerIds)) { body["ServerIds"] = request.ServerIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerIps)) { body["ServerIps"] = request.ServerIps; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListServerGroupServers", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListServerGroupServersResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<ListServerGroupServersResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries servers in a server group of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListServerGroupServersRequest /// </param> /// /// <returns> /// ListServerGroupServersResponse /// </returns> public ListServerGroupServersResponse ListServerGroupServers(ListServerGroupServersRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ListServerGroupServersWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries servers in a server group of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListServerGroupServersRequest /// </param> /// /// <returns> /// ListServerGroupServersResponse /// </returns> public async Task<ListServerGroupServersResponse> ListServerGroupServersAsync(ListServerGroupServersRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ListServerGroupServersWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the server groups of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListServerGroupsRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListServerGroupsResponse /// </returns> public ListServerGroupsResponse ListServerGroupsWithOptions(ListServerGroupsRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { query["Tag"] = request.Tag; } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupIds)) { body["ServerGroupIds"] = request.ServerGroupIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupNames)) { body["ServerGroupNames"] = request.ServerGroupNames; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupType)) { body["ServerGroupType"] = request.ServerGroupType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VpcId)) { body["VpcId"] = request.VpcId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListServerGroups", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListServerGroupsResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<ListServerGroupsResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the server groups of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListServerGroupsRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListServerGroupsResponse /// </returns> public async Task<ListServerGroupsResponse> ListServerGroupsWithOptionsAsync(ListServerGroupsRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { query["Tag"] = request.Tag; } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceGroupId)) { body["ResourceGroupId"] = request.ResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupIds)) { body["ServerGroupIds"] = request.ServerGroupIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupNames)) { body["ServerGroupNames"] = request.ServerGroupNames; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupType)) { body["ServerGroupType"] = request.ServerGroupType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.VpcId)) { body["VpcId"] = request.VpcId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListServerGroups", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListServerGroupsResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<ListServerGroupsResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the server groups of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListServerGroupsRequest /// </param> /// /// <returns> /// ListServerGroupsResponse /// </returns> public ListServerGroupsResponse ListServerGroups(ListServerGroupsRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ListServerGroupsWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the server groups of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// ListServerGroupsRequest /// </param> /// /// <returns> /// ListServerGroupsResponse /// </returns> public async Task<ListServerGroupsResponse> ListServerGroupsAsync(ListServerGroupsRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ListServerGroupsWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the default TLS policy.</para> /// </summary> /// /// <param name="request"> /// ListSystemSecurityPolicyRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListSystemSecurityPolicyResponse /// </returns> public ListSystemSecurityPolicyResponse ListSystemSecurityPolicyWithOptions(ListSystemSecurityPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListSystemSecurityPolicy", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListSystemSecurityPolicyResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<ListSystemSecurityPolicyResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the default TLS policy.</para> /// </summary> /// /// <param name="request"> /// ListSystemSecurityPolicyRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListSystemSecurityPolicyResponse /// </returns> public async Task<ListSystemSecurityPolicyResponse> ListSystemSecurityPolicyWithOptionsAsync(ListSystemSecurityPolicyRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListSystemSecurityPolicy", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListSystemSecurityPolicyResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<ListSystemSecurityPolicyResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the default TLS policy.</para> /// </summary> /// /// <param name="request"> /// ListSystemSecurityPolicyRequest /// </param> /// /// <returns> /// ListSystemSecurityPolicyResponse /// </returns> public ListSystemSecurityPolicyResponse ListSystemSecurityPolicy(ListSystemSecurityPolicyRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ListSystemSecurityPolicyWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the default TLS policy.</para> /// </summary> /// /// <param name="request"> /// ListSystemSecurityPolicyRequest /// </param> /// /// <returns> /// ListSystemSecurityPolicyResponse /// </returns> public async Task<ListSystemSecurityPolicyResponse> ListSystemSecurityPolicyAsync(ListSystemSecurityPolicyRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ListSystemSecurityPolicyWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the tags of a resource.</para> /// </summary> /// /// <param name="request"> /// ListTagResourcesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListTagResourcesResponse /// </returns> public ListTagResourcesResponse ListTagResourcesWithOptions(ListTagResourcesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceId)) { bodyFlat["ResourceId"] = request.ResourceId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceType)) { body["ResourceType"] = request.ResourceType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { bodyFlat["Tag"] = request.Tag; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListTagResources", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListTagResourcesResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<ListTagResourcesResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the tags of a resource.</para> /// </summary> /// /// <param name="request"> /// ListTagResourcesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// ListTagResourcesResponse /// </returns> public async Task<ListTagResourcesResponse> ListTagResourcesWithOptionsAsync(ListTagResourcesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MaxResults)) { body["MaxResults"] = request.MaxResults; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NextToken)) { body["NextToken"] = request.NextToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceId)) { bodyFlat["ResourceId"] = request.ResourceId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceType)) { body["ResourceType"] = request.ResourceType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { bodyFlat["Tag"] = request.Tag; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "ListTagResources", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<ListTagResourcesResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<ListTagResourcesResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the tags of a resource.</para> /// </summary> /// /// <param name="request"> /// ListTagResourcesRequest /// </param> /// /// <returns> /// ListTagResourcesResponse /// </returns> public ListTagResourcesResponse ListTagResources(ListTagResourcesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return ListTagResourcesWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Queries the tags of a resource.</para> /// </summary> /// /// <param name="request"> /// ListTagResourcesRequest /// </param> /// /// <returns> /// ListTagResourcesResponse /// </returns> public async Task<ListTagResourcesResponse> ListTagResourcesAsync(ListTagResourcesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await ListTagResourcesWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates a security group with a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> Make sure that you have created a security group. For more information about how to create a security group, see <a href="https://help.aliyun.com/document_detail/25553.html">CreateSecurityGroup</a>.</para> /// <list type="bullet"> /// <item><description>An NLB instance can be associated with up to four security groups.</description></item> /// <item><description>You can query the security groups that are associated with an NLB instance by calling the <a href="https://help.aliyun.com/document_detail/214362.html">GetLoadBalancerAttribute</a> operation.</description></item> /// <item><description>LoadBalancerJoinSecurityGroup is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the status of a task.<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the security group is associated.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the security group is being associated. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// LoadBalancerJoinSecurityGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// LoadBalancerJoinSecurityGroupResponse /// </returns> public LoadBalancerJoinSecurityGroupResponse LoadBalancerJoinSecurityGroupWithOptions(LoadBalancerJoinSecurityGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityGroupIds)) { body["SecurityGroupIds"] = request.SecurityGroupIds; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "LoadBalancerJoinSecurityGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<LoadBalancerJoinSecurityGroupResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<LoadBalancerJoinSecurityGroupResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates a security group with a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> Make sure that you have created a security group. For more information about how to create a security group, see <a href="https://help.aliyun.com/document_detail/25553.html">CreateSecurityGroup</a>.</para> /// <list type="bullet"> /// <item><description>An NLB instance can be associated with up to four security groups.</description></item> /// <item><description>You can query the security groups that are associated with an NLB instance by calling the <a href="https://help.aliyun.com/document_detail/214362.html">GetLoadBalancerAttribute</a> operation.</description></item> /// <item><description>LoadBalancerJoinSecurityGroup is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the status of a task.<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the security group is associated.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the security group is being associated. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// LoadBalancerJoinSecurityGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// LoadBalancerJoinSecurityGroupResponse /// </returns> public async Task<LoadBalancerJoinSecurityGroupResponse> LoadBalancerJoinSecurityGroupWithOptionsAsync(LoadBalancerJoinSecurityGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityGroupIds)) { body["SecurityGroupIds"] = request.SecurityGroupIds; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "LoadBalancerJoinSecurityGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<LoadBalancerJoinSecurityGroupResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<LoadBalancerJoinSecurityGroupResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates a security group with a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> Make sure that you have created a security group. For more information about how to create a security group, see <a href="https://help.aliyun.com/document_detail/25553.html">CreateSecurityGroup</a>.</para> /// <list type="bullet"> /// <item><description>An NLB instance can be associated with up to four security groups.</description></item> /// <item><description>You can query the security groups that are associated with an NLB instance by calling the <a href="https://help.aliyun.com/document_detail/214362.html">GetLoadBalancerAttribute</a> operation.</description></item> /// <item><description>LoadBalancerJoinSecurityGroup is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the status of a task.<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the security group is associated.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the security group is being associated. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// LoadBalancerJoinSecurityGroupRequest /// </param> /// /// <returns> /// LoadBalancerJoinSecurityGroupResponse /// </returns> public LoadBalancerJoinSecurityGroupResponse LoadBalancerJoinSecurityGroup(LoadBalancerJoinSecurityGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return LoadBalancerJoinSecurityGroupWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Associates a security group with a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> Make sure that you have created a security group. For more information about how to create a security group, see <a href="https://help.aliyun.com/document_detail/25553.html">CreateSecurityGroup</a>.</para> /// <list type="bullet"> /// <item><description>An NLB instance can be associated with up to four security groups.</description></item> /// <item><description>You can query the security groups that are associated with an NLB instance by calling the <a href="https://help.aliyun.com/document_detail/214362.html">GetLoadBalancerAttribute</a> operation.</description></item> /// <item><description>LoadBalancerJoinSecurityGroup is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the status of a task.<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the security group is associated.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the security group is being associated. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// LoadBalancerJoinSecurityGroupRequest /// </param> /// /// <returns> /// LoadBalancerJoinSecurityGroupResponse /// </returns> public async Task<LoadBalancerJoinSecurityGroupResponse> LoadBalancerJoinSecurityGroupAsync(LoadBalancerJoinSecurityGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await LoadBalancerJoinSecurityGroupWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates a Network Load Balancer (NLB) instance from a security group.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>LoadBalancerLeaveSecurityGroup is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the status of a task.</para> /// <list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the security group is disassociated.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the security group is being disassociated. In this case, you can perform only query operations.</description></item> /// </list> /// </description> /// /// <param name="request"> /// LoadBalancerLeaveSecurityGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// LoadBalancerLeaveSecurityGroupResponse /// </returns> public LoadBalancerLeaveSecurityGroupResponse LoadBalancerLeaveSecurityGroupWithOptions(LoadBalancerLeaveSecurityGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityGroupIds)) { body["SecurityGroupIds"] = request.SecurityGroupIds; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "LoadBalancerLeaveSecurityGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<LoadBalancerLeaveSecurityGroupResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<LoadBalancerLeaveSecurityGroupResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates a Network Load Balancer (NLB) instance from a security group.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>LoadBalancerLeaveSecurityGroup is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the status of a task.</para> /// <list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the security group is disassociated.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the security group is being disassociated. In this case, you can perform only query operations.</description></item> /// </list> /// </description> /// /// <param name="request"> /// LoadBalancerLeaveSecurityGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// LoadBalancerLeaveSecurityGroupResponse /// </returns> public async Task<LoadBalancerLeaveSecurityGroupResponse> LoadBalancerLeaveSecurityGroupWithOptionsAsync(LoadBalancerLeaveSecurityGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityGroupIds)) { body["SecurityGroupIds"] = request.SecurityGroupIds; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "LoadBalancerLeaveSecurityGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<LoadBalancerLeaveSecurityGroupResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<LoadBalancerLeaveSecurityGroupResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates a Network Load Balancer (NLB) instance from a security group.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>LoadBalancerLeaveSecurityGroup is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the status of a task.</para> /// <list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the security group is disassociated.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the security group is being disassociated. In this case, you can perform only query operations.</description></item> /// </list> /// </description> /// /// <param name="request"> /// LoadBalancerLeaveSecurityGroupRequest /// </param> /// /// <returns> /// LoadBalancerLeaveSecurityGroupResponse /// </returns> public LoadBalancerLeaveSecurityGroupResponse LoadBalancerLeaveSecurityGroup(LoadBalancerLeaveSecurityGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return LoadBalancerLeaveSecurityGroupWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Disassociates a Network Load Balancer (NLB) instance from a security group.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>LoadBalancerLeaveSecurityGroup is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the status of a task.</para> /// <list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the security group is disassociated.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the security group is being disassociated. In this case, you can perform only query operations.</description></item> /// </list> /// </description> /// /// <param name="request"> /// LoadBalancerLeaveSecurityGroupRequest /// </param> /// /// <returns> /// LoadBalancerLeaveSecurityGroupResponse /// </returns> public async Task<LoadBalancerLeaveSecurityGroupResponse> LoadBalancerLeaveSecurityGroupAsync(LoadBalancerLeaveSecurityGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await LoadBalancerLeaveSecurityGroupWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modify the group of resource.</para> /// </summary> /// /// <param name="request"> /// MoveResourceGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// MoveResourceGroupResponse /// </returns> public MoveResourceGroupResponse MoveResourceGroupWithOptions(MoveResourceGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewResourceGroupId)) { body["NewResourceGroupId"] = request.NewResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceId)) { body["ResourceId"] = request.ResourceId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceType)) { body["ResourceType"] = request.ResourceType; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "MoveResourceGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<MoveResourceGroupResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<MoveResourceGroupResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modify the group of resource.</para> /// </summary> /// /// <param name="request"> /// MoveResourceGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// MoveResourceGroupResponse /// </returns> public async Task<MoveResourceGroupResponse> MoveResourceGroupWithOptionsAsync(MoveResourceGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.NewResourceGroupId)) { body["NewResourceGroupId"] = request.NewResourceGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceId)) { body["ResourceId"] = request.ResourceId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceType)) { body["ResourceType"] = request.ResourceType; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "MoveResourceGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<MoveResourceGroupResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<MoveResourceGroupResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modify the group of resource.</para> /// </summary> /// /// <param name="request"> /// MoveResourceGroupRequest /// </param> /// /// <returns> /// MoveResourceGroupResponse /// </returns> public MoveResourceGroupResponse MoveResourceGroup(MoveResourceGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return MoveResourceGroupWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modify the group of resource.</para> /// </summary> /// /// <param name="request"> /// MoveResourceGroupRequest /// </param> /// /// <returns> /// MoveResourceGroupResponse /// </returns> public async Task<MoveResourceGroupResponse> MoveResourceGroupAsync(MoveResourceGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await MoveResourceGroupWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes server groups from a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// RemoveServersFromServerGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// RemoveServersFromServerGroupResponse /// </returns> public RemoveServersFromServerGroupResponse RemoveServersFromServerGroupWithOptions(RemoveServersFromServerGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Servers)) { body["Servers"] = request.Servers; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RemoveServersFromServerGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<RemoveServersFromServerGroupResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<RemoveServersFromServerGroupResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes server groups from a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// RemoveServersFromServerGroupRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// RemoveServersFromServerGroupResponse /// </returns> public async Task<RemoveServersFromServerGroupResponse> RemoveServersFromServerGroupWithOptionsAsync(RemoveServersFromServerGroupRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Servers)) { body["Servers"] = request.Servers; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "RemoveServersFromServerGroup", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<RemoveServersFromServerGroupResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<RemoveServersFromServerGroupResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes server groups from a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// RemoveServersFromServerGroupRequest /// </param> /// /// <returns> /// RemoveServersFromServerGroupResponse /// </returns> public RemoveServersFromServerGroupResponse RemoveServersFromServerGroup(RemoveServersFromServerGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return RemoveServersFromServerGroupWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Deletes server groups from a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// RemoveServersFromServerGroupRequest /// </param> /// /// <returns> /// RemoveServersFromServerGroupResponse /// </returns> public async Task<RemoveServersFromServerGroupResponse> RemoveServersFromServerGroupAsync(RemoveServersFromServerGroupRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await RemoveServersFromServerGroupWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Configures storage for fine-grained monitoring.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>This operation is used to configure a data warehouse for the fine-grained monitoring feature. If a listener in the current region has fine-grained monitoring enabled, you must disable fine-grained monitoring before you can configure a warehouse.</para> /// </description> /// /// <param name="request"> /// SetHdMonitorRegionConfigRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// SetHdMonitorRegionConfigResponse /// </returns> public SetHdMonitorRegionConfigResponse SetHdMonitorRegionConfigWithOptions(SetHdMonitorRegionConfigRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LogProject)) { query["LogProject"] = request.LogProject; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MetricStore)) { query["MetricStore"] = request.MetricStore; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "SetHdMonitorRegionConfig", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<SetHdMonitorRegionConfigResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<SetHdMonitorRegionConfigResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Configures storage for fine-grained monitoring.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>This operation is used to configure a data warehouse for the fine-grained monitoring feature. If a listener in the current region has fine-grained monitoring enabled, you must disable fine-grained monitoring before you can configure a warehouse.</para> /// </description> /// /// <param name="request"> /// SetHdMonitorRegionConfigRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// SetHdMonitorRegionConfigResponse /// </returns> public async Task<SetHdMonitorRegionConfigResponse> SetHdMonitorRegionConfigWithOptionsAsync(SetHdMonitorRegionConfigRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> query = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LogProject)) { query["LogProject"] = request.LogProject; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.MetricStore)) { query["MetricStore"] = request.MetricStore; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { query["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Query = AlibabaCloud.OpenApiUtil.Client.Query(query), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "SetHdMonitorRegionConfig", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<SetHdMonitorRegionConfigResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<SetHdMonitorRegionConfigResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Configures storage for fine-grained monitoring.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>This operation is used to configure a data warehouse for the fine-grained monitoring feature. If a listener in the current region has fine-grained monitoring enabled, you must disable fine-grained monitoring before you can configure a warehouse.</para> /// </description> /// /// <param name="request"> /// SetHdMonitorRegionConfigRequest /// </param> /// /// <returns> /// SetHdMonitorRegionConfigResponse /// </returns> public SetHdMonitorRegionConfigResponse SetHdMonitorRegionConfig(SetHdMonitorRegionConfigRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return SetHdMonitorRegionConfigWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Configures storage for fine-grained monitoring.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>This operation is used to configure a data warehouse for the fine-grained monitoring feature. If a listener in the current region has fine-grained monitoring enabled, you must disable fine-grained monitoring before you can configure a warehouse.</para> /// </description> /// /// <param name="request"> /// SetHdMonitorRegionConfigRequest /// </param> /// /// <returns> /// SetHdMonitorRegionConfigResponse /// </returns> public async Task<SetHdMonitorRegionConfigResponse> SetHdMonitorRegionConfigAsync(SetHdMonitorRegionConfigRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await SetHdMonitorRegionConfigWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Enables a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// StartListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// StartListenerResponse /// </returns> public StartListenerResponse StartListenerWithOptions(StartListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "StartListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<StartListenerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<StartListenerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Enables a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// StartListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// StartListenerResponse /// </returns> public async Task<StartListenerResponse> StartListenerWithOptionsAsync(StartListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "StartListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<StartListenerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<StartListenerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Enables a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// StartListenerRequest /// </param> /// /// <returns> /// StartListenerResponse /// </returns> public StartListenerResponse StartListener(StartListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return StartListenerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Enables a Network Load Balancer (NLB) listener.</para> /// </summary> /// /// <param name="request"> /// StartListenerRequest /// </param> /// /// <returns> /// StartListenerResponse /// </returns> public async Task<StartListenerResponse> StartListenerAsync(StartListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await StartListenerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Removes the elastic IP address (EIP) or virtual IP address (VIP) used in a zone from the DNS record.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <remarks> /// <para> If the NLB instance is deployed in only one zone, you cannot remove the EIP or VIP from the DNS record.</para> /// </remarks> /// </description> /// /// <param name="request"> /// StartShiftLoadBalancerZonesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// StartShiftLoadBalancerZonesResponse /// </returns> public StartShiftLoadBalancerZonesResponse StartShiftLoadBalancerZonesWithOptions(StartShiftLoadBalancerZonesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { body["ZoneMappings"] = request.ZoneMappings; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "StartShiftLoadBalancerZones", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<StartShiftLoadBalancerZonesResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<StartShiftLoadBalancerZonesResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Removes the elastic IP address (EIP) or virtual IP address (VIP) used in a zone from the DNS record.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <remarks> /// <para> If the NLB instance is deployed in only one zone, you cannot remove the EIP or VIP from the DNS record.</para> /// </remarks> /// </description> /// /// <param name="request"> /// StartShiftLoadBalancerZonesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// StartShiftLoadBalancerZonesResponse /// </returns> public async Task<StartShiftLoadBalancerZonesResponse> StartShiftLoadBalancerZonesWithOptionsAsync(StartShiftLoadBalancerZonesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { body["ZoneMappings"] = request.ZoneMappings; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "StartShiftLoadBalancerZones", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<StartShiftLoadBalancerZonesResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<StartShiftLoadBalancerZonesResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Removes the elastic IP address (EIP) or virtual IP address (VIP) used in a zone from the DNS record.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <remarks> /// <para> If the NLB instance is deployed in only one zone, you cannot remove the EIP or VIP from the DNS record.</para> /// </remarks> /// </description> /// /// <param name="request"> /// StartShiftLoadBalancerZonesRequest /// </param> /// /// <returns> /// StartShiftLoadBalancerZonesResponse /// </returns> public StartShiftLoadBalancerZonesResponse StartShiftLoadBalancerZones(StartShiftLoadBalancerZonesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return StartShiftLoadBalancerZonesWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Removes the elastic IP address (EIP) or virtual IP address (VIP) used in a zone from the DNS record.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <remarks> /// <para> If the NLB instance is deployed in only one zone, you cannot remove the EIP or VIP from the DNS record.</para> /// </remarks> /// </description> /// /// <param name="request"> /// StartShiftLoadBalancerZonesRequest /// </param> /// /// <returns> /// StartShiftLoadBalancerZonesResponse /// </returns> public async Task<StartShiftLoadBalancerZonesResponse> StartShiftLoadBalancerZonesAsync(StartShiftLoadBalancerZonesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await StartShiftLoadBalancerZonesWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Stops a listener of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// StopListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// StopListenerResponse /// </returns> public StopListenerResponse StopListenerWithOptions(StopListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "StopListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<StopListenerResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<StopListenerResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Stops a listener of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// StopListenerRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// StopListenerResponse /// </returns> public async Task<StopListenerResponse> StopListenerWithOptionsAsync(StopListenerRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "StopListener", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<StopListenerResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<StopListenerResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Stops a listener of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// StopListenerRequest /// </param> /// /// <returns> /// StopListenerResponse /// </returns> public StopListenerResponse StopListener(StopListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return StopListenerWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Stops a listener of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// StopListenerRequest /// </param> /// /// <returns> /// StopListenerResponse /// </returns> public async Task<StopListenerResponse> StopListenerAsync(StopListenerRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await StopListenerWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds tags to specified resources.</para> /// </summary> /// /// <param name="request"> /// TagResourcesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// TagResourcesResponse /// </returns> public TagResourcesResponse TagResourcesWithOptions(TagResourcesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceId)) { bodyFlat["ResourceId"] = request.ResourceId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceType)) { body["ResourceType"] = request.ResourceType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { bodyFlat["Tag"] = request.Tag; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "TagResources", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<TagResourcesResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<TagResourcesResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds tags to specified resources.</para> /// </summary> /// /// <param name="request"> /// TagResourcesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// TagResourcesResponse /// </returns> public async Task<TagResourcesResponse> TagResourcesWithOptionsAsync(TagResourcesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceId)) { bodyFlat["ResourceId"] = request.ResourceId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceType)) { body["ResourceType"] = request.ResourceType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Tag)) { bodyFlat["Tag"] = request.Tag; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "TagResources", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<TagResourcesResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<TagResourcesResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds tags to specified resources.</para> /// </summary> /// /// <param name="request"> /// TagResourcesRequest /// </param> /// /// <returns> /// TagResourcesResponse /// </returns> public TagResourcesResponse TagResources(TagResourcesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return TagResourcesWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Adds tags to specified resources.</para> /// </summary> /// /// <param name="request"> /// TagResourcesRequest /// </param> /// /// <returns> /// TagResourcesResponse /// </returns> public async Task<TagResourcesResponse> TagResourcesAsync(TagResourcesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await TagResourcesWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Removes tags from resources.</para> /// </summary> /// /// <param name="request"> /// UntagResourcesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UntagResourcesResponse /// </returns> public UntagResourcesResponse UntagResourcesWithOptions(UntagResourcesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.All)) { body["All"] = request.All; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceId)) { bodyFlat["ResourceId"] = request.ResourceId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceType)) { body["ResourceType"] = request.ResourceType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.TagKey)) { bodyFlat["TagKey"] = request.TagKey; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UntagResources", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UntagResourcesResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<UntagResourcesResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Removes tags from resources.</para> /// </summary> /// /// <param name="request"> /// UntagResourcesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UntagResourcesResponse /// </returns> public async Task<UntagResourcesResponse> UntagResourcesWithOptionsAsync(UntagResourcesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.All)) { body["All"] = request.All; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceId)) { bodyFlat["ResourceId"] = request.ResourceId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ResourceType)) { body["ResourceType"] = request.ResourceType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.TagKey)) { bodyFlat["TagKey"] = request.TagKey; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UntagResources", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UntagResourcesResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<UntagResourcesResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Removes tags from resources.</para> /// </summary> /// /// <param name="request"> /// UntagResourcesRequest /// </param> /// /// <returns> /// UntagResourcesResponse /// </returns> public UntagResourcesResponse UntagResources(UntagResourcesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return UntagResourcesWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Removes tags from resources.</para> /// </summary> /// /// <param name="request"> /// UntagResourcesRequest /// </param> /// /// <returns> /// UntagResourcesResponse /// </returns> public async Task<UntagResourcesResponse> UntagResourcesAsync(UntagResourcesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await UntagResourcesWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Updates the attributes of a listener, such as the name and the idle connection timeout period.</para> /// </summary> /// /// <param name="tmpReq"> /// UpdateListenerAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateListenerAttributeResponse /// </returns> public UpdateListenerAttributeResponse UpdateListenerAttributeWithOptions(UpdateListenerAttributeRequest tmpReq, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(tmpReq); UpdateListenerAttributeShrinkRequest request = new UpdateListenerAttributeShrinkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(tmpReq, request); if (!AlibabaCloud.TeaUtil.Common.IsUnset(tmpReq.ProxyProtocolV2Config)) { request.ProxyProtocolV2ConfigShrink = AlibabaCloud.OpenApiUtil.Client.ArrayToStringWithSpecifiedStyle(tmpReq.ProxyProtocolV2Config, "ProxyProtocolV2Config", "json"); } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AlpnEnabled)) { body["AlpnEnabled"] = request.AlpnEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AlpnPolicy)) { body["AlpnPolicy"] = request.AlpnPolicy; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CaCertificateIds)) { body["CaCertificateIds"] = request.CaCertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CaEnabled)) { body["CaEnabled"] = request.CaEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CertificateIds)) { body["CertificateIds"] = request.CertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Cps)) { body["Cps"] = request.Cps; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.IdleTimeout)) { body["IdleTimeout"] = request.IdleTimeout; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerDescription)) { body["ListenerDescription"] = request.ListenerDescription; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mss)) { body["Mss"] = request.Mss; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ProxyProtocolEnabled)) { body["ProxyProtocolEnabled"] = request.ProxyProtocolEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ProxyProtocolV2ConfigShrink)) { body["ProxyProtocolV2Config"] = request.ProxyProtocolV2ConfigShrink; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecSensorEnabled)) { body["SecSensorEnabled"] = request.SecSensorEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyId)) { body["SecurityPolicyId"] = request.SecurityPolicyId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateListenerAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateListenerAttributeResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateListenerAttributeResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Updates the attributes of a listener, such as the name and the idle connection timeout period.</para> /// </summary> /// /// <param name="tmpReq"> /// UpdateListenerAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateListenerAttributeResponse /// </returns> public async Task<UpdateListenerAttributeResponse> UpdateListenerAttributeWithOptionsAsync(UpdateListenerAttributeRequest tmpReq, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(tmpReq); UpdateListenerAttributeShrinkRequest request = new UpdateListenerAttributeShrinkRequest(); AlibabaCloud.OpenApiUtil.Client.Convert(tmpReq, request); if (!AlibabaCloud.TeaUtil.Common.IsUnset(tmpReq.ProxyProtocolV2Config)) { request.ProxyProtocolV2ConfigShrink = AlibabaCloud.OpenApiUtil.Client.ArrayToStringWithSpecifiedStyle(tmpReq.ProxyProtocolV2Config, "ProxyProtocolV2Config", "json"); } Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AlpnEnabled)) { body["AlpnEnabled"] = request.AlpnEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AlpnPolicy)) { body["AlpnPolicy"] = request.AlpnPolicy; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CaCertificateIds)) { body["CaCertificateIds"] = request.CaCertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CaEnabled)) { body["CaEnabled"] = request.CaEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CertificateIds)) { body["CertificateIds"] = request.CertificateIds; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Cps)) { body["Cps"] = request.Cps; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.IdleTimeout)) { body["IdleTimeout"] = request.IdleTimeout; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerDescription)) { body["ListenerDescription"] = request.ListenerDescription; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ListenerId)) { body["ListenerId"] = request.ListenerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Mss)) { body["Mss"] = request.Mss; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ProxyProtocolEnabled)) { body["ProxyProtocolEnabled"] = request.ProxyProtocolEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ProxyProtocolV2ConfigShrink)) { body["ProxyProtocolV2Config"] = request.ProxyProtocolV2ConfigShrink; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecSensorEnabled)) { body["SecSensorEnabled"] = request.SecSensorEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyId)) { body["SecurityPolicyId"] = request.SecurityPolicyId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateListenerAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateListenerAttributeResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateListenerAttributeResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Updates the attributes of a listener, such as the name and the idle connection timeout period.</para> /// </summary> /// /// <param name="request"> /// UpdateListenerAttributeRequest /// </param> /// /// <returns> /// UpdateListenerAttributeResponse /// </returns> public UpdateListenerAttributeResponse UpdateListenerAttribute(UpdateListenerAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return UpdateListenerAttributeWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Updates the attributes of a listener, such as the name and the idle connection timeout period.</para> /// </summary> /// /// <param name="request"> /// UpdateListenerAttributeRequest /// </param> /// /// <returns> /// UpdateListenerAttributeResponse /// </returns> public async Task<UpdateListenerAttributeResponse> UpdateListenerAttributeAsync(UpdateListenerAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await UpdateListenerAttributeWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the network type of the IPv4 address for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> Make sure that an NLB instance is created. For more information, see <a href="https://help.aliyun.com/document_detail/445868.html">CreateLoadBalancer</a>.</para> /// <list type="bullet"> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the <b>AddressType</b> value of an NLB instance after you change the network type.</description></item> /// <item><description><b>UpdateLoadBalancerAddressTypeConfig</b> is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the task status:<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the network type of the IPv4 address of the NLB instance is changed.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the network type of the IPv4 address of the NLB instance is being changed. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerAddressTypeConfigRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateLoadBalancerAddressTypeConfigResponse /// </returns> public UpdateLoadBalancerAddressTypeConfigResponse UpdateLoadBalancerAddressTypeConfigWithOptions(UpdateLoadBalancerAddressTypeConfigRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressType)) { body["AddressType"] = request.AddressType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { body["ZoneMappings"] = request.ZoneMappings; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateLoadBalancerAddressTypeConfig", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateLoadBalancerAddressTypeConfigResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateLoadBalancerAddressTypeConfigResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the network type of the IPv4 address for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> Make sure that an NLB instance is created. For more information, see <a href="https://help.aliyun.com/document_detail/445868.html">CreateLoadBalancer</a>.</para> /// <list type="bullet"> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the <b>AddressType</b> value of an NLB instance after you change the network type.</description></item> /// <item><description><b>UpdateLoadBalancerAddressTypeConfig</b> is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the task status:<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the network type of the IPv4 address of the NLB instance is changed.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the network type of the IPv4 address of the NLB instance is being changed. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerAddressTypeConfigRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateLoadBalancerAddressTypeConfigResponse /// </returns> public async Task<UpdateLoadBalancerAddressTypeConfigResponse> UpdateLoadBalancerAddressTypeConfigWithOptionsAsync(UpdateLoadBalancerAddressTypeConfigRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.AddressType)) { body["AddressType"] = request.AddressType; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { body["ZoneMappings"] = request.ZoneMappings; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateLoadBalancerAddressTypeConfig", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateLoadBalancerAddressTypeConfigResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateLoadBalancerAddressTypeConfigResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the network type of the IPv4 address for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> Make sure that an NLB instance is created. For more information, see <a href="https://help.aliyun.com/document_detail/445868.html">CreateLoadBalancer</a>.</para> /// <list type="bullet"> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the <b>AddressType</b> value of an NLB instance after you change the network type.</description></item> /// <item><description><b>UpdateLoadBalancerAddressTypeConfig</b> is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the task status:<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the network type of the IPv4 address of the NLB instance is changed.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the network type of the IPv4 address of the NLB instance is being changed. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerAddressTypeConfigRequest /// </param> /// /// <returns> /// UpdateLoadBalancerAddressTypeConfigResponse /// </returns> public UpdateLoadBalancerAddressTypeConfigResponse UpdateLoadBalancerAddressTypeConfig(UpdateLoadBalancerAddressTypeConfigRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return UpdateLoadBalancerAddressTypeConfigWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Changes the network type of the IPv4 address for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para> Make sure that an NLB instance is created. For more information, see <a href="https://help.aliyun.com/document_detail/445868.html">CreateLoadBalancer</a>.</para> /// <list type="bullet"> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the <b>AddressType</b> value of an NLB instance after you change the network type.</description></item> /// <item><description><b>UpdateLoadBalancerAddressTypeConfig</b> is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation to query the task status:<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the network type of the IPv4 address of the NLB instance is changed.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the network type of the IPv4 address of the NLB instance is being changed. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerAddressTypeConfigRequest /// </param> /// /// <returns> /// UpdateLoadBalancerAddressTypeConfigResponse /// </returns> public async Task<UpdateLoadBalancerAddressTypeConfigResponse> UpdateLoadBalancerAddressTypeConfigAsync(UpdateLoadBalancerAddressTypeConfigRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await UpdateLoadBalancerAddressTypeConfigWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Updates the attributes, including the name, of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// UpdateLoadBalancerAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateLoadBalancerAttributeResponse /// </returns> public UpdateLoadBalancerAttributeResponse UpdateLoadBalancerAttributeWithOptions(UpdateLoadBalancerAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Cps)) { body["Cps"] = request.Cps; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CrossZoneEnabled)) { body["CrossZoneEnabled"] = request.CrossZoneEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerName)) { body["LoadBalancerName"] = request.LoadBalancerName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateLoadBalancerAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateLoadBalancerAttributeResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateLoadBalancerAttributeResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Updates the attributes, including the name, of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// UpdateLoadBalancerAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateLoadBalancerAttributeResponse /// </returns> public async Task<UpdateLoadBalancerAttributeResponse> UpdateLoadBalancerAttributeWithOptionsAsync(UpdateLoadBalancerAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Cps)) { body["Cps"] = request.Cps; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.CrossZoneEnabled)) { body["CrossZoneEnabled"] = request.CrossZoneEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerName)) { body["LoadBalancerName"] = request.LoadBalancerName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateLoadBalancerAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateLoadBalancerAttributeResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateLoadBalancerAttributeResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Updates the attributes, including the name, of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// UpdateLoadBalancerAttributeRequest /// </param> /// /// <returns> /// UpdateLoadBalancerAttributeResponse /// </returns> public UpdateLoadBalancerAttributeResponse UpdateLoadBalancerAttribute(UpdateLoadBalancerAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return UpdateLoadBalancerAttributeWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Updates the attributes, including the name, of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// UpdateLoadBalancerAttributeRequest /// </param> /// /// <returns> /// UpdateLoadBalancerAttributeResponse /// </returns> public async Task<UpdateLoadBalancerAttributeResponse> UpdateLoadBalancerAttributeAsync(UpdateLoadBalancerAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await UpdateLoadBalancerAttributeWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Enables or disables the deletion protection feature.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <remarks> /// <para>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the details about deletion protection and the configuration read-only mode.</para> /// </remarks> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerProtectionRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateLoadBalancerProtectionResponse /// </returns> public UpdateLoadBalancerProtectionResponse UpdateLoadBalancerProtectionWithOptions(UpdateLoadBalancerProtectionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DeletionProtectionEnabled)) { body["DeletionProtectionEnabled"] = request.DeletionProtectionEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DeletionProtectionReason)) { body["DeletionProtectionReason"] = request.DeletionProtectionReason; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ModificationProtectionReason)) { body["ModificationProtectionReason"] = request.ModificationProtectionReason; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ModificationProtectionStatus)) { body["ModificationProtectionStatus"] = request.ModificationProtectionStatus; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateLoadBalancerProtection", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateLoadBalancerProtectionResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateLoadBalancerProtectionResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Enables or disables the deletion protection feature.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <remarks> /// <para>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the details about deletion protection and the configuration read-only mode.</para> /// </remarks> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerProtectionRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateLoadBalancerProtectionResponse /// </returns> public async Task<UpdateLoadBalancerProtectionResponse> UpdateLoadBalancerProtectionWithOptionsAsync(UpdateLoadBalancerProtectionRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DeletionProtectionEnabled)) { body["DeletionProtectionEnabled"] = request.DeletionProtectionEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DeletionProtectionReason)) { body["DeletionProtectionReason"] = request.DeletionProtectionReason; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ModificationProtectionReason)) { body["ModificationProtectionReason"] = request.ModificationProtectionReason; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ModificationProtectionStatus)) { body["ModificationProtectionStatus"] = request.ModificationProtectionStatus; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateLoadBalancerProtection", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateLoadBalancerProtectionResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateLoadBalancerProtectionResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Enables or disables the deletion protection feature.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <remarks> /// <para>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the details about deletion protection and the configuration read-only mode.</para> /// </remarks> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerProtectionRequest /// </param> /// /// <returns> /// UpdateLoadBalancerProtectionResponse /// </returns> public UpdateLoadBalancerProtectionResponse UpdateLoadBalancerProtection(UpdateLoadBalancerProtectionRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return UpdateLoadBalancerProtectionWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Enables or disables the deletion protection feature.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <remarks> /// <para>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the details about deletion protection and the configuration read-only mode.</para> /// </remarks> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerProtectionRequest /// </param> /// /// <returns> /// UpdateLoadBalancerProtectionResponse /// </returns> public async Task<UpdateLoadBalancerProtectionResponse> UpdateLoadBalancerProtectionAsync(UpdateLoadBalancerProtectionRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await UpdateLoadBalancerProtectionWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the zones and zone attributes of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>When you call this operation, make sure that you specify all the zones of the NLB instance, including the existing zones and new zones. If you do not specify the existing zones, the existing zones are removed. /// Prerequisites</para> /// <list type="bullet"> /// <item><description>An NLB instance is created. For more information, see <a href="https://help.aliyun.com/document_detail/445868.html">CreateLoadBalancer</a>.</description></item> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the zones and zone attributes of an NLB instance.</description></item> /// <item><description><b>UpdateLoadBalancerZones</b> is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation query to query the status of a task:<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the zones and zone attributes are modified.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the zones and zone attributes are being modified. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerZonesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateLoadBalancerZonesResponse /// </returns> public UpdateLoadBalancerZonesResponse UpdateLoadBalancerZonesWithOptions(UpdateLoadBalancerZonesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { body["ZoneMappings"] = request.ZoneMappings; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateLoadBalancerZones", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateLoadBalancerZonesResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateLoadBalancerZonesResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the zones and zone attributes of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>When you call this operation, make sure that you specify all the zones of the NLB instance, including the existing zones and new zones. If you do not specify the existing zones, the existing zones are removed. /// Prerequisites</para> /// <list type="bullet"> /// <item><description>An NLB instance is created. For more information, see <a href="https://help.aliyun.com/document_detail/445868.html">CreateLoadBalancer</a>.</description></item> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the zones and zone attributes of an NLB instance.</description></item> /// <item><description><b>UpdateLoadBalancerZones</b> is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation query to query the status of a task:<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the zones and zone attributes are modified.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the zones and zone attributes are being modified. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerZonesRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateLoadBalancerZonesResponse /// </returns> public async Task<UpdateLoadBalancerZonesResponse> UpdateLoadBalancerZonesWithOptionsAsync(UpdateLoadBalancerZonesRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.LoadBalancerId)) { body["LoadBalancerId"] = request.LoadBalancerId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ZoneMappings)) { body["ZoneMappings"] = request.ZoneMappings; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateLoadBalancerZones", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateLoadBalancerZonesResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateLoadBalancerZonesResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the zones and zone attributes of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>When you call this operation, make sure that you specify all the zones of the NLB instance, including the existing zones and new zones. If you do not specify the existing zones, the existing zones are removed. /// Prerequisites</para> /// <list type="bullet"> /// <item><description>An NLB instance is created. For more information, see <a href="https://help.aliyun.com/document_detail/445868.html">CreateLoadBalancer</a>.</description></item> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the zones and zone attributes of an NLB instance.</description></item> /// <item><description><b>UpdateLoadBalancerZones</b> is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation query to query the status of a task:<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the zones and zone attributes are modified.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the zones and zone attributes are being modified. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerZonesRequest /// </param> /// /// <returns> /// UpdateLoadBalancerZonesResponse /// </returns> public UpdateLoadBalancerZonesResponse UpdateLoadBalancerZones(UpdateLoadBalancerZonesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return UpdateLoadBalancerZonesWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the zones and zone attributes of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para>When you call this operation, make sure that you specify all the zones of the NLB instance, including the existing zones and new zones. If you do not specify the existing zones, the existing zones are removed. /// Prerequisites</para> /// <list type="bullet"> /// <item><description>An NLB instance is created. For more information, see <a href="https://help.aliyun.com/document_detail/445868.html">CreateLoadBalancer</a>.</description></item> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445873.html">GetLoadBalancerAttribute</a> operation to query the zones and zone attributes of an NLB instance.</description></item> /// <item><description><b>UpdateLoadBalancerZones</b> is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the <a href="https://help.aliyun.com/document_detail/445904.html">GetJobStatus</a> operation query to query the status of a task:<list type="bullet"> /// <item><description>If the task is in the <b>Succeeded</b> state, the zones and zone attributes are modified.</description></item> /// <item><description>If the task is in the <b>Processing</b> state, the zones and zone attributes are being modified. In this case, you can perform only query operations.</description></item> /// </list> /// </description></item> /// </list> /// </description> /// /// <param name="request"> /// UpdateLoadBalancerZonesRequest /// </param> /// /// <returns> /// UpdateLoadBalancerZonesResponse /// </returns> public async Task<UpdateLoadBalancerZonesResponse> UpdateLoadBalancerZonesAsync(UpdateLoadBalancerZonesRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await UpdateLoadBalancerZonesWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the configurations of a security policy for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// UpdateSecurityPolicyAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateSecurityPolicyAttributeResponse /// </returns> public UpdateSecurityPolicyAttributeResponse UpdateSecurityPolicyAttributeWithOptions(UpdateSecurityPolicyAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Ciphers)) { body["Ciphers"] = request.Ciphers; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyId)) { body["SecurityPolicyId"] = request.SecurityPolicyId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyName)) { body["SecurityPolicyName"] = request.SecurityPolicyName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.TlsVersions)) { body["TlsVersions"] = request.TlsVersions; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateSecurityPolicyAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateSecurityPolicyAttributeResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateSecurityPolicyAttributeResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the configurations of a security policy for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// UpdateSecurityPolicyAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateSecurityPolicyAttributeResponse /// </returns> public async Task<UpdateSecurityPolicyAttributeResponse> UpdateSecurityPolicyAttributeWithOptionsAsync(UpdateSecurityPolicyAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Ciphers)) { body["Ciphers"] = request.Ciphers; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyId)) { body["SecurityPolicyId"] = request.SecurityPolicyId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.SecurityPolicyName)) { body["SecurityPolicyName"] = request.SecurityPolicyName; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.TlsVersions)) { body["TlsVersions"] = request.TlsVersions; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateSecurityPolicyAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateSecurityPolicyAttributeResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateSecurityPolicyAttributeResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the configurations of a security policy for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// UpdateSecurityPolicyAttributeRequest /// </param> /// /// <returns> /// UpdateSecurityPolicyAttributeResponse /// </returns> public UpdateSecurityPolicyAttributeResponse UpdateSecurityPolicyAttribute(UpdateSecurityPolicyAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return UpdateSecurityPolicyAttributeWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the configurations of a security policy for a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <param name="request"> /// UpdateSecurityPolicyAttributeRequest /// </param> /// /// <returns> /// UpdateSecurityPolicyAttributeResponse /// </returns> public async Task<UpdateSecurityPolicyAttributeResponse> UpdateSecurityPolicyAttributeAsync(UpdateSecurityPolicyAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await UpdateSecurityPolicyAttributeWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the configurations of a Network Load Balancer (NLB) server group.</para> /// </summary> /// /// <param name="request"> /// UpdateServerGroupAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateServerGroupAttributeResponse /// </returns> public UpdateServerGroupAttributeResponse UpdateServerGroupAttributeWithOptions(UpdateServerGroupAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ConnectionDrainEnabled)) { body["ConnectionDrainEnabled"] = request.ConnectionDrainEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ConnectionDrainTimeout)) { body["ConnectionDrainTimeout"] = request.ConnectionDrainTimeout; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.HealthCheckConfig)) { bodyFlat["HealthCheckConfig"] = request.HealthCheckConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PreserveClientIpEnabled)) { body["PreserveClientIpEnabled"] = request.PreserveClientIpEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Scheduler)) { body["Scheduler"] = request.Scheduler; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupName)) { body["ServerGroupName"] = request.ServerGroupName; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateServerGroupAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateServerGroupAttributeResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateServerGroupAttributeResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the configurations of a Network Load Balancer (NLB) server group.</para> /// </summary> /// /// <param name="request"> /// UpdateServerGroupAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateServerGroupAttributeResponse /// </returns> public async Task<UpdateServerGroupAttributeResponse> UpdateServerGroupAttributeWithOptionsAsync(UpdateServerGroupAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ConnectionDrainEnabled)) { body["ConnectionDrainEnabled"] = request.ConnectionDrainEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ConnectionDrainTimeout)) { body["ConnectionDrainTimeout"] = request.ConnectionDrainTimeout; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } Dictionary<string, object> bodyFlat = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.HealthCheckConfig)) { bodyFlat["HealthCheckConfig"] = request.HealthCheckConfig; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.PreserveClientIpEnabled)) { body["PreserveClientIpEnabled"] = request.PreserveClientIpEnabled; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Scheduler)) { body["Scheduler"] = request.Scheduler; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupName)) { body["ServerGroupName"] = request.ServerGroupName; } body = TeaConverter.merge<object> ( body, AlibabaCloud.OpenApiUtil.Client.Query(bodyFlat) ); AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateServerGroupAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateServerGroupAttributeResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateServerGroupAttributeResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the configurations of a Network Load Balancer (NLB) server group.</para> /// </summary> /// /// <param name="request"> /// UpdateServerGroupAttributeRequest /// </param> /// /// <returns> /// UpdateServerGroupAttributeResponse /// </returns> public UpdateServerGroupAttributeResponse UpdateServerGroupAttribute(UpdateServerGroupAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return UpdateServerGroupAttributeWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the configurations of a Network Load Balancer (NLB) server group.</para> /// </summary> /// /// <param name="request"> /// UpdateServerGroupAttributeRequest /// </param> /// /// <returns> /// UpdateServerGroupAttributeResponse /// </returns> public async Task<UpdateServerGroupAttributeResponse> UpdateServerGroupAttributeAsync(UpdateServerGroupAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await UpdateServerGroupAttributeWithOptionsAsync(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the weights and descriptions of backend servers in a server group of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>UpdateServerGroupServersAttribute</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background.</para> /// <ol> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445895.html">ListServerGroups</a> operation to query the status of a server group.<list type="bullet"> /// <item><description>If a server group is in the <b>Configuring</b> state, the server group is being modified.</description></item> /// <item><description>If a server group is in the <b>Available</b> state, the server group is running.</description></item> /// </list> /// </description></item> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445896.html">ListServerGroupServers</a> operation to query the status of a backend server.<list type="bullet"> /// <item><description>If a backend server is in the <b>Configuring</b> state, it indicates that the backend server is being modified.</description></item> /// <item><description>If a backend server is in the <b>Available</b> state, it indicates that the backend server is running.</description></item> /// </list> /// </description></item> /// </ol> /// </description> /// /// <param name="request"> /// UpdateServerGroupServersAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateServerGroupServersAttributeResponse /// </returns> public UpdateServerGroupServersAttributeResponse UpdateServerGroupServersAttributeWithOptions(UpdateServerGroupServersAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Servers)) { body["Servers"] = request.Servers; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateServerGroupServersAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateServerGroupServersAttributeResponse>(CallApi(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateServerGroupServersAttributeResponse>(Execute(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the weights and descriptions of backend servers in a server group of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>UpdateServerGroupServersAttribute</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background.</para> /// <ol> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445895.html">ListServerGroups</a> operation to query the status of a server group.<list type="bullet"> /// <item><description>If a server group is in the <b>Configuring</b> state, the server group is being modified.</description></item> /// <item><description>If a server group is in the <b>Available</b> state, the server group is running.</description></item> /// </list> /// </description></item> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445896.html">ListServerGroupServers</a> operation to query the status of a backend server.<list type="bullet"> /// <item><description>If a backend server is in the <b>Configuring</b> state, it indicates that the backend server is being modified.</description></item> /// <item><description>If a backend server is in the <b>Available</b> state, it indicates that the backend server is running.</description></item> /// </list> /// </description></item> /// </ol> /// </description> /// /// <param name="request"> /// UpdateServerGroupServersAttributeRequest /// </param> /// <param name="runtime"> /// runtime options for this request RuntimeOptions /// </param> /// /// <returns> /// UpdateServerGroupServersAttributeResponse /// </returns> public async Task<UpdateServerGroupServersAttributeResponse> UpdateServerGroupServersAttributeWithOptionsAsync(UpdateServerGroupServersAttributeRequest request, AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime) { AlibabaCloud.TeaUtil.Common.ValidateModel(request); Dictionary<string, object> body = new Dictionary<string, object>(){}; if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ClientToken)) { body["ClientToken"] = request.ClientToken; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.DryRun)) { body["DryRun"] = request.DryRun; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.RegionId)) { body["RegionId"] = request.RegionId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.ServerGroupId)) { body["ServerGroupId"] = request.ServerGroupId; } if (!AlibabaCloud.TeaUtil.Common.IsUnset(request.Servers)) { body["Servers"] = request.Servers; } AlibabaCloud.OpenApiClient.Models.OpenApiRequest req = new AlibabaCloud.OpenApiClient.Models.OpenApiRequest { Body = AlibabaCloud.OpenApiUtil.Client.ParseToMap(body), }; AlibabaCloud.OpenApiClient.Models.Params params_ = new AlibabaCloud.OpenApiClient.Models.Params { Action = "UpdateServerGroupServersAttribute", Version = "2022-04-30", Protocol = "HTTPS", Pathname = "/", Method = "POST", AuthType = "AK", Style = "RPC", ReqBodyType = "formData", BodyType = "json", }; if (AlibabaCloud.TeaUtil.Common.IsUnset(_signatureVersion) || !AlibabaCloud.TeaUtil.Common.EqualString(_signatureVersion, "v4")) { return TeaModel.ToObject<UpdateServerGroupServersAttributeResponse>(await CallApiAsync(params_, req, runtime)); } else { return TeaModel.ToObject<UpdateServerGroupServersAttributeResponse>(await ExecuteAsync(params_, req, runtime)); } } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the weights and descriptions of backend servers in a server group of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>UpdateServerGroupServersAttribute</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background.</para> /// <ol> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445895.html">ListServerGroups</a> operation to query the status of a server group.<list type="bullet"> /// <item><description>If a server group is in the <b>Configuring</b> state, the server group is being modified.</description></item> /// <item><description>If a server group is in the <b>Available</b> state, the server group is running.</description></item> /// </list> /// </description></item> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445896.html">ListServerGroupServers</a> operation to query the status of a backend server.<list type="bullet"> /// <item><description>If a backend server is in the <b>Configuring</b> state, it indicates that the backend server is being modified.</description></item> /// <item><description>If a backend server is in the <b>Available</b> state, it indicates that the backend server is running.</description></item> /// </list> /// </description></item> /// </ol> /// </description> /// /// <param name="request"> /// UpdateServerGroupServersAttributeRequest /// </param> /// /// <returns> /// UpdateServerGroupServersAttributeResponse /// </returns> public UpdateServerGroupServersAttributeResponse UpdateServerGroupServersAttribute(UpdateServerGroupServersAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return UpdateServerGroupServersAttributeWithOptions(request, runtime); } /// <term><b>Summary:</b></term> /// <summary> /// <para>Modifies the weights and descriptions of backend servers in a server group of a Network Load Balancer (NLB) instance.</para> /// </summary> /// /// <term><b>Description:</b></term> /// <description> /// <para><em>UpdateServerGroupServersAttribute</em>* is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background.</para> /// <ol> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445895.html">ListServerGroups</a> operation to query the status of a server group.<list type="bullet"> /// <item><description>If a server group is in the <b>Configuring</b> state, the server group is being modified.</description></item> /// <item><description>If a server group is in the <b>Available</b> state, the server group is running.</description></item> /// </list> /// </description></item> /// <item><description>You can call the <a href="https://help.aliyun.com/document_detail/445896.html">ListServerGroupServers</a> operation to query the status of a backend server.<list type="bullet"> /// <item><description>If a backend server is in the <b>Configuring</b> state, it indicates that the backend server is being modified.</description></item> /// <item><description>If a backend server is in the <b>Available</b> state, it indicates that the backend server is running.</description></item> /// </list> /// </description></item> /// </ol> /// </description> /// /// <param name="request"> /// UpdateServerGroupServersAttributeRequest /// </param> /// /// <returns> /// UpdateServerGroupServersAttributeResponse /// </returns> public async Task<UpdateServerGroupServersAttributeResponse> UpdateServerGroupServersAttributeAsync(UpdateServerGroupServersAttributeRequest request) { AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); return await UpdateServerGroupServersAttributeWithOptionsAsync(request, runtime); } } }