/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the shield-2016-06-02.normal.json service model. */ using System; using System.Runtime.ExceptionServices; using System.Threading; using System.Threading.Tasks; using System.Collections.Generic; using System.Net; using Amazon.Shield.Model; using Amazon.Shield.Model.Internal.MarshallTransformations; using Amazon.Shield.Internal; using Amazon.Runtime; using Amazon.Runtime.Internal; using Amazon.Runtime.Internal.Auth; using Amazon.Runtime.Internal.Transform; namespace Amazon.Shield { /// /// Implementation for accessing Shield /// /// Shield Advanced /// /// This is the Shield Advanced API Reference. This guide is for developers who /// need detailed information about the Shield Advanced API actions, data types, and errors. /// For detailed information about WAF and Shield Advanced features and an overview of /// how to use the WAF and Shield Advanced APIs, see the WAF /// and Shield Developer Guide. /// /// public partial class AmazonShieldClient : AmazonServiceClient, IAmazonShield { private static IServiceMetadata serviceMetadata = new AmazonShieldMetadata(); private IShieldPaginatorFactory _paginators; /// /// Paginators for the service /// public IShieldPaginatorFactory Paginators { get { if (this._paginators == null) { this._paginators = new ShieldPaginatorFactory(this); } return this._paginators; } } #region Constructors /// /// Constructs AmazonShieldClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// public AmazonShieldClient() : base(FallbackCredentialsFactory.GetCredentials(), new AmazonShieldConfig()) { } /// /// Constructs AmazonShieldClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The region to connect. public AmazonShieldClient(RegionEndpoint region) : base(FallbackCredentialsFactory.GetCredentials(), new AmazonShieldConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonShieldClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The AmazonShieldClient Configuration Object public AmazonShieldClient(AmazonShieldConfig config) : base(FallbackCredentialsFactory.GetCredentials(config), config){} /// /// Constructs AmazonShieldClient with AWS Credentials /// /// AWS Credentials public AmazonShieldClient(AWSCredentials credentials) : this(credentials, new AmazonShieldConfig()) { } /// /// Constructs AmazonShieldClient with AWS Credentials /// /// AWS Credentials /// The region to connect. public AmazonShieldClient(AWSCredentials credentials, RegionEndpoint region) : this(credentials, new AmazonShieldConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonShieldClient with AWS Credentials and an /// AmazonShieldClient Configuration object. /// /// AWS Credentials /// The AmazonShieldClient Configuration Object public AmazonShieldClient(AWSCredentials credentials, AmazonShieldConfig clientConfig) : base(credentials, clientConfig) { } /// /// Constructs AmazonShieldClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key public AmazonShieldClient(string awsAccessKeyId, string awsSecretAccessKey) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonShieldConfig()) { } /// /// Constructs AmazonShieldClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// The region to connect. public AmazonShieldClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonShieldConfig() {RegionEndpoint=region}) { } /// /// Constructs AmazonShieldClient with AWS Access Key ID, AWS Secret Key and an /// AmazonShieldClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// The AmazonShieldClient Configuration Object public AmazonShieldClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonShieldConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, clientConfig) { } /// /// Constructs AmazonShieldClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token public AmazonShieldClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonShieldConfig()) { } /// /// Constructs AmazonShieldClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The region to connect. public AmazonShieldClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonShieldConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonShieldClient with AWS Access Key ID, AWS Secret Key and an /// AmazonShieldClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The AmazonShieldClient Configuration Object public AmazonShieldClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonShieldConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig) { } #endregion #region Overrides /// /// Creates the signer for the service. /// protected override AbstractAWSSigner CreateSigner() { return new AWS4Signer(); } /// /// Customize the pipeline /// /// protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline) { pipeline.RemoveHandler(); pipeline.AddHandlerAfter(new AmazonShieldEndpointResolver()); } /// /// Capture metadata for the service. /// protected override IServiceMetadata ServiceMetadata { get { return serviceMetadata; } } #endregion #region Dispose /// /// Disposes the service client. /// protected override void Dispose(bool disposing) { base.Dispose(disposing); } #endregion #region AssociateDRTLogBucket /// /// Authorizes the Shield Response Team (SRT) to access the specified Amazon S3 bucket /// containing log data such as Application Load Balancer access logs, CloudFront logs, /// or logs from third party sources. You can associate up to 10 Amazon S3 buckets with /// your subscription. /// /// /// /// To use the services of the SRT and make an AssociateDRTLogBucket request, /// you must be subscribed to the Business /// Support plan or the Enterprise /// Support plan. /// /// /// Container for the necessary parameters to execute the AssociateDRTLogBucket service method. /// /// The response from the AssociateDRTLogBucket service method, as returned by Shield. /// /// In order to grant the necessary access to the Shield Response Team (SRT) the user /// submitting the request must have the iam:PassRole permission. This error /// indicates the user did not have the appropriate permissions. For more information, /// see Granting /// a User Permissions to Pass a Role to an Amazon Web Services Service. /// /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// The ARN of the role that you specified does not exist. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for AssociateDRTLogBucket Operation public virtual AssociateDRTLogBucketResponse AssociateDRTLogBucket(AssociateDRTLogBucketRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateDRTLogBucketRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateDRTLogBucketResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Authorizes the Shield Response Team (SRT) to access the specified Amazon S3 bucket /// containing log data such as Application Load Balancer access logs, CloudFront logs, /// or logs from third party sources. You can associate up to 10 Amazon S3 buckets with /// your subscription. /// /// /// /// To use the services of the SRT and make an AssociateDRTLogBucket request, /// you must be subscribed to the Business /// Support plan or the Enterprise /// Support plan. /// /// /// Container for the necessary parameters to execute the AssociateDRTLogBucket service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the AssociateDRTLogBucket service method, as returned by Shield. /// /// In order to grant the necessary access to the Shield Response Team (SRT) the user /// submitting the request must have the iam:PassRole permission. This error /// indicates the user did not have the appropriate permissions. For more information, /// see Granting /// a User Permissions to Pass a Role to an Amazon Web Services Service. /// /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// The ARN of the role that you specified does not exist. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for AssociateDRTLogBucket Operation public virtual Task AssociateDRTLogBucketAsync(AssociateDRTLogBucketRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateDRTLogBucketRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateDRTLogBucketResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region AssociateDRTRole /// /// Authorizes the Shield Response Team (SRT) using the specified role, to access your /// Amazon Web Services account to assist with DDoS attack mitigation during potential /// attacks. This enables the SRT to inspect your WAF configuration and create or update /// WAF rules and web ACLs. /// /// /// /// You can associate only one RoleArn with your subscription. If you submit /// an AssociateDRTRole request for an account that already has an associated /// role, the new RoleArn will replace the existing RoleArn. /// /// /// /// /// Prior to making the AssociateDRTRole request, you must attach the AWSShieldDRTAccessPolicy /// managed policy to the role that you'll specify in the request. You can access this /// policy in the IAM console at AWSShieldDRTAccessPolicy. /// For more information see Adding /// and removing IAM identity permissions. The role must also trust the service principal /// drt.shield.amazonaws.com. For more information, see IAM /// JSON policy elements: Principal. /// /// /// /// The SRT will have access only to your WAF and Shield resources. By submitting this /// request, you authorize the SRT to inspect your WAF and Shield configuration and create /// and update WAF rules and web ACLs on your behalf. The SRT takes these actions only /// if explicitly authorized by you. /// /// /// /// You must have the iam:PassRole permission to make an AssociateDRTRole /// request. For more information, see Granting /// a user permissions to pass a role to an Amazon Web Services service. /// /// /// /// To use the services of the SRT and make an AssociateDRTRole request, /// you must be subscribed to the Business /// Support plan or the Enterprise /// Support plan. /// /// /// Container for the necessary parameters to execute the AssociateDRTRole service method. /// /// The response from the AssociateDRTRole service method, as returned by Shield. /// /// In order to grant the necessary access to the Shield Response Team (SRT) the user /// submitting the request must have the iam:PassRole permission. This error /// indicates the user did not have the appropriate permissions. For more information, /// see Granting /// a User Permissions to Pass a Role to an Amazon Web Services Service. /// /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for AssociateDRTRole Operation public virtual AssociateDRTRoleResponse AssociateDRTRole(AssociateDRTRoleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateDRTRoleRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateDRTRoleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Authorizes the Shield Response Team (SRT) using the specified role, to access your /// Amazon Web Services account to assist with DDoS attack mitigation during potential /// attacks. This enables the SRT to inspect your WAF configuration and create or update /// WAF rules and web ACLs. /// /// /// /// You can associate only one RoleArn with your subscription. If you submit /// an AssociateDRTRole request for an account that already has an associated /// role, the new RoleArn will replace the existing RoleArn. /// /// /// /// /// Prior to making the AssociateDRTRole request, you must attach the AWSShieldDRTAccessPolicy /// managed policy to the role that you'll specify in the request. You can access this /// policy in the IAM console at AWSShieldDRTAccessPolicy. /// For more information see Adding /// and removing IAM identity permissions. The role must also trust the service principal /// drt.shield.amazonaws.com. For more information, see IAM /// JSON policy elements: Principal. /// /// /// /// The SRT will have access only to your WAF and Shield resources. By submitting this /// request, you authorize the SRT to inspect your WAF and Shield configuration and create /// and update WAF rules and web ACLs on your behalf. The SRT takes these actions only /// if explicitly authorized by you. /// /// /// /// You must have the iam:PassRole permission to make an AssociateDRTRole /// request. For more information, see Granting /// a user permissions to pass a role to an Amazon Web Services service. /// /// /// /// To use the services of the SRT and make an AssociateDRTRole request, /// you must be subscribed to the Business /// Support plan or the Enterprise /// Support plan. /// /// /// Container for the necessary parameters to execute the AssociateDRTRole service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the AssociateDRTRole service method, as returned by Shield. /// /// In order to grant the necessary access to the Shield Response Team (SRT) the user /// submitting the request must have the iam:PassRole permission. This error /// indicates the user did not have the appropriate permissions. For more information, /// see Granting /// a User Permissions to Pass a Role to an Amazon Web Services Service. /// /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for AssociateDRTRole Operation public virtual Task AssociateDRTRoleAsync(AssociateDRTRoleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateDRTRoleRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateDRTRoleResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region AssociateHealthCheck /// /// Adds health-based detection to the Shield Advanced protection for a resource. Shield /// Advanced health-based detection uses the health of your Amazon Web Services resource /// to improve responsiveness and accuracy in attack detection and response. /// /// /// /// You define the health check in Route 53 and then associate it with your Shield Advanced /// protection. For more information, see Shield /// Advanced Health-Based Detection in the WAF Developer Guide. /// /// /// Container for the necessary parameters to execute the AssociateHealthCheck service method. /// /// The response from the AssociateHealthCheck service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for AssociateHealthCheck Operation public virtual AssociateHealthCheckResponse AssociateHealthCheck(AssociateHealthCheckRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateHealthCheckRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateHealthCheckResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Adds health-based detection to the Shield Advanced protection for a resource. Shield /// Advanced health-based detection uses the health of your Amazon Web Services resource /// to improve responsiveness and accuracy in attack detection and response. /// /// /// /// You define the health check in Route 53 and then associate it with your Shield Advanced /// protection. For more information, see Shield /// Advanced Health-Based Detection in the WAF Developer Guide. /// /// /// Container for the necessary parameters to execute the AssociateHealthCheck service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the AssociateHealthCheck service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for AssociateHealthCheck Operation public virtual Task AssociateHealthCheckAsync(AssociateHealthCheckRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateHealthCheckRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateHealthCheckResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region AssociateProactiveEngagementDetails /// /// Initializes proactive engagement and sets the list of contacts for the Shield Response /// Team (SRT) to use. You must provide at least one phone number in the emergency contact /// list. /// /// /// /// After you have initialized proactive engagement using this call, to disable or enable /// proactive engagement, use the calls DisableProactiveEngagement and EnableProactiveEngagement. /// /// /// /// /// This call defines the list of email addresses and phone numbers that the SRT can use /// to contact you for escalations to the SRT and to initiate proactive customer support. /// /// /// /// The contacts that you provide in the request replace any contacts that were already /// defined. If you already have contacts defined and want to use them, retrieve the list /// using DescribeEmergencyContactSettings and then provide it to this call. /// /// /// /// /// Container for the necessary parameters to execute the AssociateProactiveEngagementDetails service method. /// /// The response from the AssociateProactiveEngagementDetails service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for AssociateProactiveEngagementDetails Operation public virtual AssociateProactiveEngagementDetailsResponse AssociateProactiveEngagementDetails(AssociateProactiveEngagementDetailsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateProactiveEngagementDetailsRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateProactiveEngagementDetailsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initializes proactive engagement and sets the list of contacts for the Shield Response /// Team (SRT) to use. You must provide at least one phone number in the emergency contact /// list. /// /// /// /// After you have initialized proactive engagement using this call, to disable or enable /// proactive engagement, use the calls DisableProactiveEngagement and EnableProactiveEngagement. /// /// /// /// /// This call defines the list of email addresses and phone numbers that the SRT can use /// to contact you for escalations to the SRT and to initiate proactive customer support. /// /// /// /// The contacts that you provide in the request replace any contacts that were already /// defined. If you already have contacts defined and want to use them, retrieve the list /// using DescribeEmergencyContactSettings and then provide it to this call. /// /// /// /// /// Container for the necessary parameters to execute the AssociateProactiveEngagementDetails service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the AssociateProactiveEngagementDetails service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for AssociateProactiveEngagementDetails Operation public virtual Task AssociateProactiveEngagementDetailsAsync(AssociateProactiveEngagementDetailsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateProactiveEngagementDetailsRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateProactiveEngagementDetailsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region CreateProtection /// /// Enables Shield Advanced for a specific Amazon Web Services resource. The resource /// can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, Global Accelerator /// standard accelerator, Elastic IP Address, Application Load Balancer, or a Classic /// Load Balancer. You can protect Amazon EC2 instances and Network Load Balancers by /// association with protected Amazon EC2 Elastic IP addresses. /// /// /// /// You can add protection to only a single resource with each CreateProtection /// request. You can add protection to multiple resources at once through the Shield Advanced /// console at https://console.aws.amazon.com/wafv2/shieldv2#/. /// For more information see Getting /// Started with Shield Advanced and Adding /// Shield Advanced protection to Amazon Web Services resources. /// /// /// Container for the necessary parameters to execute the CreateProtection service method. /// /// The response from the CreateProtection service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource already exists. If available, this exception /// includes details in additional properties. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for CreateProtection Operation public virtual CreateProtectionResponse CreateProtection(CreateProtectionRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateProtectionRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateProtectionResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Enables Shield Advanced for a specific Amazon Web Services resource. The resource /// can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, Global Accelerator /// standard accelerator, Elastic IP Address, Application Load Balancer, or a Classic /// Load Balancer. You can protect Amazon EC2 instances and Network Load Balancers by /// association with protected Amazon EC2 Elastic IP addresses. /// /// /// /// You can add protection to only a single resource with each CreateProtection /// request. You can add protection to multiple resources at once through the Shield Advanced /// console at https://console.aws.amazon.com/wafv2/shieldv2#/. /// For more information see Getting /// Started with Shield Advanced and Adding /// Shield Advanced protection to Amazon Web Services resources. /// /// /// Container for the necessary parameters to execute the CreateProtection service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateProtection service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource already exists. If available, this exception /// includes details in additional properties. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for CreateProtection Operation public virtual Task CreateProtectionAsync(CreateProtectionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateProtectionRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateProtectionResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region CreateProtectionGroup /// /// Creates a grouping of protected resources so they can be handled as a collective. /// This resource grouping improves the accuracy of detection and reduces false positives. /// /// Container for the necessary parameters to execute the CreateProtectionGroup service method. /// /// The response from the CreateProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource already exists. If available, this exception /// includes details in additional properties. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for CreateProtectionGroup Operation public virtual CreateProtectionGroupResponse CreateProtectionGroup(CreateProtectionGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateProtectionGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Creates a grouping of protected resources so they can be handled as a collective. /// This resource grouping improves the accuracy of detection and reduces false positives. /// /// Container for the necessary parameters to execute the CreateProtectionGroup service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource already exists. If available, this exception /// includes details in additional properties. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for CreateProtectionGroup Operation public virtual Task CreateProtectionGroupAsync(CreateProtectionGroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateProtectionGroupResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region CreateSubscription /// /// Activates Shield Advanced for an account. /// /// /// /// For accounts that are members of an Organizations organization, Shield Advanced subscriptions /// are billed against the organization's payer account, regardless of whether the payer /// account itself is subscribed. /// /// /// /// When you initially create a subscription, your subscription is set to be automatically /// renewed at the end of the existing subscription period. You can change this by submitting /// an UpdateSubscription request. /// /// /// Container for the necessary parameters to execute the CreateSubscription service method. /// /// The response from the CreateSubscription service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource already exists. If available, this exception /// includes details in additional properties. /// /// REST API Reference for CreateSubscription Operation public virtual CreateSubscriptionResponse CreateSubscription(CreateSubscriptionRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateSubscriptionRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateSubscriptionResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Activates Shield Advanced for an account. /// /// /// /// For accounts that are members of an Organizations organization, Shield Advanced subscriptions /// are billed against the organization's payer account, regardless of whether the payer /// account itself is subscribed. /// /// /// /// When you initially create a subscription, your subscription is set to be automatically /// renewed at the end of the existing subscription period. You can change this by submitting /// an UpdateSubscription request. /// /// /// Container for the necessary parameters to execute the CreateSubscription service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateSubscription service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource already exists. If available, this exception /// includes details in additional properties. /// /// REST API Reference for CreateSubscription Operation public virtual Task CreateSubscriptionAsync(CreateSubscriptionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateSubscriptionRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateSubscriptionResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DeleteProtection /// /// Deletes an Shield Advanced Protection. /// /// Container for the necessary parameters to execute the DeleteProtection service method. /// /// The response from the DeleteProtection service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DeleteProtection Operation public virtual DeleteProtectionResponse DeleteProtection(DeleteProtectionRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteProtectionRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteProtectionResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Deletes an Shield Advanced Protection. /// /// Container for the necessary parameters to execute the DeleteProtection service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DeleteProtection service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DeleteProtection Operation public virtual Task DeleteProtectionAsync(DeleteProtectionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteProtectionRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteProtectionResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DeleteProtectionGroup /// /// Removes the specified protection group. /// /// Container for the necessary parameters to execute the DeleteProtectionGroup service method. /// /// The response from the DeleteProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DeleteProtectionGroup Operation public virtual DeleteProtectionGroupResponse DeleteProtectionGroup(DeleteProtectionGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteProtectionGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Removes the specified protection group. /// /// Container for the necessary parameters to execute the DeleteProtectionGroup service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DeleteProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DeleteProtectionGroup Operation public virtual Task DeleteProtectionGroupAsync(DeleteProtectionGroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteProtectionGroupResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DeleteSubscription /// /// Removes Shield Advanced from an account. Shield Advanced requires a 1-year subscription /// commitment. You cannot delete a subscription prior to the completion of that commitment. /// /// Container for the necessary parameters to execute the DeleteSubscription service method. /// /// The response from the DeleteSubscription service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// You are trying to update a subscription that has not yet completed the 1-year commitment. /// You can change the AutoRenew parameter during the last 30 days of your /// subscription. This exception indicates that you are attempting to change AutoRenew /// prior to that period. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DeleteSubscription Operation [Obsolete("Use UpdateSubscription operation to disable automatic subscription renewal instead.")] public virtual DeleteSubscriptionResponse DeleteSubscription(DeleteSubscriptionRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteSubscriptionRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteSubscriptionResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Removes Shield Advanced from an account. Shield Advanced requires a 1-year subscription /// commitment. You cannot delete a subscription prior to the completion of that commitment. /// /// Container for the necessary parameters to execute the DeleteSubscription service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DeleteSubscription service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// You are trying to update a subscription that has not yet completed the 1-year commitment. /// You can change the AutoRenew parameter during the last 30 days of your /// subscription. This exception indicates that you are attempting to change AutoRenew /// prior to that period. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DeleteSubscription Operation [Obsolete("Use UpdateSubscription operation to disable automatic subscription renewal instead.")] public virtual Task DeleteSubscriptionAsync(DeleteSubscriptionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteSubscriptionRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteSubscriptionResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DescribeAttack /// /// Describes the details of a DDoS attack. /// /// Container for the necessary parameters to execute the DescribeAttack service method. /// /// The response from the DescribeAttack service method, as returned by Shield. /// /// Exception that indicates the specified AttackId does not exist, or the /// requester does not have the appropriate permissions to access the AttackId. /// /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// REST API Reference for DescribeAttack Operation public virtual DescribeAttackResponse DescribeAttack(DescribeAttackRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeAttackRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeAttackResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Describes the details of a DDoS attack. /// /// Container for the necessary parameters to execute the DescribeAttack service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DescribeAttack service method, as returned by Shield. /// /// Exception that indicates the specified AttackId does not exist, or the /// requester does not have the appropriate permissions to access the AttackId. /// /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// REST API Reference for DescribeAttack Operation public virtual Task DescribeAttackAsync(DescribeAttackRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeAttackRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeAttackResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DescribeAttackStatistics /// /// Provides information about the number and type of attacks Shield has detected in the /// last year for all resources that belong to your account, regardless of whether you've /// defined Shield protections for them. This operation is available to Shield customers /// as well as to Shield Advanced customers. /// /// /// /// The operation returns data for the time range of midnight UTC, one year ago, to midnight /// UTC, today. For example, if the current time is 2020-10-26 15:39:32 PDT, /// equal to 2020-10-26 22:39:32 UTC, then the time range for the attack /// data returned is from 2019-10-26 00:00:00 UTC to 2020-10-26 00:00:00 /// UTC. /// /// /// /// The time range indicates the period covered by the attack statistics data items. /// /// /// Container for the necessary parameters to execute the DescribeAttackStatistics service method. /// /// The response from the DescribeAttackStatistics service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// REST API Reference for DescribeAttackStatistics Operation public virtual DescribeAttackStatisticsResponse DescribeAttackStatistics(DescribeAttackStatisticsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeAttackStatisticsRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeAttackStatisticsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Provides information about the number and type of attacks Shield has detected in the /// last year for all resources that belong to your account, regardless of whether you've /// defined Shield protections for them. This operation is available to Shield customers /// as well as to Shield Advanced customers. /// /// /// /// The operation returns data for the time range of midnight UTC, one year ago, to midnight /// UTC, today. For example, if the current time is 2020-10-26 15:39:32 PDT, /// equal to 2020-10-26 22:39:32 UTC, then the time range for the attack /// data returned is from 2019-10-26 00:00:00 UTC to 2020-10-26 00:00:00 /// UTC. /// /// /// /// The time range indicates the period covered by the attack statistics data items. /// /// /// Container for the necessary parameters to execute the DescribeAttackStatistics service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DescribeAttackStatistics service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// REST API Reference for DescribeAttackStatistics Operation public virtual Task DescribeAttackStatisticsAsync(DescribeAttackStatisticsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeAttackStatisticsRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeAttackStatisticsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DescribeDRTAccess /// /// Returns the current role and list of Amazon S3 log buckets used by the Shield Response /// Team (SRT) to access your Amazon Web Services account while assisting with attack /// mitigation. /// /// Container for the necessary parameters to execute the DescribeDRTAccess service method. /// /// The response from the DescribeDRTAccess service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeDRTAccess Operation public virtual DescribeDRTAccessResponse DescribeDRTAccess(DescribeDRTAccessRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeDRTAccessRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeDRTAccessResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Returns the current role and list of Amazon S3 log buckets used by the Shield Response /// Team (SRT) to access your Amazon Web Services account while assisting with attack /// mitigation. /// /// Container for the necessary parameters to execute the DescribeDRTAccess service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DescribeDRTAccess service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeDRTAccess Operation public virtual Task DescribeDRTAccessAsync(DescribeDRTAccessRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeDRTAccessRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeDRTAccessResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DescribeEmergencyContactSettings /// /// A list of email addresses and phone numbers that the Shield Response Team (SRT) can /// use to contact you if you have proactive engagement enabled, for escalations to the /// SRT and to initiate proactive customer support. /// /// Container for the necessary parameters to execute the DescribeEmergencyContactSettings service method. /// /// The response from the DescribeEmergencyContactSettings service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeEmergencyContactSettings Operation public virtual DescribeEmergencyContactSettingsResponse DescribeEmergencyContactSettings(DescribeEmergencyContactSettingsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeEmergencyContactSettingsRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeEmergencyContactSettingsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// A list of email addresses and phone numbers that the Shield Response Team (SRT) can /// use to contact you if you have proactive engagement enabled, for escalations to the /// SRT and to initiate proactive customer support. /// /// Container for the necessary parameters to execute the DescribeEmergencyContactSettings service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DescribeEmergencyContactSettings service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeEmergencyContactSettings Operation public virtual Task DescribeEmergencyContactSettingsAsync(DescribeEmergencyContactSettingsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeEmergencyContactSettingsRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeEmergencyContactSettingsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DescribeProtection /// /// Lists the details of a Protection object. /// /// Container for the necessary parameters to execute the DescribeProtection service method. /// /// The response from the DescribeProtection service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeProtection Operation public virtual DescribeProtectionResponse DescribeProtection(DescribeProtectionRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeProtectionRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeProtectionResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Lists the details of a Protection object. /// /// Container for the necessary parameters to execute the DescribeProtection service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DescribeProtection service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeProtection Operation public virtual Task DescribeProtectionAsync(DescribeProtectionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeProtectionRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeProtectionResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DescribeProtectionGroup /// /// Returns the specification for the specified protection group. /// /// Container for the necessary parameters to execute the DescribeProtectionGroup service method. /// /// The response from the DescribeProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeProtectionGroup Operation public virtual DescribeProtectionGroupResponse DescribeProtectionGroup(DescribeProtectionGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeProtectionGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Returns the specification for the specified protection group. /// /// Container for the necessary parameters to execute the DescribeProtectionGroup service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DescribeProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeProtectionGroup Operation public virtual Task DescribeProtectionGroupAsync(DescribeProtectionGroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeProtectionGroupResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DescribeSubscription /// /// Provides details about the Shield Advanced subscription for an account. /// /// Container for the necessary parameters to execute the DescribeSubscription service method. /// /// The response from the DescribeSubscription service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeSubscription Operation public virtual DescribeSubscriptionResponse DescribeSubscription(DescribeSubscriptionRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeSubscriptionRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeSubscriptionResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Provides details about the Shield Advanced subscription for an account. /// /// Container for the necessary parameters to execute the DescribeSubscription service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DescribeSubscription service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DescribeSubscription Operation public virtual Task DescribeSubscriptionAsync(DescribeSubscriptionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DescribeSubscriptionRequestMarshaller.Instance; options.ResponseUnmarshaller = DescribeSubscriptionResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DisableApplicationLayerAutomaticResponse /// /// Disable the Shield Advanced automatic application layer DDoS mitigation feature for /// the protected resource. This stops Shield Advanced from creating, verifying, and applying /// WAF rules for attacks that it detects for the resource. /// /// Container for the necessary parameters to execute the DisableApplicationLayerAutomaticResponse service method. /// /// The response from the DisableApplicationLayerAutomaticResponse service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisableApplicationLayerAutomaticResponse Operation public virtual DisableApplicationLayerAutomaticResponseResponse DisableApplicationLayerAutomaticResponse(DisableApplicationLayerAutomaticResponseRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DisableApplicationLayerAutomaticResponseRequestMarshaller.Instance; options.ResponseUnmarshaller = DisableApplicationLayerAutomaticResponseResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Disable the Shield Advanced automatic application layer DDoS mitigation feature for /// the protected resource. This stops Shield Advanced from creating, verifying, and applying /// WAF rules for attacks that it detects for the resource. /// /// Container for the necessary parameters to execute the DisableApplicationLayerAutomaticResponse service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DisableApplicationLayerAutomaticResponse service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisableApplicationLayerAutomaticResponse Operation public virtual Task DisableApplicationLayerAutomaticResponseAsync(DisableApplicationLayerAutomaticResponseRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DisableApplicationLayerAutomaticResponseRequestMarshaller.Instance; options.ResponseUnmarshaller = DisableApplicationLayerAutomaticResponseResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DisableProactiveEngagement /// /// Removes authorization from the Shield Response Team (SRT) to notify contacts about /// escalations to the SRT and to initiate proactive customer support. /// /// Container for the necessary parameters to execute the DisableProactiveEngagement service method. /// /// The response from the DisableProactiveEngagement service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisableProactiveEngagement Operation public virtual DisableProactiveEngagementResponse DisableProactiveEngagement(DisableProactiveEngagementRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DisableProactiveEngagementRequestMarshaller.Instance; options.ResponseUnmarshaller = DisableProactiveEngagementResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Removes authorization from the Shield Response Team (SRT) to notify contacts about /// escalations to the SRT and to initiate proactive customer support. /// /// Container for the necessary parameters to execute the DisableProactiveEngagement service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DisableProactiveEngagement service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisableProactiveEngagement Operation public virtual Task DisableProactiveEngagementAsync(DisableProactiveEngagementRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DisableProactiveEngagementRequestMarshaller.Instance; options.ResponseUnmarshaller = DisableProactiveEngagementResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DisassociateDRTLogBucket /// /// Removes the Shield Response Team's (SRT) access to the specified Amazon S3 bucket /// containing the logs that you shared previously. /// /// Container for the necessary parameters to execute the DisassociateDRTLogBucket service method. /// /// The response from the DisassociateDRTLogBucket service method, as returned by Shield. /// /// In order to grant the necessary access to the Shield Response Team (SRT) the user /// submitting the request must have the iam:PassRole permission. This error /// indicates the user did not have the appropriate permissions. For more information, /// see Granting /// a User Permissions to Pass a Role to an Amazon Web Services Service. /// /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// The ARN of the role that you specified does not exist. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisassociateDRTLogBucket Operation public virtual DisassociateDRTLogBucketResponse DisassociateDRTLogBucket(DisassociateDRTLogBucketRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DisassociateDRTLogBucketRequestMarshaller.Instance; options.ResponseUnmarshaller = DisassociateDRTLogBucketResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Removes the Shield Response Team's (SRT) access to the specified Amazon S3 bucket /// containing the logs that you shared previously. /// /// Container for the necessary parameters to execute the DisassociateDRTLogBucket service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DisassociateDRTLogBucket service method, as returned by Shield. /// /// In order to grant the necessary access to the Shield Response Team (SRT) the user /// submitting the request must have the iam:PassRole permission. This error /// indicates the user did not have the appropriate permissions. For more information, /// see Granting /// a User Permissions to Pass a Role to an Amazon Web Services Service. /// /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// The ARN of the role that you specified does not exist. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisassociateDRTLogBucket Operation public virtual Task DisassociateDRTLogBucketAsync(DisassociateDRTLogBucketRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DisassociateDRTLogBucketRequestMarshaller.Instance; options.ResponseUnmarshaller = DisassociateDRTLogBucketResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DisassociateDRTRole /// /// Removes the Shield Response Team's (SRT) access to your Amazon Web Services account. /// /// Container for the necessary parameters to execute the DisassociateDRTRole service method. /// /// The response from the DisassociateDRTRole service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisassociateDRTRole Operation public virtual DisassociateDRTRoleResponse DisassociateDRTRole(DisassociateDRTRoleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DisassociateDRTRoleRequestMarshaller.Instance; options.ResponseUnmarshaller = DisassociateDRTRoleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Removes the Shield Response Team's (SRT) access to your Amazon Web Services account. /// /// Container for the necessary parameters to execute the DisassociateDRTRole service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DisassociateDRTRole service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisassociateDRTRole Operation public virtual Task DisassociateDRTRoleAsync(DisassociateDRTRoleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DisassociateDRTRoleRequestMarshaller.Instance; options.ResponseUnmarshaller = DisassociateDRTRoleResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DisassociateHealthCheck /// /// Removes health-based detection from the Shield Advanced protection for a resource. /// Shield Advanced health-based detection uses the health of your Amazon Web Services /// resource to improve responsiveness and accuracy in attack detection and response. /// /// /// /// /// You define the health check in Route 53 and then associate or disassociate it with /// your Shield Advanced protection. For more information, see Shield /// Advanced Health-Based Detection in the WAF Developer Guide. /// /// /// Container for the necessary parameters to execute the DisassociateHealthCheck service method. /// /// The response from the DisassociateHealthCheck service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisassociateHealthCheck Operation public virtual DisassociateHealthCheckResponse DisassociateHealthCheck(DisassociateHealthCheckRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DisassociateHealthCheckRequestMarshaller.Instance; options.ResponseUnmarshaller = DisassociateHealthCheckResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Removes health-based detection from the Shield Advanced protection for a resource. /// Shield Advanced health-based detection uses the health of your Amazon Web Services /// resource to improve responsiveness and accuracy in attack detection and response. /// /// /// /// /// You define the health check in Route 53 and then associate or disassociate it with /// your Shield Advanced protection. For more information, see Shield /// Advanced Health-Based Detection in the WAF Developer Guide. /// /// /// Container for the necessary parameters to execute the DisassociateHealthCheck service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DisassociateHealthCheck service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for DisassociateHealthCheck Operation public virtual Task DisassociateHealthCheckAsync(DisassociateHealthCheckRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DisassociateHealthCheckRequestMarshaller.Instance; options.ResponseUnmarshaller = DisassociateHealthCheckResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region EnableApplicationLayerAutomaticResponse /// /// Enable the Shield Advanced automatic application layer DDoS mitigation for the protected /// resource. /// /// /// /// This feature is available for Amazon CloudFront distributions and Application Load /// Balancers only. /// /// /// /// This causes Shield Advanced to create, verify, and apply WAF rules for DDoS attacks /// that it detects for the resource. Shield Advanced applies the rules in a Shield rule /// group inside the web ACL that you've associated with the resource. For information /// about how automatic mitigation works and the requirements for using it, see Shield /// Advanced automatic application layer DDoS mitigation. /// /// /// /// Don't use this action to make changes to automatic mitigation settings when it's already /// enabled for a resource. Instead, use UpdateApplicationLayerAutomaticResponse. /// /// /// /// To use this feature, you must associate a web ACL with the protected resource. The /// web ACL must be created using the latest version of WAF (v2). You can associate the /// web ACL through the Shield Advanced console at https://console.aws.amazon.com/wafv2/shieldv2#/. /// For more information, see Getting /// Started with Shield Advanced. You can also associate the web ACL to the resource /// through the WAF console or the WAF API, but you must manage Shield Advanced automatic /// mitigation through Shield Advanced. For information about WAF, see WAF /// Developer Guide. /// /// /// Container for the necessary parameters to execute the EnableApplicationLayerAutomaticResponse service method. /// /// The response from the EnableApplicationLayerAutomaticResponse service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for EnableApplicationLayerAutomaticResponse Operation public virtual EnableApplicationLayerAutomaticResponseResponse EnableApplicationLayerAutomaticResponse(EnableApplicationLayerAutomaticResponseRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = EnableApplicationLayerAutomaticResponseRequestMarshaller.Instance; options.ResponseUnmarshaller = EnableApplicationLayerAutomaticResponseResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Enable the Shield Advanced automatic application layer DDoS mitigation for the protected /// resource. /// /// /// /// This feature is available for Amazon CloudFront distributions and Application Load /// Balancers only. /// /// /// /// This causes Shield Advanced to create, verify, and apply WAF rules for DDoS attacks /// that it detects for the resource. Shield Advanced applies the rules in a Shield rule /// group inside the web ACL that you've associated with the resource. For information /// about how automatic mitigation works and the requirements for using it, see Shield /// Advanced automatic application layer DDoS mitigation. /// /// /// /// Don't use this action to make changes to automatic mitigation settings when it's already /// enabled for a resource. Instead, use UpdateApplicationLayerAutomaticResponse. /// /// /// /// To use this feature, you must associate a web ACL with the protected resource. The /// web ACL must be created using the latest version of WAF (v2). You can associate the /// web ACL through the Shield Advanced console at https://console.aws.amazon.com/wafv2/shieldv2#/. /// For more information, see Getting /// Started with Shield Advanced. You can also associate the web ACL to the resource /// through the WAF console or the WAF API, but you must manage Shield Advanced automatic /// mitigation through Shield Advanced. For information about WAF, see WAF /// Developer Guide. /// /// /// Container for the necessary parameters to execute the EnableApplicationLayerAutomaticResponse service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the EnableApplicationLayerAutomaticResponse service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the operation would exceed a limit. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for EnableApplicationLayerAutomaticResponse Operation public virtual Task EnableApplicationLayerAutomaticResponseAsync(EnableApplicationLayerAutomaticResponseRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = EnableApplicationLayerAutomaticResponseRequestMarshaller.Instance; options.ResponseUnmarshaller = EnableApplicationLayerAutomaticResponseResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region EnableProactiveEngagement /// /// Authorizes the Shield Response Team (SRT) to use email and phone to notify contacts /// about escalations to the SRT and to initiate proactive customer support. /// /// Container for the necessary parameters to execute the EnableProactiveEngagement service method. /// /// The response from the EnableProactiveEngagement service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for EnableProactiveEngagement Operation public virtual EnableProactiveEngagementResponse EnableProactiveEngagement(EnableProactiveEngagementRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = EnableProactiveEngagementRequestMarshaller.Instance; options.ResponseUnmarshaller = EnableProactiveEngagementResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Authorizes the Shield Response Team (SRT) to use email and phone to notify contacts /// about escalations to the SRT and to initiate proactive customer support. /// /// Container for the necessary parameters to execute the EnableProactiveEngagement service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the EnableProactiveEngagement service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for EnableProactiveEngagement Operation public virtual Task EnableProactiveEngagementAsync(EnableProactiveEngagementRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = EnableProactiveEngagementRequestMarshaller.Instance; options.ResponseUnmarshaller = EnableProactiveEngagementResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetSubscriptionState /// /// Returns the SubscriptionState, either Active or Inactive. /// /// Container for the necessary parameters to execute the GetSubscriptionState service method. /// /// The response from the GetSubscriptionState service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// REST API Reference for GetSubscriptionState Operation public virtual GetSubscriptionStateResponse GetSubscriptionState(GetSubscriptionStateRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetSubscriptionStateRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSubscriptionStateResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Returns the SubscriptionState, either Active or Inactive. /// /// Container for the necessary parameters to execute the GetSubscriptionState service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetSubscriptionState service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// REST API Reference for GetSubscriptionState Operation public virtual Task GetSubscriptionStateAsync(GetSubscriptionStateRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetSubscriptionStateRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSubscriptionStateResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListAttacks /// /// Returns all ongoing DDoS attacks or all DDoS attacks during a specified time period. /// /// Container for the necessary parameters to execute the ListAttacks service method. /// /// The response from the ListAttacks service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// REST API Reference for ListAttacks Operation public virtual ListAttacksResponse ListAttacks(ListAttacksRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListAttacksRequestMarshaller.Instance; options.ResponseUnmarshaller = ListAttacksResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Returns all ongoing DDoS attacks or all DDoS attacks during a specified time period. /// /// Container for the necessary parameters to execute the ListAttacks service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListAttacks service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// REST API Reference for ListAttacks Operation public virtual Task ListAttacksAsync(ListAttacksRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListAttacksRequestMarshaller.Instance; options.ResponseUnmarshaller = ListAttacksResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListProtectionGroups /// /// Retrieves ProtectionGroup objects for the account. You can retrieve all protection /// groups or you can provide filtering criteria and retrieve just the subset of protection /// groups that match the criteria. /// /// Container for the necessary parameters to execute the ListProtectionGroups service method. /// /// The response from the ListProtectionGroups service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the NextToken specified in the request /// is invalid. Submit the request using the NextToken value that was returned /// in the prior response. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for ListProtectionGroups Operation public virtual ListProtectionGroupsResponse ListProtectionGroups(ListProtectionGroupsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListProtectionGroupsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListProtectionGroupsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves ProtectionGroup objects for the account. You can retrieve all protection /// groups or you can provide filtering criteria and retrieve just the subset of protection /// groups that match the criteria. /// /// Container for the necessary parameters to execute the ListProtectionGroups service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListProtectionGroups service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the NextToken specified in the request /// is invalid. Submit the request using the NextToken value that was returned /// in the prior response. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for ListProtectionGroups Operation public virtual Task ListProtectionGroupsAsync(ListProtectionGroupsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListProtectionGroupsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListProtectionGroupsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListProtections /// /// Retrieves Protection objects for the account. You can retrieve all protections /// or you can provide filtering criteria and retrieve just the subset of protections /// that match the criteria. /// /// Container for the necessary parameters to execute the ListProtections service method. /// /// The response from the ListProtections service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the NextToken specified in the request /// is invalid. Submit the request using the NextToken value that was returned /// in the prior response. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for ListProtections Operation public virtual ListProtectionsResponse ListProtections(ListProtectionsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListProtectionsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListProtectionsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves Protection objects for the account. You can retrieve all protections /// or you can provide filtering criteria and retrieve just the subset of protections /// that match the criteria. /// /// Container for the necessary parameters to execute the ListProtections service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListProtections service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the NextToken specified in the request /// is invalid. Submit the request using the NextToken value that was returned /// in the prior response. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for ListProtections Operation public virtual Task ListProtectionsAsync(ListProtectionsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListProtectionsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListProtectionsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListResourcesInProtectionGroup /// /// Retrieves the resources that are included in the protection group. /// /// Container for the necessary parameters to execute the ListResourcesInProtectionGroup service method. /// /// The response from the ListResourcesInProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the NextToken specified in the request /// is invalid. Submit the request using the NextToken value that was returned /// in the prior response. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for ListResourcesInProtectionGroup Operation public virtual ListResourcesInProtectionGroupResponse ListResourcesInProtectionGroup(ListResourcesInProtectionGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListResourcesInProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = ListResourcesInProtectionGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves the resources that are included in the protection group. /// /// Container for the necessary parameters to execute the ListResourcesInProtectionGroup service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListResourcesInProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the NextToken specified in the request /// is invalid. Submit the request using the NextToken value that was returned /// in the prior response. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for ListResourcesInProtectionGroup Operation public virtual Task ListResourcesInProtectionGroupAsync(ListResourcesInProtectionGroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListResourcesInProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = ListResourcesInProtectionGroupResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListTagsForResource /// /// Gets information about Amazon Web Services tags for a specified Amazon Resource Name /// (ARN) in Shield. /// /// Container for the necessary parameters to execute the ListTagsForResource service method. /// /// The response from the ListTagsForResource service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for ListTagsForResource Operation public virtual ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Gets information about Amazon Web Services tags for a specified Amazon Resource Name /// (ARN) in Shield. /// /// Container for the necessary parameters to execute the ListTagsForResource service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListTagsForResource service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for ListTagsForResource Operation public virtual Task ListTagsForResourceAsync(ListTagsForResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region TagResource /// /// Adds or updates tags for a resource in Shield. /// /// Container for the necessary parameters to execute the TagResource service method. /// /// The response from the TagResource service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for TagResource Operation public virtual TagResourceResponse TagResource(TagResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = TagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Adds or updates tags for a resource in Shield. /// /// Container for the necessary parameters to execute the TagResource service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the TagResource service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for TagResource Operation public virtual Task TagResourceAsync(TagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = TagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UntagResource /// /// Removes tags from a resource in Shield. /// /// Container for the necessary parameters to execute the UntagResource service method. /// /// The response from the UntagResource service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UntagResource Operation public virtual UntagResourceResponse UntagResource(UntagResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UntagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Removes tags from a resource in Shield. /// /// Container for the necessary parameters to execute the UntagResource service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UntagResource service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource is invalid. You might not have access to /// the resource, or the resource might not exist. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UntagResource Operation public virtual Task UntagResourceAsync(UntagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UntagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateApplicationLayerAutomaticResponse /// /// Updates an existing Shield Advanced automatic application layer DDoS mitigation configuration /// for the specified resource. /// /// Container for the necessary parameters to execute the UpdateApplicationLayerAutomaticResponse service method. /// /// The response from the UpdateApplicationLayerAutomaticResponse service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UpdateApplicationLayerAutomaticResponse Operation public virtual UpdateApplicationLayerAutomaticResponseResponse UpdateApplicationLayerAutomaticResponse(UpdateApplicationLayerAutomaticResponseRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateApplicationLayerAutomaticResponseRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateApplicationLayerAutomaticResponseResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates an existing Shield Advanced automatic application layer DDoS mitigation configuration /// for the specified resource. /// /// Container for the necessary parameters to execute the UpdateApplicationLayerAutomaticResponse service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateApplicationLayerAutomaticResponse service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the operation would not cause any change to occur. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UpdateApplicationLayerAutomaticResponse Operation public virtual Task UpdateApplicationLayerAutomaticResponseAsync(UpdateApplicationLayerAutomaticResponseRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateApplicationLayerAutomaticResponseRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateApplicationLayerAutomaticResponseResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateEmergencyContactSettings /// /// Updates the details of the list of email addresses and phone numbers that the Shield /// Response Team (SRT) can use to contact you if you have proactive engagement enabled, /// for escalations to the SRT and to initiate proactive customer support. /// /// Container for the necessary parameters to execute the UpdateEmergencyContactSettings service method. /// /// The response from the UpdateEmergencyContactSettings service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UpdateEmergencyContactSettings Operation public virtual UpdateEmergencyContactSettingsResponse UpdateEmergencyContactSettings(UpdateEmergencyContactSettingsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateEmergencyContactSettingsRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateEmergencyContactSettingsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates the details of the list of email addresses and phone numbers that the Shield /// Response Team (SRT) can use to contact you if you have proactive engagement enabled, /// for escalations to the SRT and to initiate proactive customer support. /// /// Container for the necessary parameters to execute the UpdateEmergencyContactSettings service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateEmergencyContactSettings service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UpdateEmergencyContactSettings Operation public virtual Task UpdateEmergencyContactSettingsAsync(UpdateEmergencyContactSettingsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateEmergencyContactSettingsRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateEmergencyContactSettingsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateProtectionGroup /// /// Updates an existing protection group. A protection group is a grouping of protected /// resources so they can be handled as a collective. This resource grouping improves /// the accuracy of detection and reduces false positives. /// /// Container for the necessary parameters to execute the UpdateProtectionGroup service method. /// /// The response from the UpdateProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UpdateProtectionGroup Operation public virtual UpdateProtectionGroupResponse UpdateProtectionGroup(UpdateProtectionGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateProtectionGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates an existing protection group. A protection group is a grouping of protected /// resources so they can be handled as a collective. This resource grouping improves /// the accuracy of detection and reduces false positives. /// /// Container for the necessary parameters to execute the UpdateProtectionGroup service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateProtectionGroup service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UpdateProtectionGroup Operation public virtual Task UpdateProtectionGroupAsync(UpdateProtectionGroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateProtectionGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateProtectionGroupResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateSubscription /// /// Updates the details of an existing subscription. Only enter values for parameters /// you want to change. Empty parameters are not updated. /// /// /// /// For accounts that are members of an Organizations organization, Shield Advanced subscriptions /// are billed against the organization's payer account, regardless of whether the payer /// account itself is subscribed. /// /// /// /// Container for the necessary parameters to execute the UpdateSubscription service method. /// /// The response from the UpdateSubscription service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// You are trying to update a subscription that has not yet completed the 1-year commitment. /// You can change the AutoRenew parameter during the last 30 days of your /// subscription. This exception indicates that you are attempting to change AutoRenew /// prior to that period. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UpdateSubscription Operation public virtual UpdateSubscriptionResponse UpdateSubscription(UpdateSubscriptionRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateSubscriptionRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateSubscriptionResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates the details of an existing subscription. Only enter values for parameters /// you want to change. Empty parameters are not updated. /// /// /// /// For accounts that are members of an Organizations organization, Shield Advanced subscriptions /// are billed against the organization's payer account, regardless of whether the payer /// account itself is subscribed. /// /// /// /// Container for the necessary parameters to execute the UpdateSubscription service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateSubscription service method, as returned by Shield. /// /// Exception that indicates that a problem occurred with the service infrastructure. /// You can retry the request. /// /// /// Exception that indicates that the parameters passed to the API are invalid. If available, /// this exception includes details in additional properties. /// /// /// You are trying to update a subscription that has not yet completed the 1-year commitment. /// You can change the AutoRenew parameter during the last 30 days of your /// subscription. This exception indicates that you are attempting to change AutoRenew /// prior to that period. /// /// /// Exception that indicates that the resource state has been modified by another client. /// Retrieve the resource and then retry your request. /// /// /// Exception indicating the specified resource does not exist. If available, this exception /// includes details in additional properties. /// /// REST API Reference for UpdateSubscription Operation public virtual Task UpdateSubscriptionAsync(UpdateSubscriptionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateSubscriptionRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateSubscriptionResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion } }