/*
* 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
}
}