// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package shield import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) const opAssociateDRTLogBucket = "AssociateDRTLogBucket" // AssociateDRTLogBucketRequest generates a "aws/request.Request" representing the // client's request for the AssociateDRTLogBucket operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See AssociateDRTLogBucket for more information on using the AssociateDRTLogBucket // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the AssociateDRTLogBucketRequest method. // req, resp := client.AssociateDRTLogBucketRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTLogBucket func (c *Shield) AssociateDRTLogBucketRequest(input *AssociateDRTLogBucketInput) (req *request.Request, output *AssociateDRTLogBucketOutput) { op := &request.Operation{ Name: opAssociateDRTLogBucket, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssociateDRTLogBucketInput{} } output = &AssociateDRTLogBucketOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // AssociateDRTLogBucket API operation for AWS Shield. // // 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 (https://aws.amazon.com/premiumsupport/business-support/) // or the Enterprise Support plan (https://aws.amazon.com/premiumsupport/enterprise-support/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation AssociateDRTLogBucket for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidOperationException // Exception that indicates that the operation would not cause any change to // occur. // // * NoAssociatedRoleException // The ARN of the role that you specifed does not exist. // // * LimitsExceededException // Exception that indicates that the operation would exceed a limit. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * AccessDeniedForDependencyException // 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 (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTLogBucket func (c *Shield) AssociateDRTLogBucket(input *AssociateDRTLogBucketInput) (*AssociateDRTLogBucketOutput, error) { req, out := c.AssociateDRTLogBucketRequest(input) return out, req.Send() } // AssociateDRTLogBucketWithContext is the same as AssociateDRTLogBucket with the addition of // the ability to pass a context and additional request options. // // See AssociateDRTLogBucket for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) AssociateDRTLogBucketWithContext(ctx aws.Context, input *AssociateDRTLogBucketInput, opts ...request.Option) (*AssociateDRTLogBucketOutput, error) { req, out := c.AssociateDRTLogBucketRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opAssociateDRTRole = "AssociateDRTRole" // AssociateDRTRoleRequest generates a "aws/request.Request" representing the // client's request for the AssociateDRTRole operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See AssociateDRTRole for more information on using the AssociateDRTRole // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the AssociateDRTRoleRequest method. // req, resp := client.AssociateDRTRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTRole func (c *Shield) AssociateDRTRoleRequest(input *AssociateDRTRoleInput) (req *request.Request, output *AssociateDRTRoleOutput) { op := &request.Operation{ Name: opAssociateDRTRole, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssociateDRTRoleInput{} } output = &AssociateDRTRoleOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // AssociateDRTRole API operation for AWS Shield. // // 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 // (https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/service-role/AWSShieldDRTAccessPolicy) // managed policy to the role you will specify in the request. For more information // see Attaching and Detaching IAM Policies (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html). // The role must also trust the service principal drt.shield.amazonaws.com. // For more information, see IAM JSON Policy Elements: Principal (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html). // // 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 (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). // // To use the services of the SRT and make an AssociateDRTRole request, you // must be subscribed to the Business Support plan (https://aws.amazon.com/premiumsupport/business-support/) // or the Enterprise Support plan (https://aws.amazon.com/premiumsupport/enterprise-support/). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation AssociateDRTRole for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidOperationException // Exception that indicates that the operation would not cause any change to // occur. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * AccessDeniedForDependencyException // 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 (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateDRTRole func (c *Shield) AssociateDRTRole(input *AssociateDRTRoleInput) (*AssociateDRTRoleOutput, error) { req, out := c.AssociateDRTRoleRequest(input) return out, req.Send() } // AssociateDRTRoleWithContext is the same as AssociateDRTRole with the addition of // the ability to pass a context and additional request options. // // See AssociateDRTRole for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) AssociateDRTRoleWithContext(ctx aws.Context, input *AssociateDRTRoleInput, opts ...request.Option) (*AssociateDRTRoleOutput, error) { req, out := c.AssociateDRTRoleRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opAssociateHealthCheck = "AssociateHealthCheck" // AssociateHealthCheckRequest generates a "aws/request.Request" representing the // client's request for the AssociateHealthCheck operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See AssociateHealthCheck for more information on using the AssociateHealthCheck // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the AssociateHealthCheckRequest method. // req, resp := client.AssociateHealthCheckRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateHealthCheck func (c *Shield) AssociateHealthCheckRequest(input *AssociateHealthCheckInput) (req *request.Request, output *AssociateHealthCheckOutput) { op := &request.Operation{ Name: opAssociateHealthCheck, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssociateHealthCheckInput{} } output = &AssociateHealthCheckOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // AssociateHealthCheck API operation for AWS Shield. // // 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 mitigation. // // 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 (https://docs.aws.amazon.com/waf/latest/developerguide/ddos-overview.html#ddos-advanced-health-check-option) // in the WAF Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation AssociateHealthCheck for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * LimitsExceededException // Exception that indicates that the operation would exceed a limit. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateHealthCheck func (c *Shield) AssociateHealthCheck(input *AssociateHealthCheckInput) (*AssociateHealthCheckOutput, error) { req, out := c.AssociateHealthCheckRequest(input) return out, req.Send() } // AssociateHealthCheckWithContext is the same as AssociateHealthCheck with the addition of // the ability to pass a context and additional request options. // // See AssociateHealthCheck for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) AssociateHealthCheckWithContext(ctx aws.Context, input *AssociateHealthCheckInput, opts ...request.Option) (*AssociateHealthCheckOutput, error) { req, out := c.AssociateHealthCheckRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opAssociateProactiveEngagementDetails = "AssociateProactiveEngagementDetails" // AssociateProactiveEngagementDetailsRequest generates a "aws/request.Request" representing the // client's request for the AssociateProactiveEngagementDetails operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See AssociateProactiveEngagementDetails for more information on using the AssociateProactiveEngagementDetails // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the AssociateProactiveEngagementDetailsRequest method. // req, resp := client.AssociateProactiveEngagementDetailsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateProactiveEngagementDetails func (c *Shield) AssociateProactiveEngagementDetailsRequest(input *AssociateProactiveEngagementDetailsInput) (req *request.Request, output *AssociateProactiveEngagementDetailsOutput) { op := &request.Operation{ Name: opAssociateProactiveEngagementDetails, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssociateProactiveEngagementDetailsInput{} } output = &AssociateProactiveEngagementDetailsOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // AssociateProactiveEngagementDetails API operation for AWS Shield. // // 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation AssociateProactiveEngagementDetails for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidOperationException // Exception that indicates that the operation would not cause any change to // occur. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateProactiveEngagementDetails func (c *Shield) AssociateProactiveEngagementDetails(input *AssociateProactiveEngagementDetailsInput) (*AssociateProactiveEngagementDetailsOutput, error) { req, out := c.AssociateProactiveEngagementDetailsRequest(input) return out, req.Send() } // AssociateProactiveEngagementDetailsWithContext is the same as AssociateProactiveEngagementDetails with the addition of // the ability to pass a context and additional request options. // // See AssociateProactiveEngagementDetails for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) AssociateProactiveEngagementDetailsWithContext(ctx aws.Context, input *AssociateProactiveEngagementDetailsInput, opts ...request.Option) (*AssociateProactiveEngagementDetailsOutput, error) { req, out := c.AssociateProactiveEngagementDetailsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateProtection = "CreateProtection" // CreateProtectionRequest generates a "aws/request.Request" representing the // client's request for the CreateProtection operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateProtection for more information on using the CreateProtection // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateProtectionRequest method. // req, resp := client.CreateProtectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtection func (c *Shield) CreateProtectionRequest(input *CreateProtectionInput) (req *request.Request, output *CreateProtectionOutput) { op := &request.Operation{ Name: opCreateProtection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateProtectionInput{} } output = &CreateProtectionOutput{} req = c.newRequest(op, input, output) return } // CreateProtection API operation for AWS Shield. // // Enables Shield Advanced for a specific Amazon Web Services resource. The // resource can be an Amazon CloudFront distribution, Elastic Load Balancing // load balancer, Global Accelerator accelerator, Elastic IP Address, or an // Amazon Route 53 hosted zone. // // You can add protection to only a single resource with each CreateProtection // request. If you want to add protection to multiple resources at once, use // the WAF console (https://console.aws.amazon.com/waf/). For more information // see Getting Started with Shield Advanced (https://docs.aws.amazon.com/waf/latest/developerguide/getting-started-ddos.html) // and Add Shield Advanced Protection to more Amazon Web Services Resources // (https://docs.aws.amazon.com/waf/latest/developerguide/configure-new-protection.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation CreateProtection for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidResourceException // Exception that indicates that the resource is invalid. You might not have // access to the resource, or the resource might not exist. // // * InvalidOperationException // Exception that indicates that the operation would not cause any change to // occur. // // * LimitsExceededException // Exception that indicates that the operation would exceed a limit. // // * ResourceAlreadyExistsException // Exception indicating the specified resource already exists. If available, // this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtection func (c *Shield) CreateProtection(input *CreateProtectionInput) (*CreateProtectionOutput, error) { req, out := c.CreateProtectionRequest(input) return out, req.Send() } // CreateProtectionWithContext is the same as CreateProtection with the addition of // the ability to pass a context and additional request options. // // See CreateProtection for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) CreateProtectionWithContext(ctx aws.Context, input *CreateProtectionInput, opts ...request.Option) (*CreateProtectionOutput, error) { req, out := c.CreateProtectionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateProtectionGroup = "CreateProtectionGroup" // CreateProtectionGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateProtectionGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateProtectionGroup for more information on using the CreateProtectionGroup // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateProtectionGroupRequest method. // req, resp := client.CreateProtectionGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtectionGroup func (c *Shield) CreateProtectionGroupRequest(input *CreateProtectionGroupInput) (req *request.Request, output *CreateProtectionGroupOutput) { op := &request.Operation{ Name: opCreateProtectionGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateProtectionGroupInput{} } output = &CreateProtectionGroupOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // CreateProtectionGroup API operation for AWS Shield. // // 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation CreateProtectionGroup for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceAlreadyExistsException // Exception indicating the specified resource already exists. If available, // this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * LimitsExceededException // Exception that indicates that the operation would exceed a limit. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateProtectionGroup func (c *Shield) CreateProtectionGroup(input *CreateProtectionGroupInput) (*CreateProtectionGroupOutput, error) { req, out := c.CreateProtectionGroupRequest(input) return out, req.Send() } // CreateProtectionGroupWithContext is the same as CreateProtectionGroup with the addition of // the ability to pass a context and additional request options. // // See CreateProtectionGroup for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) CreateProtectionGroupWithContext(ctx aws.Context, input *CreateProtectionGroupInput, opts ...request.Option) (*CreateProtectionGroupOutput, error) { req, out := c.CreateProtectionGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateSubscription = "CreateSubscription" // CreateSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the CreateSubscription operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateSubscription for more information on using the CreateSubscription // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the CreateSubscriptionRequest method. // req, resp := client.CreateSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateSubscription func (c *Shield) CreateSubscriptionRequest(input *CreateSubscriptionInput) (req *request.Request, output *CreateSubscriptionOutput) { op := &request.Operation{ Name: opCreateSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateSubscriptionInput{} } output = &CreateSubscriptionOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // CreateSubscription API operation for AWS Shield. // // Activates Shield Advanced for an account. // // When you initally 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation CreateSubscription for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceAlreadyExistsException // Exception indicating the specified resource already exists. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/CreateSubscription func (c *Shield) CreateSubscription(input *CreateSubscriptionInput) (*CreateSubscriptionOutput, error) { req, out := c.CreateSubscriptionRequest(input) return out, req.Send() } // CreateSubscriptionWithContext is the same as CreateSubscription with the addition of // the ability to pass a context and additional request options. // // See CreateSubscription for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) CreateSubscriptionWithContext(ctx aws.Context, input *CreateSubscriptionInput, opts ...request.Option) (*CreateSubscriptionOutput, error) { req, out := c.CreateSubscriptionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteProtection = "DeleteProtection" // DeleteProtectionRequest generates a "aws/request.Request" representing the // client's request for the DeleteProtection operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteProtection for more information on using the DeleteProtection // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteProtectionRequest method. // req, resp := client.DeleteProtectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtection func (c *Shield) DeleteProtectionRequest(input *DeleteProtectionInput) (req *request.Request, output *DeleteProtectionOutput) { op := &request.Operation{ Name: opDeleteProtection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteProtectionInput{} } output = &DeleteProtectionOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteProtection API operation for AWS Shield. // // Deletes an Shield Advanced Protection. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DeleteProtection for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtection func (c *Shield) DeleteProtection(input *DeleteProtectionInput) (*DeleteProtectionOutput, error) { req, out := c.DeleteProtectionRequest(input) return out, req.Send() } // DeleteProtectionWithContext is the same as DeleteProtection with the addition of // the ability to pass a context and additional request options. // // See DeleteProtection for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DeleteProtectionWithContext(ctx aws.Context, input *DeleteProtectionInput, opts ...request.Option) (*DeleteProtectionOutput, error) { req, out := c.DeleteProtectionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteProtectionGroup = "DeleteProtectionGroup" // DeleteProtectionGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteProtectionGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteProtectionGroup for more information on using the DeleteProtectionGroup // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteProtectionGroupRequest method. // req, resp := client.DeleteProtectionGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtectionGroup func (c *Shield) DeleteProtectionGroupRequest(input *DeleteProtectionGroupInput) (req *request.Request, output *DeleteProtectionGroupOutput) { op := &request.Operation{ Name: opDeleteProtectionGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteProtectionGroupInput{} } output = &DeleteProtectionGroupOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteProtectionGroup API operation for AWS Shield. // // Removes the specified protection group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DeleteProtectionGroup for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteProtectionGroup func (c *Shield) DeleteProtectionGroup(input *DeleteProtectionGroupInput) (*DeleteProtectionGroupOutput, error) { req, out := c.DeleteProtectionGroupRequest(input) return out, req.Send() } // DeleteProtectionGroupWithContext is the same as DeleteProtectionGroup with the addition of // the ability to pass a context and additional request options. // // See DeleteProtectionGroup for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DeleteProtectionGroupWithContext(ctx aws.Context, input *DeleteProtectionGroupInput, opts ...request.Option) (*DeleteProtectionGroupOutput, error) { req, out := c.DeleteProtectionGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteSubscription = "DeleteSubscription" // DeleteSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the DeleteSubscription operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteSubscription for more information on using the DeleteSubscription // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DeleteSubscriptionRequest method. // req, resp := client.DeleteSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteSubscription // // Deprecated: DeleteSubscription has been deprecated func (c *Shield) DeleteSubscriptionRequest(input *DeleteSubscriptionInput) (req *request.Request, output *DeleteSubscriptionOutput) { if c.Client.Config.Logger != nil { c.Client.Config.Logger.Log("This operation, DeleteSubscription, has been deprecated") } op := &request.Operation{ Name: opDeleteSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteSubscriptionInput{} } output = &DeleteSubscriptionOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DeleteSubscription API operation for AWS Shield. // // 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DeleteSubscription for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * LockedSubscriptionException // 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. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DeleteSubscription // // Deprecated: DeleteSubscription has been deprecated func (c *Shield) DeleteSubscription(input *DeleteSubscriptionInput) (*DeleteSubscriptionOutput, error) { req, out := c.DeleteSubscriptionRequest(input) return out, req.Send() } // DeleteSubscriptionWithContext is the same as DeleteSubscription with the addition of // the ability to pass a context and additional request options. // // See DeleteSubscription for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. // // Deprecated: DeleteSubscriptionWithContext has been deprecated func (c *Shield) DeleteSubscriptionWithContext(ctx aws.Context, input *DeleteSubscriptionInput, opts ...request.Option) (*DeleteSubscriptionOutput, error) { req, out := c.DeleteSubscriptionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeAttack = "DescribeAttack" // DescribeAttackRequest generates a "aws/request.Request" representing the // client's request for the DescribeAttack operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeAttack for more information on using the DescribeAttack // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeAttackRequest method. // req, resp := client.DescribeAttackRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttack func (c *Shield) DescribeAttackRequest(input *DescribeAttackInput) (req *request.Request, output *DescribeAttackOutput) { op := &request.Operation{ Name: opDescribeAttack, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAttackInput{} } output = &DescribeAttackOutput{} req = c.newRequest(op, input, output) return } // DescribeAttack API operation for AWS Shield. // // Describes the details of a DDoS attack. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DescribeAttack for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * AccessDeniedException // Exception that indicates the specified AttackId does not exist, or the requester // does not have the appropriate permissions to access the AttackId. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttack func (c *Shield) DescribeAttack(input *DescribeAttackInput) (*DescribeAttackOutput, error) { req, out := c.DescribeAttackRequest(input) return out, req.Send() } // DescribeAttackWithContext is the same as DescribeAttack with the addition of // the ability to pass a context and additional request options. // // See DescribeAttack for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DescribeAttackWithContext(ctx aws.Context, input *DescribeAttackInput, opts ...request.Option) (*DescribeAttackOutput, error) { req, out := c.DescribeAttackRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeAttackStatistics = "DescribeAttackStatistics" // DescribeAttackStatisticsRequest generates a "aws/request.Request" representing the // client's request for the DescribeAttackStatistics operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeAttackStatistics for more information on using the DescribeAttackStatistics // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeAttackStatisticsRequest method. // req, resp := client.DescribeAttackStatisticsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttackStatistics func (c *Shield) DescribeAttackStatisticsRequest(input *DescribeAttackStatisticsInput) (req *request.Request, output *DescribeAttackStatisticsOutput) { op := &request.Operation{ Name: opDescribeAttackStatistics, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeAttackStatisticsInput{} } output = &DescribeAttackStatisticsOutput{} req = c.newRequest(op, input, output) return } // DescribeAttackStatistics API operation for AWS Shield. // // 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DescribeAttackStatistics for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeAttackStatistics func (c *Shield) DescribeAttackStatistics(input *DescribeAttackStatisticsInput) (*DescribeAttackStatisticsOutput, error) { req, out := c.DescribeAttackStatisticsRequest(input) return out, req.Send() } // DescribeAttackStatisticsWithContext is the same as DescribeAttackStatistics with the addition of // the ability to pass a context and additional request options. // // See DescribeAttackStatistics for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DescribeAttackStatisticsWithContext(ctx aws.Context, input *DescribeAttackStatisticsInput, opts ...request.Option) (*DescribeAttackStatisticsOutput, error) { req, out := c.DescribeAttackStatisticsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeDRTAccess = "DescribeDRTAccess" // DescribeDRTAccessRequest generates a "aws/request.Request" representing the // client's request for the DescribeDRTAccess operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeDRTAccess for more information on using the DescribeDRTAccess // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeDRTAccessRequest method. // req, resp := client.DescribeDRTAccessRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeDRTAccess func (c *Shield) DescribeDRTAccessRequest(input *DescribeDRTAccessInput) (req *request.Request, output *DescribeDRTAccessOutput) { op := &request.Operation{ Name: opDescribeDRTAccess, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeDRTAccessInput{} } output = &DescribeDRTAccessOutput{} req = c.newRequest(op, input, output) return } // DescribeDRTAccess API operation for AWS Shield. // // 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DescribeDRTAccess for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeDRTAccess func (c *Shield) DescribeDRTAccess(input *DescribeDRTAccessInput) (*DescribeDRTAccessOutput, error) { req, out := c.DescribeDRTAccessRequest(input) return out, req.Send() } // DescribeDRTAccessWithContext is the same as DescribeDRTAccess with the addition of // the ability to pass a context and additional request options. // // See DescribeDRTAccess for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DescribeDRTAccessWithContext(ctx aws.Context, input *DescribeDRTAccessInput, opts ...request.Option) (*DescribeDRTAccessOutput, error) { req, out := c.DescribeDRTAccessRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeEmergencyContactSettings = "DescribeEmergencyContactSettings" // DescribeEmergencyContactSettingsRequest generates a "aws/request.Request" representing the // client's request for the DescribeEmergencyContactSettings operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeEmergencyContactSettings for more information on using the DescribeEmergencyContactSettings // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeEmergencyContactSettingsRequest method. // req, resp := client.DescribeEmergencyContactSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeEmergencyContactSettings func (c *Shield) DescribeEmergencyContactSettingsRequest(input *DescribeEmergencyContactSettingsInput) (req *request.Request, output *DescribeEmergencyContactSettingsOutput) { op := &request.Operation{ Name: opDescribeEmergencyContactSettings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeEmergencyContactSettingsInput{} } output = &DescribeEmergencyContactSettingsOutput{} req = c.newRequest(op, input, output) return } // DescribeEmergencyContactSettings API operation for AWS Shield. // // 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DescribeEmergencyContactSettings for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeEmergencyContactSettings func (c *Shield) DescribeEmergencyContactSettings(input *DescribeEmergencyContactSettingsInput) (*DescribeEmergencyContactSettingsOutput, error) { req, out := c.DescribeEmergencyContactSettingsRequest(input) return out, req.Send() } // DescribeEmergencyContactSettingsWithContext is the same as DescribeEmergencyContactSettings with the addition of // the ability to pass a context and additional request options. // // See DescribeEmergencyContactSettings for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DescribeEmergencyContactSettingsWithContext(ctx aws.Context, input *DescribeEmergencyContactSettingsInput, opts ...request.Option) (*DescribeEmergencyContactSettingsOutput, error) { req, out := c.DescribeEmergencyContactSettingsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeProtection = "DescribeProtection" // DescribeProtectionRequest generates a "aws/request.Request" representing the // client's request for the DescribeProtection operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeProtection for more information on using the DescribeProtection // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeProtectionRequest method. // req, resp := client.DescribeProtectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtection func (c *Shield) DescribeProtectionRequest(input *DescribeProtectionInput) (req *request.Request, output *DescribeProtectionOutput) { op := &request.Operation{ Name: opDescribeProtection, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeProtectionInput{} } output = &DescribeProtectionOutput{} req = c.newRequest(op, input, output) return } // DescribeProtection API operation for AWS Shield. // // Lists the details of a Protection object. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DescribeProtection for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtection func (c *Shield) DescribeProtection(input *DescribeProtectionInput) (*DescribeProtectionOutput, error) { req, out := c.DescribeProtectionRequest(input) return out, req.Send() } // DescribeProtectionWithContext is the same as DescribeProtection with the addition of // the ability to pass a context and additional request options. // // See DescribeProtection for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DescribeProtectionWithContext(ctx aws.Context, input *DescribeProtectionInput, opts ...request.Option) (*DescribeProtectionOutput, error) { req, out := c.DescribeProtectionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeProtectionGroup = "DescribeProtectionGroup" // DescribeProtectionGroupRequest generates a "aws/request.Request" representing the // client's request for the DescribeProtectionGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeProtectionGroup for more information on using the DescribeProtectionGroup // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeProtectionGroupRequest method. // req, resp := client.DescribeProtectionGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtectionGroup func (c *Shield) DescribeProtectionGroupRequest(input *DescribeProtectionGroupInput) (req *request.Request, output *DescribeProtectionGroupOutput) { op := &request.Operation{ Name: opDescribeProtectionGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeProtectionGroupInput{} } output = &DescribeProtectionGroupOutput{} req = c.newRequest(op, input, output) return } // DescribeProtectionGroup API operation for AWS Shield. // // Returns the specification for the specified protection group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DescribeProtectionGroup for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeProtectionGroup func (c *Shield) DescribeProtectionGroup(input *DescribeProtectionGroupInput) (*DescribeProtectionGroupOutput, error) { req, out := c.DescribeProtectionGroupRequest(input) return out, req.Send() } // DescribeProtectionGroupWithContext is the same as DescribeProtectionGroup with the addition of // the ability to pass a context and additional request options. // // See DescribeProtectionGroup for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DescribeProtectionGroupWithContext(ctx aws.Context, input *DescribeProtectionGroupInput, opts ...request.Option) (*DescribeProtectionGroupOutput, error) { req, out := c.DescribeProtectionGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeSubscription = "DescribeSubscription" // DescribeSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the DescribeSubscription operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeSubscription for more information on using the DescribeSubscription // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeSubscriptionRequest method. // req, resp := client.DescribeSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeSubscription func (c *Shield) DescribeSubscriptionRequest(input *DescribeSubscriptionInput) (req *request.Request, output *DescribeSubscriptionOutput) { op := &request.Operation{ Name: opDescribeSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeSubscriptionInput{} } output = &DescribeSubscriptionOutput{} req = c.newRequest(op, input, output) return } // DescribeSubscription API operation for AWS Shield. // // Provides details about the Shield Advanced subscription for an account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DescribeSubscription for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DescribeSubscription func (c *Shield) DescribeSubscription(input *DescribeSubscriptionInput) (*DescribeSubscriptionOutput, error) { req, out := c.DescribeSubscriptionRequest(input) return out, req.Send() } // DescribeSubscriptionWithContext is the same as DescribeSubscription with the addition of // the ability to pass a context and additional request options. // // See DescribeSubscription for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DescribeSubscriptionWithContext(ctx aws.Context, input *DescribeSubscriptionInput, opts ...request.Option) (*DescribeSubscriptionOutput, error) { req, out := c.DescribeSubscriptionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDisableProactiveEngagement = "DisableProactiveEngagement" // DisableProactiveEngagementRequest generates a "aws/request.Request" representing the // client's request for the DisableProactiveEngagement operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DisableProactiveEngagement for more information on using the DisableProactiveEngagement // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DisableProactiveEngagementRequest method. // req, resp := client.DisableProactiveEngagementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisableProactiveEngagement func (c *Shield) DisableProactiveEngagementRequest(input *DisableProactiveEngagementInput) (req *request.Request, output *DisableProactiveEngagementOutput) { op := &request.Operation{ Name: opDisableProactiveEngagement, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisableProactiveEngagementInput{} } output = &DisableProactiveEngagementOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DisableProactiveEngagement API operation for AWS Shield. // // Removes authorization from the Shield Response Team (SRT) to notify contacts // about escalations to the SRT and to initiate proactive customer support. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DisableProactiveEngagement for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidOperationException // Exception that indicates that the operation would not cause any change to // occur. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisableProactiveEngagement func (c *Shield) DisableProactiveEngagement(input *DisableProactiveEngagementInput) (*DisableProactiveEngagementOutput, error) { req, out := c.DisableProactiveEngagementRequest(input) return out, req.Send() } // DisableProactiveEngagementWithContext is the same as DisableProactiveEngagement with the addition of // the ability to pass a context and additional request options. // // See DisableProactiveEngagement for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DisableProactiveEngagementWithContext(ctx aws.Context, input *DisableProactiveEngagementInput, opts ...request.Option) (*DisableProactiveEngagementOutput, error) { req, out := c.DisableProactiveEngagementRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDisassociateDRTLogBucket = "DisassociateDRTLogBucket" // DisassociateDRTLogBucketRequest generates a "aws/request.Request" representing the // client's request for the DisassociateDRTLogBucket operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DisassociateDRTLogBucket for more information on using the DisassociateDRTLogBucket // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DisassociateDRTLogBucketRequest method. // req, resp := client.DisassociateDRTLogBucketRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTLogBucket func (c *Shield) DisassociateDRTLogBucketRequest(input *DisassociateDRTLogBucketInput) (req *request.Request, output *DisassociateDRTLogBucketOutput) { op := &request.Operation{ Name: opDisassociateDRTLogBucket, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisassociateDRTLogBucketInput{} } output = &DisassociateDRTLogBucketOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DisassociateDRTLogBucket API operation for AWS Shield. // // Removes the Shield Response Team's (SRT) access to the specified Amazon S3 // bucket containing the logs that you shared previously. // // To make a DisassociateDRTLogBucket request, you must be subscribed to the // Business Support plan (https://aws.amazon.com/premiumsupport/business-support/) // or the Enterprise Support plan (https://aws.amazon.com/premiumsupport/enterprise-support/). // However, if you are not subscribed to one of these support plans, but had // been previously and had granted the SRT access to your account, you can submit // a DisassociateDRTLogBucket request to remove this access. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DisassociateDRTLogBucket for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidOperationException // Exception that indicates that the operation would not cause any change to // occur. // // * NoAssociatedRoleException // The ARN of the role that you specifed does not exist. // // * AccessDeniedForDependencyException // 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 (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTLogBucket func (c *Shield) DisassociateDRTLogBucket(input *DisassociateDRTLogBucketInput) (*DisassociateDRTLogBucketOutput, error) { req, out := c.DisassociateDRTLogBucketRequest(input) return out, req.Send() } // DisassociateDRTLogBucketWithContext is the same as DisassociateDRTLogBucket with the addition of // the ability to pass a context and additional request options. // // See DisassociateDRTLogBucket for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DisassociateDRTLogBucketWithContext(ctx aws.Context, input *DisassociateDRTLogBucketInput, opts ...request.Option) (*DisassociateDRTLogBucketOutput, error) { req, out := c.DisassociateDRTLogBucketRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDisassociateDRTRole = "DisassociateDRTRole" // DisassociateDRTRoleRequest generates a "aws/request.Request" representing the // client's request for the DisassociateDRTRole operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DisassociateDRTRole for more information on using the DisassociateDRTRole // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DisassociateDRTRoleRequest method. // req, resp := client.DisassociateDRTRoleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTRole func (c *Shield) DisassociateDRTRoleRequest(input *DisassociateDRTRoleInput) (req *request.Request, output *DisassociateDRTRoleOutput) { op := &request.Operation{ Name: opDisassociateDRTRole, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisassociateDRTRoleInput{} } output = &DisassociateDRTRoleOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DisassociateDRTRole API operation for AWS Shield. // // Removes the Shield Response Team's (SRT) access to your Amazon Web Services // account. // // To make a DisassociateDRTRole request, you must be subscribed to the Business // Support plan (https://aws.amazon.com/premiumsupport/business-support/) or // the Enterprise Support plan (https://aws.amazon.com/premiumsupport/enterprise-support/). // However, if you are not subscribed to one of these support plans, but had // been previously and had granted the SRT access to your account, you can submit // a DisassociateDRTRole request to remove this access. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DisassociateDRTRole for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidOperationException // Exception that indicates that the operation would not cause any change to // occur. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateDRTRole func (c *Shield) DisassociateDRTRole(input *DisassociateDRTRoleInput) (*DisassociateDRTRoleOutput, error) { req, out := c.DisassociateDRTRoleRequest(input) return out, req.Send() } // DisassociateDRTRoleWithContext is the same as DisassociateDRTRole with the addition of // the ability to pass a context and additional request options. // // See DisassociateDRTRole for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DisassociateDRTRoleWithContext(ctx aws.Context, input *DisassociateDRTRoleInput, opts ...request.Option) (*DisassociateDRTRoleOutput, error) { req, out := c.DisassociateDRTRoleRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDisassociateHealthCheck = "DisassociateHealthCheck" // DisassociateHealthCheckRequest generates a "aws/request.Request" representing the // client's request for the DisassociateHealthCheck operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DisassociateHealthCheck for more information on using the DisassociateHealthCheck // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DisassociateHealthCheckRequest method. // req, resp := client.DisassociateHealthCheckRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateHealthCheck func (c *Shield) DisassociateHealthCheckRequest(input *DisassociateHealthCheckInput) (req *request.Request, output *DisassociateHealthCheckOutput) { op := &request.Operation{ Name: opDisassociateHealthCheck, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisassociateHealthCheckInput{} } output = &DisassociateHealthCheckOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // DisassociateHealthCheck API operation for AWS Shield. // // 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 mitigation. // // 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 (https://docs.aws.amazon.com/waf/latest/developerguide/ddos-overview.html#ddos-advanced-health-check-option) // in the WAF Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation DisassociateHealthCheck for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateHealthCheck func (c *Shield) DisassociateHealthCheck(input *DisassociateHealthCheckInput) (*DisassociateHealthCheckOutput, error) { req, out := c.DisassociateHealthCheckRequest(input) return out, req.Send() } // DisassociateHealthCheckWithContext is the same as DisassociateHealthCheck with the addition of // the ability to pass a context and additional request options. // // See DisassociateHealthCheck for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) DisassociateHealthCheckWithContext(ctx aws.Context, input *DisassociateHealthCheckInput, opts ...request.Option) (*DisassociateHealthCheckOutput, error) { req, out := c.DisassociateHealthCheckRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opEnableProactiveEngagement = "EnableProactiveEngagement" // EnableProactiveEngagementRequest generates a "aws/request.Request" representing the // client's request for the EnableProactiveEngagement operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See EnableProactiveEngagement for more information on using the EnableProactiveEngagement // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the EnableProactiveEngagementRequest method. // req, resp := client.EnableProactiveEngagementRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/EnableProactiveEngagement func (c *Shield) EnableProactiveEngagementRequest(input *EnableProactiveEngagementInput) (req *request.Request, output *EnableProactiveEngagementOutput) { op := &request.Operation{ Name: opEnableProactiveEngagement, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &EnableProactiveEngagementInput{} } output = &EnableProactiveEngagementOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // EnableProactiveEngagement API operation for AWS Shield. // // 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation EnableProactiveEngagement for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidOperationException // Exception that indicates that the operation would not cause any change to // occur. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/EnableProactiveEngagement func (c *Shield) EnableProactiveEngagement(input *EnableProactiveEngagementInput) (*EnableProactiveEngagementOutput, error) { req, out := c.EnableProactiveEngagementRequest(input) return out, req.Send() } // EnableProactiveEngagementWithContext is the same as EnableProactiveEngagement with the addition of // the ability to pass a context and additional request options. // // See EnableProactiveEngagement for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) EnableProactiveEngagementWithContext(ctx aws.Context, input *EnableProactiveEngagementInput, opts ...request.Option) (*EnableProactiveEngagementOutput, error) { req, out := c.EnableProactiveEngagementRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetSubscriptionState = "GetSubscriptionState" // GetSubscriptionStateRequest generates a "aws/request.Request" representing the // client's request for the GetSubscriptionState operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetSubscriptionState for more information on using the GetSubscriptionState // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the GetSubscriptionStateRequest method. // req, resp := client.GetSubscriptionStateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/GetSubscriptionState func (c *Shield) GetSubscriptionStateRequest(input *GetSubscriptionStateInput) (req *request.Request, output *GetSubscriptionStateOutput) { op := &request.Operation{ Name: opGetSubscriptionState, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &GetSubscriptionStateInput{} } output = &GetSubscriptionStateOutput{} req = c.newRequest(op, input, output) return } // GetSubscriptionState API operation for AWS Shield. // // Returns the SubscriptionState, either Active or Inactive. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation GetSubscriptionState for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/GetSubscriptionState func (c *Shield) GetSubscriptionState(input *GetSubscriptionStateInput) (*GetSubscriptionStateOutput, error) { req, out := c.GetSubscriptionStateRequest(input) return out, req.Send() } // GetSubscriptionStateWithContext is the same as GetSubscriptionState with the addition of // the ability to pass a context and additional request options. // // See GetSubscriptionState for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) GetSubscriptionStateWithContext(ctx aws.Context, input *GetSubscriptionStateInput, opts ...request.Option) (*GetSubscriptionStateOutput, error) { req, out := c.GetSubscriptionStateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opListAttacks = "ListAttacks" // ListAttacksRequest generates a "aws/request.Request" representing the // client's request for the ListAttacks operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListAttacks for more information on using the ListAttacks // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListAttacksRequest method. // req, resp := client.ListAttacksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListAttacks func (c *Shield) ListAttacksRequest(input *ListAttacksInput) (req *request.Request, output *ListAttacksOutput) { op := &request.Operation{ Name: opListAttacks, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListAttacksInput{} } output = &ListAttacksOutput{} req = c.newRequest(op, input, output) return } // ListAttacks API operation for AWS Shield. // // Returns all ongoing DDoS attacks or all DDoS attacks during a specified time // period. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation ListAttacks for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * InvalidOperationException // Exception that indicates that the operation would not cause any change to // occur. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListAttacks func (c *Shield) ListAttacks(input *ListAttacksInput) (*ListAttacksOutput, error) { req, out := c.ListAttacksRequest(input) return out, req.Send() } // ListAttacksWithContext is the same as ListAttacks with the addition of // the ability to pass a context and additional request options. // // See ListAttacks for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) ListAttacksWithContext(ctx aws.Context, input *ListAttacksInput, opts ...request.Option) (*ListAttacksOutput, error) { req, out := c.ListAttacksRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListAttacksPages iterates over the pages of a ListAttacks operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListAttacks method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListAttacks operation. // pageNum := 0 // err := client.ListAttacksPages(params, // func(page *shield.ListAttacksOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Shield) ListAttacksPages(input *ListAttacksInput, fn func(*ListAttacksOutput, bool) bool) error { return c.ListAttacksPagesWithContext(aws.BackgroundContext(), input, fn) } // ListAttacksPagesWithContext same as ListAttacksPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) ListAttacksPagesWithContext(ctx aws.Context, input *ListAttacksInput, fn func(*ListAttacksOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListAttacksInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListAttacksRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListAttacksOutput), !p.HasNextPage()) { break } } return p.Err() } const opListProtectionGroups = "ListProtectionGroups" // ListProtectionGroupsRequest generates a "aws/request.Request" representing the // client's request for the ListProtectionGroups operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListProtectionGroups for more information on using the ListProtectionGroups // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListProtectionGroupsRequest method. // req, resp := client.ListProtectionGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionGroups func (c *Shield) ListProtectionGroupsRequest(input *ListProtectionGroupsInput) (req *request.Request, output *ListProtectionGroupsOutput) { op := &request.Operation{ Name: opListProtectionGroups, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListProtectionGroupsInput{} } output = &ListProtectionGroupsOutput{} req = c.newRequest(op, input, output) return } // ListProtectionGroups API operation for AWS Shield. // // Retrieves the ProtectionGroup objects for the account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation ListProtectionGroups for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * InvalidPaginationTokenException // Exception that indicates that the NextToken specified in the request is invalid. // Submit the request using the NextToken value that was returned in the response. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtectionGroups func (c *Shield) ListProtectionGroups(input *ListProtectionGroupsInput) (*ListProtectionGroupsOutput, error) { req, out := c.ListProtectionGroupsRequest(input) return out, req.Send() } // ListProtectionGroupsWithContext is the same as ListProtectionGroups with the addition of // the ability to pass a context and additional request options. // // See ListProtectionGroups for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) ListProtectionGroupsWithContext(ctx aws.Context, input *ListProtectionGroupsInput, opts ...request.Option) (*ListProtectionGroupsOutput, error) { req, out := c.ListProtectionGroupsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListProtectionGroupsPages iterates over the pages of a ListProtectionGroups operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListProtectionGroups method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListProtectionGroups operation. // pageNum := 0 // err := client.ListProtectionGroupsPages(params, // func(page *shield.ListProtectionGroupsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Shield) ListProtectionGroupsPages(input *ListProtectionGroupsInput, fn func(*ListProtectionGroupsOutput, bool) bool) error { return c.ListProtectionGroupsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListProtectionGroupsPagesWithContext same as ListProtectionGroupsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) ListProtectionGroupsPagesWithContext(ctx aws.Context, input *ListProtectionGroupsInput, fn func(*ListProtectionGroupsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListProtectionGroupsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListProtectionGroupsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListProtectionGroupsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListProtections = "ListProtections" // ListProtectionsRequest generates a "aws/request.Request" representing the // client's request for the ListProtections operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListProtections for more information on using the ListProtections // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListProtectionsRequest method. // req, resp := client.ListProtectionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtections func (c *Shield) ListProtectionsRequest(input *ListProtectionsInput) (req *request.Request, output *ListProtectionsOutput) { op := &request.Operation{ Name: opListProtections, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListProtectionsInput{} } output = &ListProtectionsOutput{} req = c.newRequest(op, input, output) return } // ListProtections API operation for AWS Shield. // // Lists all Protection objects for the account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation ListProtections for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * InvalidPaginationTokenException // Exception that indicates that the NextToken specified in the request is invalid. // Submit the request using the NextToken value that was returned in the response. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListProtections func (c *Shield) ListProtections(input *ListProtectionsInput) (*ListProtectionsOutput, error) { req, out := c.ListProtectionsRequest(input) return out, req.Send() } // ListProtectionsWithContext is the same as ListProtections with the addition of // the ability to pass a context and additional request options. // // See ListProtections for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) ListProtectionsWithContext(ctx aws.Context, input *ListProtectionsInput, opts ...request.Option) (*ListProtectionsOutput, error) { req, out := c.ListProtectionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListProtectionsPages iterates over the pages of a ListProtections operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListProtections method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListProtections operation. // pageNum := 0 // err := client.ListProtectionsPages(params, // func(page *shield.ListProtectionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Shield) ListProtectionsPages(input *ListProtectionsInput, fn func(*ListProtectionsOutput, bool) bool) error { return c.ListProtectionsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListProtectionsPagesWithContext same as ListProtectionsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) ListProtectionsPagesWithContext(ctx aws.Context, input *ListProtectionsInput, fn func(*ListProtectionsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListProtectionsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListProtectionsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListProtectionsOutput), !p.HasNextPage()) { break } } return p.Err() } const opListResourcesInProtectionGroup = "ListResourcesInProtectionGroup" // ListResourcesInProtectionGroupRequest generates a "aws/request.Request" representing the // client's request for the ListResourcesInProtectionGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListResourcesInProtectionGroup for more information on using the ListResourcesInProtectionGroup // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListResourcesInProtectionGroupRequest method. // req, resp := client.ListResourcesInProtectionGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListResourcesInProtectionGroup func (c *Shield) ListResourcesInProtectionGroupRequest(input *ListResourcesInProtectionGroupInput) (req *request.Request, output *ListResourcesInProtectionGroupOutput) { op := &request.Operation{ Name: opListResourcesInProtectionGroup, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "MaxResults", TruncationToken: "", }, } if input == nil { input = &ListResourcesInProtectionGroupInput{} } output = &ListResourcesInProtectionGroupOutput{} req = c.newRequest(op, input, output) return } // ListResourcesInProtectionGroup API operation for AWS Shield. // // Retrieves the resources that are included in the protection group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation ListResourcesInProtectionGroup for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * InvalidPaginationTokenException // Exception that indicates that the NextToken specified in the request is invalid. // Submit the request using the NextToken value that was returned in the response. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListResourcesInProtectionGroup func (c *Shield) ListResourcesInProtectionGroup(input *ListResourcesInProtectionGroupInput) (*ListResourcesInProtectionGroupOutput, error) { req, out := c.ListResourcesInProtectionGroupRequest(input) return out, req.Send() } // ListResourcesInProtectionGroupWithContext is the same as ListResourcesInProtectionGroup with the addition of // the ability to pass a context and additional request options. // // See ListResourcesInProtectionGroup for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) ListResourcesInProtectionGroupWithContext(ctx aws.Context, input *ListResourcesInProtectionGroupInput, opts ...request.Option) (*ListResourcesInProtectionGroupOutput, error) { req, out := c.ListResourcesInProtectionGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListResourcesInProtectionGroupPages iterates over the pages of a ListResourcesInProtectionGroup operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListResourcesInProtectionGroup method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // // // Example iterating over at most 3 pages of a ListResourcesInProtectionGroup operation. // pageNum := 0 // err := client.ListResourcesInProtectionGroupPages(params, // func(page *shield.ListResourcesInProtectionGroupOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *Shield) ListResourcesInProtectionGroupPages(input *ListResourcesInProtectionGroupInput, fn func(*ListResourcesInProtectionGroupOutput, bool) bool) error { return c.ListResourcesInProtectionGroupPagesWithContext(aws.BackgroundContext(), input, fn) } // ListResourcesInProtectionGroupPagesWithContext same as ListResourcesInProtectionGroupPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) ListResourcesInProtectionGroupPagesWithContext(ctx aws.Context, input *ListResourcesInProtectionGroupInput, fn func(*ListResourcesInProtectionGroupOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListResourcesInProtectionGroupInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListResourcesInProtectionGroupRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListResourcesInProtectionGroupOutput), !p.HasNextPage()) { break } } return p.Err() } const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListTagsForResource for more information on using the ListTagsForResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the ListTagsForResourceRequest method. // req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListTagsForResource func (c *Shield) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ Name: opListTagsForResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ListTagsForResourceInput{} } output = &ListTagsForResourceOutput{} req = c.newRequest(op, input, output) return } // ListTagsForResource API operation for AWS Shield. // // Gets information about Amazon Web Services tags for a specified Amazon Resource // Name (ARN) in Shield. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation ListTagsForResource for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidResourceException // Exception that indicates that the resource is invalid. You might not have // access to the resource, or the resource might not exist. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/ListTagsForResource func (c *Shield) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) return out, req.Send() } // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of // the ability to pass a context and additional request options. // // See ListTagsForResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { req, out := c.ListTagsForResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the // client's request for the TagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See TagResource for more information on using the TagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the TagResourceRequest method. // req, resp := client.TagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/TagResource func (c *Shield) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { op := &request.Operation{ Name: opTagResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TagResourceInput{} } output = &TagResourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // TagResource API operation for AWS Shield. // // Adds or updates tags for a resource in Shield. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation TagResource for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidResourceException // Exception that indicates that the resource is invalid. You might not have // access to the resource, or the resource might not exist. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/TagResource func (c *Shield) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { req, out := c.TagResourceRequest(input) return out, req.Send() } // TagResourceWithContext is the same as TagResource with the addition of // the ability to pass a context and additional request options. // // See TagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { req, out := c.TagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUntagResource = "UntagResource" // UntagResourceRequest generates a "aws/request.Request" representing the // client's request for the UntagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UntagResource for more information on using the UntagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UntagResourceRequest method. // req, resp := client.UntagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UntagResource func (c *Shield) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { op := &request.Operation{ Name: opUntagResource, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UntagResourceInput{} } output = &UntagResourceOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UntagResource API operation for AWS Shield. // // Removes tags from a resource in Shield. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation UntagResource for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidResourceException // Exception that indicates that the resource is invalid. You might not have // access to the resource, or the resource might not exist. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UntagResource func (c *Shield) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { req, out := c.UntagResourceRequest(input) return out, req.Send() } // UntagResourceWithContext is the same as UntagResource with the addition of // the ability to pass a context and additional request options. // // See UntagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { req, out := c.UntagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateEmergencyContactSettings = "UpdateEmergencyContactSettings" // UpdateEmergencyContactSettingsRequest generates a "aws/request.Request" representing the // client's request for the UpdateEmergencyContactSettings operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateEmergencyContactSettings for more information on using the UpdateEmergencyContactSettings // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UpdateEmergencyContactSettingsRequest method. // req, resp := client.UpdateEmergencyContactSettingsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateEmergencyContactSettings func (c *Shield) UpdateEmergencyContactSettingsRequest(input *UpdateEmergencyContactSettingsInput) (req *request.Request, output *UpdateEmergencyContactSettingsOutput) { op := &request.Operation{ Name: opUpdateEmergencyContactSettings, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateEmergencyContactSettingsInput{} } output = &UpdateEmergencyContactSettingsOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateEmergencyContactSettings API operation for AWS Shield. // // 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation UpdateEmergencyContactSettings for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateEmergencyContactSettings func (c *Shield) UpdateEmergencyContactSettings(input *UpdateEmergencyContactSettingsInput) (*UpdateEmergencyContactSettingsOutput, error) { req, out := c.UpdateEmergencyContactSettingsRequest(input) return out, req.Send() } // UpdateEmergencyContactSettingsWithContext is the same as UpdateEmergencyContactSettings with the addition of // the ability to pass a context and additional request options. // // See UpdateEmergencyContactSettings for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) UpdateEmergencyContactSettingsWithContext(ctx aws.Context, input *UpdateEmergencyContactSettingsInput, opts ...request.Option) (*UpdateEmergencyContactSettingsOutput, error) { req, out := c.UpdateEmergencyContactSettingsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateProtectionGroup = "UpdateProtectionGroup" // UpdateProtectionGroupRequest generates a "aws/request.Request" representing the // client's request for the UpdateProtectionGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateProtectionGroup for more information on using the UpdateProtectionGroup // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UpdateProtectionGroupRequest method. // req, resp := client.UpdateProtectionGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateProtectionGroup func (c *Shield) UpdateProtectionGroupRequest(input *UpdateProtectionGroupInput) (req *request.Request, output *UpdateProtectionGroupOutput) { op := &request.Operation{ Name: opUpdateProtectionGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateProtectionGroupInput{} } output = &UpdateProtectionGroupOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateProtectionGroup API operation for AWS Shield. // // 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. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation UpdateProtectionGroup for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateProtectionGroup func (c *Shield) UpdateProtectionGroup(input *UpdateProtectionGroupInput) (*UpdateProtectionGroupOutput, error) { req, out := c.UpdateProtectionGroupRequest(input) return out, req.Send() } // UpdateProtectionGroupWithContext is the same as UpdateProtectionGroup with the addition of // the ability to pass a context and additional request options. // // See UpdateProtectionGroup for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) UpdateProtectionGroupWithContext(ctx aws.Context, input *UpdateProtectionGroupInput, opts ...request.Option) (*UpdateProtectionGroupOutput, error) { req, out := c.UpdateProtectionGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateSubscription = "UpdateSubscription" // UpdateSubscriptionRequest generates a "aws/request.Request" representing the // client's request for the UpdateSubscription operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateSubscription for more information on using the UpdateSubscription // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the UpdateSubscriptionRequest method. // req, resp := client.UpdateSubscriptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateSubscription func (c *Shield) UpdateSubscriptionRequest(input *UpdateSubscriptionInput) (req *request.Request, output *UpdateSubscriptionOutput) { op := &request.Operation{ Name: opUpdateSubscription, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateSubscriptionInput{} } output = &UpdateSubscriptionOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } // UpdateSubscription API operation for AWS Shield. // // Updates the details of an existing subscription. Only enter values for parameters // you want to change. Empty parameters are not updated. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Shield's // API operation UpdateSubscription for usage and error information. // // Returned Error Types: // * InternalErrorException // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. // // * LockedSubscriptionException // 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. // // * ResourceNotFoundException // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. // // * InvalidParameterException // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. // // * OptimisticLockException // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/UpdateSubscription func (c *Shield) UpdateSubscription(input *UpdateSubscriptionInput) (*UpdateSubscriptionOutput, error) { req, out := c.UpdateSubscriptionRequest(input) return out, req.Send() } // UpdateSubscriptionWithContext is the same as UpdateSubscription with the addition of // the ability to pass a context and additional request options. // // See UpdateSubscription for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *Shield) UpdateSubscriptionWithContext(ctx aws.Context, input *UpdateSubscriptionInput, opts ...request.Option) (*UpdateSubscriptionOutput, error) { req, out := c.UpdateSubscriptionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // Exception that indicates the specified AttackId does not exist, or the requester // does not have the appropriate permissions to access the AttackId. type AccessDeniedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessDeniedException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessDeniedException) GoString() string { return s.String() } func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { return &AccessDeniedException{ RespMetadata: v, } } // Code returns the exception type name. func (s *AccessDeniedException) Code() string { return "AccessDeniedException" } // Message returns the exception's message. func (s *AccessDeniedException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *AccessDeniedException) OrigErr() error { return nil } func (s *AccessDeniedException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *AccessDeniedException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } // 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 (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). type AccessDeniedForDependencyException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessDeniedForDependencyException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessDeniedForDependencyException) GoString() string { return s.String() } func newErrorAccessDeniedForDependencyException(v protocol.ResponseMetadata) error { return &AccessDeniedForDependencyException{ RespMetadata: v, } } // Code returns the exception type name. func (s *AccessDeniedForDependencyException) Code() string { return "AccessDeniedForDependencyException" } // Message returns the exception's message. func (s *AccessDeniedForDependencyException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *AccessDeniedForDependencyException) OrigErr() error { return nil } func (s *AccessDeniedForDependencyException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *AccessDeniedForDependencyException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *AccessDeniedForDependencyException) RequestID() string { return s.RespMetadata.RequestID } type AssociateDRTLogBucketInput struct { _ struct{} `type:"structure"` // The Amazon S3 bucket that contains the logs that you want to share. // // LogBucket is a required field LogBucket *string `min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateDRTLogBucketInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateDRTLogBucketInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateDRTLogBucketInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateDRTLogBucketInput"} if s.LogBucket == nil { invalidParams.Add(request.NewErrParamRequired("LogBucket")) } if s.LogBucket != nil && len(*s.LogBucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("LogBucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetLogBucket sets the LogBucket field's value. func (s *AssociateDRTLogBucketInput) SetLogBucket(v string) *AssociateDRTLogBucketInput { s.LogBucket = &v return s } type AssociateDRTLogBucketOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateDRTLogBucketOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateDRTLogBucketOutput) GoString() string { return s.String() } type AssociateDRTRoleInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the role the SRT will use to access your // Amazon Web Services account. // // Prior to making the AssociateDRTRole request, you must attach the AWSShieldDRTAccessPolicy // (https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/service-role/AWSShieldDRTAccessPolicy) // managed policy to this role. For more information see Attaching and Detaching // IAM Policies (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html). // // RoleArn is a required field RoleArn *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateDRTRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateDRTRoleInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateDRTRoleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateDRTRoleInput"} if s.RoleArn == nil { invalidParams.Add(request.NewErrParamRequired("RoleArn")) } if s.RoleArn != nil && len(*s.RoleArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetRoleArn sets the RoleArn field's value. func (s *AssociateDRTRoleInput) SetRoleArn(v string) *AssociateDRTRoleInput { s.RoleArn = &v return s } type AssociateDRTRoleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateDRTRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateDRTRoleOutput) GoString() string { return s.String() } type AssociateHealthCheckInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the health check to associate with the // protection. // // HealthCheckArn is a required field HealthCheckArn *string `min:"1" type:"string" required:"true"` // The unique identifier (ID) for the Protection object to add the health check // association to. // // ProtectionId is a required field ProtectionId *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateHealthCheckInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateHealthCheckInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateHealthCheckInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateHealthCheckInput"} if s.HealthCheckArn == nil { invalidParams.Add(request.NewErrParamRequired("HealthCheckArn")) } if s.HealthCheckArn != nil && len(*s.HealthCheckArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("HealthCheckArn", 1)) } if s.ProtectionId == nil { invalidParams.Add(request.NewErrParamRequired("ProtectionId")) } if s.ProtectionId != nil && len(*s.ProtectionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProtectionId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetHealthCheckArn sets the HealthCheckArn field's value. func (s *AssociateHealthCheckInput) SetHealthCheckArn(v string) *AssociateHealthCheckInput { s.HealthCheckArn = &v return s } // SetProtectionId sets the ProtectionId field's value. func (s *AssociateHealthCheckInput) SetProtectionId(v string) *AssociateHealthCheckInput { s.ProtectionId = &v return s } type AssociateHealthCheckOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateHealthCheckOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateHealthCheckOutput) GoString() string { return s.String() } type AssociateProactiveEngagementDetailsInput struct { _ struct{} `type:"structure"` // A list of email addresses and phone numbers that the Shield Response Team // (SRT) can use to contact you for escalations to the SRT and to initiate proactive // customer support. // // To enable proactive engagement, the contact list must include at least one // phone number. // // The contacts that you provide here 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 here. // // EmergencyContactList is a required field EmergencyContactList []*EmergencyContact `type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateProactiveEngagementDetailsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateProactiveEngagementDetailsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateProactiveEngagementDetailsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateProactiveEngagementDetailsInput"} if s.EmergencyContactList == nil { invalidParams.Add(request.NewErrParamRequired("EmergencyContactList")) } if s.EmergencyContactList != nil { for i, v := range s.EmergencyContactList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EmergencyContactList", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetEmergencyContactList sets the EmergencyContactList field's value. func (s *AssociateProactiveEngagementDetailsInput) SetEmergencyContactList(v []*EmergencyContact) *AssociateProactiveEngagementDetailsInput { s.EmergencyContactList = v return s } type AssociateProactiveEngagementDetailsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateProactiveEngagementDetailsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AssociateProactiveEngagementDetailsOutput) GoString() string { return s.String() } // The details of a DDoS attack. type AttackDetail struct { _ struct{} `type:"structure"` // List of counters that describe the attack for the specified time period. AttackCounters []*SummarizedCounter `type:"list"` // The unique identifier (ID) of the attack. AttackId *string `min:"1" type:"string"` // The array of objects that provide details of the Shield event. // // For infrastructure layer events (L3 and L4 events) after January 25, 2021, // you can view metrics for top contributors in Amazon CloudWatch metrics. For // more information, see Shield metrics and alarms (https://docs.aws.amazon.com/waf/latest/developerguide/monitoring-cloudwatch.html#set-ddos-alarms) // in the WAF Developer Guide. AttackProperties []*AttackProperty `type:"list"` // The time the attack ended, in Unix time in seconds. For more information // see timestamp (http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types). EndTime *time.Time `type:"timestamp"` // List of mitigation actions taken for the attack. Mitigations []*Mitigation `type:"list"` // The ARN (Amazon Resource Name) of the resource that was attacked. ResourceArn *string `min:"1" type:"string"` // The time the attack started, in Unix time in seconds. For more information // see timestamp (http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types). StartTime *time.Time `type:"timestamp"` // If applicable, additional detail about the resource being attacked, for example, // IP address or URL. SubResources []*SubResourceSummary `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackDetail) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackDetail) GoString() string { return s.String() } // SetAttackCounters sets the AttackCounters field's value. func (s *AttackDetail) SetAttackCounters(v []*SummarizedCounter) *AttackDetail { s.AttackCounters = v return s } // SetAttackId sets the AttackId field's value. func (s *AttackDetail) SetAttackId(v string) *AttackDetail { s.AttackId = &v return s } // SetAttackProperties sets the AttackProperties field's value. func (s *AttackDetail) SetAttackProperties(v []*AttackProperty) *AttackDetail { s.AttackProperties = v return s } // SetEndTime sets the EndTime field's value. func (s *AttackDetail) SetEndTime(v time.Time) *AttackDetail { s.EndTime = &v return s } // SetMitigations sets the Mitigations field's value. func (s *AttackDetail) SetMitigations(v []*Mitigation) *AttackDetail { s.Mitigations = v return s } // SetResourceArn sets the ResourceArn field's value. func (s *AttackDetail) SetResourceArn(v string) *AttackDetail { s.ResourceArn = &v return s } // SetStartTime sets the StartTime field's value. func (s *AttackDetail) SetStartTime(v time.Time) *AttackDetail { s.StartTime = &v return s } // SetSubResources sets the SubResources field's value. func (s *AttackDetail) SetSubResources(v []*SubResourceSummary) *AttackDetail { s.SubResources = v return s } // Details of a Shield event. This is provided as part of an AttackDetail. type AttackProperty struct { _ struct{} `type:"structure"` // The type of Shield event that was observed. NETWORK indicates layer 3 and // layer 4 events and APPLICATION indicates layer 7 events. // // For infrastructure layer events (L3 and L4 events) after January 25, 2021, // you can view metrics for top contributors in Amazon CloudWatch metrics. For // more information, see Shield metrics and alarms (https://docs.aws.amazon.com/waf/latest/developerguide/monitoring-cloudwatch.html#set-ddos-alarms) // in the WAF Developer Guide. AttackLayer *string `type:"string" enum:"AttackLayer"` // Defines the Shield event property information that is provided. The WORDPRESS_PINGBACK_REFLECTOR // and WORDPRESS_PINGBACK_SOURCE values are valid only for WordPress reflective // pingback events. AttackPropertyIdentifier *string `type:"string" enum:"AttackPropertyIdentifier"` // Contributor objects for the top five contributors to a Shield event. TopContributors []*Contributor `type:"list"` // The total contributions made to this Shield event by all contributors. Total *int64 `type:"long"` // The unit used for the Contributor Value property. Unit *string `type:"string" enum:"Unit"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackProperty) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackProperty) GoString() string { return s.String() } // SetAttackLayer sets the AttackLayer field's value. func (s *AttackProperty) SetAttackLayer(v string) *AttackProperty { s.AttackLayer = &v return s } // SetAttackPropertyIdentifier sets the AttackPropertyIdentifier field's value. func (s *AttackProperty) SetAttackPropertyIdentifier(v string) *AttackProperty { s.AttackPropertyIdentifier = &v return s } // SetTopContributors sets the TopContributors field's value. func (s *AttackProperty) SetTopContributors(v []*Contributor) *AttackProperty { s.TopContributors = v return s } // SetTotal sets the Total field's value. func (s *AttackProperty) SetTotal(v int64) *AttackProperty { s.Total = &v return s } // SetUnit sets the Unit field's value. func (s *AttackProperty) SetUnit(v string) *AttackProperty { s.Unit = &v return s } // A single attack statistics data record. This is returned by DescribeAttackStatistics // along with a time range indicating the time period that the attack statistics // apply to. type AttackStatisticsDataItem struct { _ struct{} `type:"structure"` // The number of attacks detected during the time period. This is always present, // but might be zero. // // AttackCount is a required field AttackCount *int64 `type:"long" required:"true"` // Information about the volume of attacks during the time period. If the accompanying // AttackCount is zero, this setting might be empty. AttackVolume *AttackVolume `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackStatisticsDataItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackStatisticsDataItem) GoString() string { return s.String() } // SetAttackCount sets the AttackCount field's value. func (s *AttackStatisticsDataItem) SetAttackCount(v int64) *AttackStatisticsDataItem { s.AttackCount = &v return s } // SetAttackVolume sets the AttackVolume field's value. func (s *AttackStatisticsDataItem) SetAttackVolume(v *AttackVolume) *AttackStatisticsDataItem { s.AttackVolume = v return s } // Summarizes all DDoS attacks for a specified time period. type AttackSummary struct { _ struct{} `type:"structure"` // The unique identifier (ID) of the attack. AttackId *string `type:"string"` // The list of attacks for a specified time period. AttackVectors []*AttackVectorDescription `type:"list"` // The end time of the attack, in Unix time in seconds. For more information // see timestamp (http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types). EndTime *time.Time `type:"timestamp"` // The ARN (Amazon Resource Name) of the resource that was attacked. ResourceArn *string `type:"string"` // The start time of the attack, in Unix time in seconds. For more information // see timestamp (http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types). StartTime *time.Time `type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackSummary) GoString() string { return s.String() } // SetAttackId sets the AttackId field's value. func (s *AttackSummary) SetAttackId(v string) *AttackSummary { s.AttackId = &v return s } // SetAttackVectors sets the AttackVectors field's value. func (s *AttackSummary) SetAttackVectors(v []*AttackVectorDescription) *AttackSummary { s.AttackVectors = v return s } // SetEndTime sets the EndTime field's value. func (s *AttackSummary) SetEndTime(v time.Time) *AttackSummary { s.EndTime = &v return s } // SetResourceArn sets the ResourceArn field's value. func (s *AttackSummary) SetResourceArn(v string) *AttackSummary { s.ResourceArn = &v return s } // SetStartTime sets the StartTime field's value. func (s *AttackSummary) SetStartTime(v time.Time) *AttackSummary { s.StartTime = &v return s } // Describes the attack. type AttackVectorDescription struct { _ struct{} `type:"structure"` // The attack type. Valid values: // // * UDP_TRAFFIC // // * UDP_FRAGMENT // // * GENERIC_UDP_REFLECTION // // * DNS_REFLECTION // // * NTP_REFLECTION // // * CHARGEN_REFLECTION // // * SSDP_REFLECTION // // * PORT_MAPPER // // * RIP_REFLECTION // // * SNMP_REFLECTION // // * MSSQL_REFLECTION // // * NET_BIOS_REFLECTION // // * SYN_FLOOD // // * ACK_FLOOD // // * REQUEST_FLOOD // // * HTTP_REFLECTION // // * UDS_REFLECTION // // * MEMCACHED_REFLECTION // // VectorType is a required field VectorType *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackVectorDescription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackVectorDescription) GoString() string { return s.String() } // SetVectorType sets the VectorType field's value. func (s *AttackVectorDescription) SetVectorType(v string) *AttackVectorDescription { s.VectorType = &v return s } // Information about the volume of attacks during the time period, included // in an AttackStatisticsDataItem. If the accompanying AttackCount in the statistics // object is zero, this setting might be empty. type AttackVolume struct { _ struct{} `type:"structure"` // A statistics object that uses bits per second as the unit. This is included // for network level attacks. BitsPerSecond *AttackVolumeStatistics `type:"structure"` // A statistics object that uses packets per second as the unit. This is included // for network level attacks. PacketsPerSecond *AttackVolumeStatistics `type:"structure"` // A statistics object that uses requests per second as the unit. This is included // for application level attacks, and is only available for accounts that are // subscribed to Shield Advanced. RequestsPerSecond *AttackVolumeStatistics `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackVolume) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackVolume) GoString() string { return s.String() } // SetBitsPerSecond sets the BitsPerSecond field's value. func (s *AttackVolume) SetBitsPerSecond(v *AttackVolumeStatistics) *AttackVolume { s.BitsPerSecond = v return s } // SetPacketsPerSecond sets the PacketsPerSecond field's value. func (s *AttackVolume) SetPacketsPerSecond(v *AttackVolumeStatistics) *AttackVolume { s.PacketsPerSecond = v return s } // SetRequestsPerSecond sets the RequestsPerSecond field's value. func (s *AttackVolume) SetRequestsPerSecond(v *AttackVolumeStatistics) *AttackVolume { s.RequestsPerSecond = v return s } // Statistics objects for the various data types in AttackVolume. type AttackVolumeStatistics struct { _ struct{} `type:"structure"` // The maximum attack volume observed for the given unit. // // Max is a required field Max *float64 `type:"double" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackVolumeStatistics) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AttackVolumeStatistics) GoString() string { return s.String() } // SetMax sets the Max field's value. func (s *AttackVolumeStatistics) SetMax(v float64) *AttackVolumeStatistics { s.Max = &v return s } // A contributor to the attack and their contribution. type Contributor struct { _ struct{} `type:"structure"` // The name of the contributor. This is dependent on the AttackPropertyIdentifier. // For example, if the AttackPropertyIdentifier is SOURCE_COUNTRY, the Name // could be United States. Name *string `type:"string"` // The contribution of this contributor expressed in Protection units. For example // 10,000. Value *int64 `type:"long"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Contributor) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Contributor) GoString() string { return s.String() } // SetName sets the Name field's value. func (s *Contributor) SetName(v string) *Contributor { s.Name = &v return s } // SetValue sets the Value field's value. func (s *Contributor) SetValue(v int64) *Contributor { s.Value = &v return s } type CreateProtectionGroupInput struct { _ struct{} `type:"structure"` // Defines how Shield combines resource data for the group in order to detect, // mitigate, and report events. // // * Sum - Use the total traffic across the group. This is a good choice // for most cases. Examples include Elastic IP addresses for EC2 instances // that scale manually or automatically. // // * Mean - Use the average of the traffic across the group. This is a good // choice for resources that share traffic uniformly. Examples include accelerators // and load balancers. // // * Max - Use the highest traffic from each resource. This is useful for // resources that don't share traffic and for resources that share that traffic // in a non-uniform way. Examples include Amazon CloudFront and origin resources // for CloudFront distributions. // // Aggregation is a required field Aggregation *string `type:"string" required:"true" enum:"ProtectionGroupAggregation"` // The Amazon Resource Names (ARNs) of the resources to include in the protection // group. You must set this when you set Pattern to ARBITRARY and you must not // set it for any other Pattern setting. Members []*string `type:"list"` // The criteria to use to choose the protected resources for inclusion in the // group. You can include all resources that have protections, provide a list // of resource Amazon Resource Names (ARNs), or include all resources of a specified // resource type. // // Pattern is a required field Pattern *string `type:"string" required:"true" enum:"ProtectionGroupPattern"` // The name of the protection group. You use this to identify the protection // group in lists and to manage the protection group, for example to update, // delete, or describe it. // // ProtectionGroupId is a required field ProtectionGroupId *string `min:"1" type:"string" required:"true"` // The resource type to include in the protection group. All protected resources // of this type are included in the protection group. Newly protected resources // of this type are automatically added to the group. You must set this when // you set Pattern to BY_RESOURCE_TYPE and you must not set it for any other // Pattern setting. ResourceType *string `type:"string" enum:"ProtectedResourceType"` // One or more tag key-value pairs for the protection group. Tags []*Tag `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateProtectionGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateProtectionGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateProtectionGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateProtectionGroupInput"} if s.Aggregation == nil { invalidParams.Add(request.NewErrParamRequired("Aggregation")) } if s.Pattern == nil { invalidParams.Add(request.NewErrParamRequired("Pattern")) } if s.ProtectionGroupId == nil { invalidParams.Add(request.NewErrParamRequired("ProtectionGroupId")) } if s.ProtectionGroupId != nil && len(*s.ProtectionGroupId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProtectionGroupId", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAggregation sets the Aggregation field's value. func (s *CreateProtectionGroupInput) SetAggregation(v string) *CreateProtectionGroupInput { s.Aggregation = &v return s } // SetMembers sets the Members field's value. func (s *CreateProtectionGroupInput) SetMembers(v []*string) *CreateProtectionGroupInput { s.Members = v return s } // SetPattern sets the Pattern field's value. func (s *CreateProtectionGroupInput) SetPattern(v string) *CreateProtectionGroupInput { s.Pattern = &v return s } // SetProtectionGroupId sets the ProtectionGroupId field's value. func (s *CreateProtectionGroupInput) SetProtectionGroupId(v string) *CreateProtectionGroupInput { s.ProtectionGroupId = &v return s } // SetResourceType sets the ResourceType field's value. func (s *CreateProtectionGroupInput) SetResourceType(v string) *CreateProtectionGroupInput { s.ResourceType = &v return s } // SetTags sets the Tags field's value. func (s *CreateProtectionGroupInput) SetTags(v []*Tag) *CreateProtectionGroupInput { s.Tags = v return s } type CreateProtectionGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateProtectionGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateProtectionGroupOutput) GoString() string { return s.String() } type CreateProtectionInput struct { _ struct{} `type:"structure"` // Friendly name for the Protection you are creating. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` // The ARN (Amazon Resource Name) of the resource to be protected. // // The ARN should be in one of the following formats: // // * For an Application Load Balancer: arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id // // * For an Elastic Load Balancer (Classic Load Balancer): arn:aws:elasticloadbalancing:region:account-id:loadbalancer/load-balancer-name // // * For an Amazon CloudFront distribution: arn:aws:cloudfront::account-id:distribution/distribution-id // // * For an Global Accelerator accelerator: arn:aws:globalaccelerator::account-id:accelerator/accelerator-id // // * For Amazon Route 53: arn:aws:route53:::hostedzone/hosted-zone-id // // * For an Elastic IP address: arn:aws:ec2:region:account-id:eip-allocation/allocation-id // // ResourceArn is a required field ResourceArn *string `min:"1" type:"string" required:"true"` // One or more tag key-value pairs for the Protection object that is created. Tags []*Tag `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateProtectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateProtectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateProtectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateProtectionInput"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } if s.ResourceArn == nil { invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetName sets the Name field's value. func (s *CreateProtectionInput) SetName(v string) *CreateProtectionInput { s.Name = &v return s } // SetResourceArn sets the ResourceArn field's value. func (s *CreateProtectionInput) SetResourceArn(v string) *CreateProtectionInput { s.ResourceArn = &v return s } // SetTags sets the Tags field's value. func (s *CreateProtectionInput) SetTags(v []*Tag) *CreateProtectionInput { s.Tags = v return s } type CreateProtectionOutput struct { _ struct{} `type:"structure"` // The unique identifier (ID) for the Protection object that is created. ProtectionId *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateProtectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateProtectionOutput) GoString() string { return s.String() } // SetProtectionId sets the ProtectionId field's value. func (s *CreateProtectionOutput) SetProtectionId(v string) *CreateProtectionOutput { s.ProtectionId = &v return s } type CreateSubscriptionInput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateSubscriptionInput) GoString() string { return s.String() } type CreateSubscriptionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CreateSubscriptionOutput) GoString() string { return s.String() } type DeleteProtectionGroupInput struct { _ struct{} `type:"structure"` // The name of the protection group. You use this to identify the protection // group in lists and to manage the protection group, for example to update, // delete, or describe it. // // ProtectionGroupId is a required field ProtectionGroupId *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteProtectionGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteProtectionGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteProtectionGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteProtectionGroupInput"} if s.ProtectionGroupId == nil { invalidParams.Add(request.NewErrParamRequired("ProtectionGroupId")) } if s.ProtectionGroupId != nil && len(*s.ProtectionGroupId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProtectionGroupId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetProtectionGroupId sets the ProtectionGroupId field's value. func (s *DeleteProtectionGroupInput) SetProtectionGroupId(v string) *DeleteProtectionGroupInput { s.ProtectionGroupId = &v return s } type DeleteProtectionGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteProtectionGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteProtectionGroupOutput) GoString() string { return s.String() } type DeleteProtectionInput struct { _ struct{} `type:"structure"` // The unique identifier (ID) for the Protection object to be deleted. // // ProtectionId is a required field ProtectionId *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteProtectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteProtectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteProtectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteProtectionInput"} if s.ProtectionId == nil { invalidParams.Add(request.NewErrParamRequired("ProtectionId")) } if s.ProtectionId != nil && len(*s.ProtectionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProtectionId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetProtectionId sets the ProtectionId field's value. func (s *DeleteProtectionInput) SetProtectionId(v string) *DeleteProtectionInput { s.ProtectionId = &v return s } type DeleteProtectionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteProtectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteProtectionOutput) GoString() string { return s.String() } // Deprecated: DeleteSubscriptionInput has been deprecated type DeleteSubscriptionInput struct { _ struct{} `deprecated:"true" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteSubscriptionInput) GoString() string { return s.String() } // Deprecated: DeleteSubscriptionOutput has been deprecated type DeleteSubscriptionOutput struct { _ struct{} `deprecated:"true" type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DeleteSubscriptionOutput) GoString() string { return s.String() } type DescribeAttackInput struct { _ struct{} `type:"structure"` // The unique identifier (ID) for the attack that to be described. // // AttackId is a required field AttackId *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeAttackInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeAttackInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeAttackInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeAttackInput"} if s.AttackId == nil { invalidParams.Add(request.NewErrParamRequired("AttackId")) } if s.AttackId != nil && len(*s.AttackId) < 1 { invalidParams.Add(request.NewErrParamMinLen("AttackId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAttackId sets the AttackId field's value. func (s *DescribeAttackInput) SetAttackId(v string) *DescribeAttackInput { s.AttackId = &v return s } type DescribeAttackOutput struct { _ struct{} `type:"structure"` // The attack that is described. Attack *AttackDetail `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeAttackOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeAttackOutput) GoString() string { return s.String() } // SetAttack sets the Attack field's value. func (s *DescribeAttackOutput) SetAttack(v *AttackDetail) *DescribeAttackOutput { s.Attack = v return s } type DescribeAttackStatisticsInput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeAttackStatisticsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeAttackStatisticsInput) GoString() string { return s.String() } type DescribeAttackStatisticsOutput struct { _ struct{} `type:"structure"` // The data that describes the attacks detected during the time period. // // DataItems is a required field DataItems []*AttackStatisticsDataItem `type:"list" required:"true"` // The time range. // // TimeRange is a required field TimeRange *TimeRange `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeAttackStatisticsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeAttackStatisticsOutput) GoString() string { return s.String() } // SetDataItems sets the DataItems field's value. func (s *DescribeAttackStatisticsOutput) SetDataItems(v []*AttackStatisticsDataItem) *DescribeAttackStatisticsOutput { s.DataItems = v return s } // SetTimeRange sets the TimeRange field's value. func (s *DescribeAttackStatisticsOutput) SetTimeRange(v *TimeRange) *DescribeAttackStatisticsOutput { s.TimeRange = v return s } type DescribeDRTAccessInput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeDRTAccessInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeDRTAccessInput) GoString() string { return s.String() } type DescribeDRTAccessOutput struct { _ struct{} `type:"structure"` // The list of Amazon S3 buckets accessed by the SRT. LogBucketList []*string `type:"list"` // The Amazon Resource Name (ARN) of the role the SRT used to access your Amazon // Web Services account. RoleArn *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeDRTAccessOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeDRTAccessOutput) GoString() string { return s.String() } // SetLogBucketList sets the LogBucketList field's value. func (s *DescribeDRTAccessOutput) SetLogBucketList(v []*string) *DescribeDRTAccessOutput { s.LogBucketList = v return s } // SetRoleArn sets the RoleArn field's value. func (s *DescribeDRTAccessOutput) SetRoleArn(v string) *DescribeDRTAccessOutput { s.RoleArn = &v return s } type DescribeEmergencyContactSettingsInput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeEmergencyContactSettingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeEmergencyContactSettingsInput) GoString() string { return s.String() } type DescribeEmergencyContactSettingsOutput struct { _ struct{} `type:"structure"` // 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. EmergencyContactList []*EmergencyContact `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeEmergencyContactSettingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeEmergencyContactSettingsOutput) GoString() string { return s.String() } // SetEmergencyContactList sets the EmergencyContactList field's value. func (s *DescribeEmergencyContactSettingsOutput) SetEmergencyContactList(v []*EmergencyContact) *DescribeEmergencyContactSettingsOutput { s.EmergencyContactList = v return s } type DescribeProtectionGroupInput struct { _ struct{} `type:"structure"` // The name of the protection group. You use this to identify the protection // group in lists and to manage the protection group, for example to update, // delete, or describe it. // // ProtectionGroupId is a required field ProtectionGroupId *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeProtectionGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeProtectionGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeProtectionGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeProtectionGroupInput"} if s.ProtectionGroupId == nil { invalidParams.Add(request.NewErrParamRequired("ProtectionGroupId")) } if s.ProtectionGroupId != nil && len(*s.ProtectionGroupId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProtectionGroupId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetProtectionGroupId sets the ProtectionGroupId field's value. func (s *DescribeProtectionGroupInput) SetProtectionGroupId(v string) *DescribeProtectionGroupInput { s.ProtectionGroupId = &v return s } type DescribeProtectionGroupOutput struct { _ struct{} `type:"structure"` // A grouping of protected resources that you and Shield Advanced can monitor // as a collective. This resource grouping improves the accuracy of detection // and reduces false positives. // // ProtectionGroup is a required field ProtectionGroup *ProtectionGroup `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeProtectionGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeProtectionGroupOutput) GoString() string { return s.String() } // SetProtectionGroup sets the ProtectionGroup field's value. func (s *DescribeProtectionGroupOutput) SetProtectionGroup(v *ProtectionGroup) *DescribeProtectionGroupOutput { s.ProtectionGroup = v return s } type DescribeProtectionInput struct { _ struct{} `type:"structure"` // The unique identifier (ID) for the Protection object that is described. When // submitting the DescribeProtection request you must provide either the ResourceArn // or the ProtectionID, but not both. ProtectionId *string `min:"1" type:"string"` // The ARN (Amazon Resource Name) of the Amazon Web Services resource for the // Protection object that is described. When submitting the DescribeProtection // request you must provide either the ResourceArn or the ProtectionID, but // not both. ResourceArn *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeProtectionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeProtectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeProtectionInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeProtectionInput"} if s.ProtectionId != nil && len(*s.ProtectionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProtectionId", 1)) } if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetProtectionId sets the ProtectionId field's value. func (s *DescribeProtectionInput) SetProtectionId(v string) *DescribeProtectionInput { s.ProtectionId = &v return s } // SetResourceArn sets the ResourceArn field's value. func (s *DescribeProtectionInput) SetResourceArn(v string) *DescribeProtectionInput { s.ResourceArn = &v return s } type DescribeProtectionOutput struct { _ struct{} `type:"structure"` // The Protection object that is described. Protection *Protection `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeProtectionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeProtectionOutput) GoString() string { return s.String() } // SetProtection sets the Protection field's value. func (s *DescribeProtectionOutput) SetProtection(v *Protection) *DescribeProtectionOutput { s.Protection = v return s } type DescribeSubscriptionInput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeSubscriptionInput) GoString() string { return s.String() } type DescribeSubscriptionOutput struct { _ struct{} `type:"structure"` // The Shield Advanced subscription details for an account. Subscription *Subscription `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DescribeSubscriptionOutput) GoString() string { return s.String() } // SetSubscription sets the Subscription field's value. func (s *DescribeSubscriptionOutput) SetSubscription(v *Subscription) *DescribeSubscriptionOutput { s.Subscription = v return s } type DisableProactiveEngagementInput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisableProactiveEngagementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisableProactiveEngagementInput) GoString() string { return s.String() } type DisableProactiveEngagementOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisableProactiveEngagementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisableProactiveEngagementOutput) GoString() string { return s.String() } type DisassociateDRTLogBucketInput struct { _ struct{} `type:"structure"` // The Amazon S3 bucket that contains the logs that you want to share. // // LogBucket is a required field LogBucket *string `min:"3" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateDRTLogBucketInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateDRTLogBucketInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisassociateDRTLogBucketInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisassociateDRTLogBucketInput"} if s.LogBucket == nil { invalidParams.Add(request.NewErrParamRequired("LogBucket")) } if s.LogBucket != nil && len(*s.LogBucket) < 3 { invalidParams.Add(request.NewErrParamMinLen("LogBucket", 3)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetLogBucket sets the LogBucket field's value. func (s *DisassociateDRTLogBucketInput) SetLogBucket(v string) *DisassociateDRTLogBucketInput { s.LogBucket = &v return s } type DisassociateDRTLogBucketOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateDRTLogBucketOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateDRTLogBucketOutput) GoString() string { return s.String() } type DisassociateDRTRoleInput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateDRTRoleInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateDRTRoleInput) GoString() string { return s.String() } type DisassociateDRTRoleOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateDRTRoleOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateDRTRoleOutput) GoString() string { return s.String() } type DisassociateHealthCheckInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the health check that is associated with // the protection. // // HealthCheckArn is a required field HealthCheckArn *string `min:"1" type:"string" required:"true"` // The unique identifier (ID) for the Protection object to remove the health // check association from. // // ProtectionId is a required field ProtectionId *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateHealthCheckInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateHealthCheckInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisassociateHealthCheckInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisassociateHealthCheckInput"} if s.HealthCheckArn == nil { invalidParams.Add(request.NewErrParamRequired("HealthCheckArn")) } if s.HealthCheckArn != nil && len(*s.HealthCheckArn) < 1 { invalidParams.Add(request.NewErrParamMinLen("HealthCheckArn", 1)) } if s.ProtectionId == nil { invalidParams.Add(request.NewErrParamRequired("ProtectionId")) } if s.ProtectionId != nil && len(*s.ProtectionId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProtectionId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetHealthCheckArn sets the HealthCheckArn field's value. func (s *DisassociateHealthCheckInput) SetHealthCheckArn(v string) *DisassociateHealthCheckInput { s.HealthCheckArn = &v return s } // SetProtectionId sets the ProtectionId field's value. func (s *DisassociateHealthCheckInput) SetProtectionId(v string) *DisassociateHealthCheckInput { s.ProtectionId = &v return s } type DisassociateHealthCheckOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateHealthCheckOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s DisassociateHealthCheckOutput) GoString() string { return s.String() } // Contact information that the SRT can use to contact you if you have proactive // engagement enabled, for escalations to the SRT and to initiate proactive // customer support. type EmergencyContact struct { _ struct{} `type:"structure"` // Additional notes regarding the contact. ContactNotes *string `min:"1" type:"string"` // The email address for the contact. // // EmailAddress is a required field EmailAddress *string `min:"1" type:"string" required:"true"` // The phone number for the contact. PhoneNumber *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EmergencyContact) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EmergencyContact) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *EmergencyContact) Validate() error { invalidParams := request.ErrInvalidParams{Context: "EmergencyContact"} if s.ContactNotes != nil && len(*s.ContactNotes) < 1 { invalidParams.Add(request.NewErrParamMinLen("ContactNotes", 1)) } if s.EmailAddress == nil { invalidParams.Add(request.NewErrParamRequired("EmailAddress")) } if s.EmailAddress != nil && len(*s.EmailAddress) < 1 { invalidParams.Add(request.NewErrParamMinLen("EmailAddress", 1)) } if s.PhoneNumber != nil && len(*s.PhoneNumber) < 1 { invalidParams.Add(request.NewErrParamMinLen("PhoneNumber", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetContactNotes sets the ContactNotes field's value. func (s *EmergencyContact) SetContactNotes(v string) *EmergencyContact { s.ContactNotes = &v return s } // SetEmailAddress sets the EmailAddress field's value. func (s *EmergencyContact) SetEmailAddress(v string) *EmergencyContact { s.EmailAddress = &v return s } // SetPhoneNumber sets the PhoneNumber field's value. func (s *EmergencyContact) SetPhoneNumber(v string) *EmergencyContact { s.PhoneNumber = &v return s } type EnableProactiveEngagementInput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EnableProactiveEngagementInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EnableProactiveEngagementInput) GoString() string { return s.String() } type EnableProactiveEngagementOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EnableProactiveEngagementOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s EnableProactiveEngagementOutput) GoString() string { return s.String() } type GetSubscriptionStateInput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetSubscriptionStateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetSubscriptionStateInput) GoString() string { return s.String() } type GetSubscriptionStateOutput struct { _ struct{} `type:"structure"` // The status of the subscription. // // SubscriptionState is a required field SubscriptionState *string `type:"string" required:"true" enum:"SubscriptionState"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetSubscriptionStateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetSubscriptionStateOutput) GoString() string { return s.String() } // SetSubscriptionState sets the SubscriptionState field's value. func (s *GetSubscriptionStateOutput) SetSubscriptionState(v string) *GetSubscriptionStateOutput { s.SubscriptionState = &v return s } // Exception that indicates that a problem occurred with the service infrastructure. // You can retry the request. type InternalErrorException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InternalErrorException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InternalErrorException) GoString() string { return s.String() } func newErrorInternalErrorException(v protocol.ResponseMetadata) error { return &InternalErrorException{ RespMetadata: v, } } // Code returns the exception type name. func (s *InternalErrorException) Code() string { return "InternalErrorException" } // Message returns the exception's message. func (s *InternalErrorException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *InternalErrorException) OrigErr() error { return nil } func (s *InternalErrorException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *InternalErrorException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *InternalErrorException) RequestID() string { return s.RespMetadata.RequestID } // Exception that indicates that the operation would not cause any change to // occur. type InvalidOperationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InvalidOperationException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InvalidOperationException) GoString() string { return s.String() } func newErrorInvalidOperationException(v protocol.ResponseMetadata) error { return &InvalidOperationException{ RespMetadata: v, } } // Code returns the exception type name. func (s *InvalidOperationException) Code() string { return "InvalidOperationException" } // Message returns the exception's message. func (s *InvalidOperationException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *InvalidOperationException) OrigErr() error { return nil } func (s *InvalidOperationException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *InvalidOperationException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *InvalidOperationException) RequestID() string { return s.RespMetadata.RequestID } // Exception that indicates that the NextToken specified in the request is invalid. // Submit the request using the NextToken value that was returned in the response. type InvalidPaginationTokenException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InvalidPaginationTokenException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InvalidPaginationTokenException) GoString() string { return s.String() } func newErrorInvalidPaginationTokenException(v protocol.ResponseMetadata) error { return &InvalidPaginationTokenException{ RespMetadata: v, } } // Code returns the exception type name. func (s *InvalidPaginationTokenException) Code() string { return "InvalidPaginationTokenException" } // Message returns the exception's message. func (s *InvalidPaginationTokenException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *InvalidPaginationTokenException) OrigErr() error { return nil } func (s *InvalidPaginationTokenException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *InvalidPaginationTokenException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *InvalidPaginationTokenException) RequestID() string { return s.RespMetadata.RequestID } // Exception that indicates that the parameters passed to the API are invalid. // If available, this exception includes details in additional properties. type InvalidParameterException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // Fields that caused the exception. Fields []*ValidationExceptionField `locationName:"fields" type:"list"` Message_ *string `locationName:"message" type:"string"` // Additional information about the exception. Reason *string `locationName:"reason" type:"string" enum:"ValidationExceptionReason"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InvalidParameterException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InvalidParameterException) GoString() string { return s.String() } func newErrorInvalidParameterException(v protocol.ResponseMetadata) error { return &InvalidParameterException{ RespMetadata: v, } } // Code returns the exception type name. func (s *InvalidParameterException) Code() string { return "InvalidParameterException" } // Message returns the exception's message. func (s *InvalidParameterException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *InvalidParameterException) OrigErr() error { return nil } func (s *InvalidParameterException) Error() string { return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. func (s *InvalidParameterException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *InvalidParameterException) RequestID() string { return s.RespMetadata.RequestID } // Exception that indicates that the resource is invalid. You might not have // access to the resource, or the resource might not exist. type InvalidResourceException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InvalidResourceException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InvalidResourceException) GoString() string { return s.String() } func newErrorInvalidResourceException(v protocol.ResponseMetadata) error { return &InvalidResourceException{ RespMetadata: v, } } // Code returns the exception type name. func (s *InvalidResourceException) Code() string { return "InvalidResourceException" } // Message returns the exception's message. func (s *InvalidResourceException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *InvalidResourceException) OrigErr() error { return nil } func (s *InvalidResourceException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *InvalidResourceException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *InvalidResourceException) RequestID() string { return s.RespMetadata.RequestID } // Specifies how many protections of a given type you can create. type Limit struct { _ struct{} `type:"structure"` // The maximum number of protections that can be created for the specified Type. Max *int64 `type:"long"` // The type of protection. Type *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Limit) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Limit) GoString() string { return s.String() } // SetMax sets the Max field's value. func (s *Limit) SetMax(v int64) *Limit { s.Max = &v return s } // SetType sets the Type field's value. func (s *Limit) SetType(v string) *Limit { s.Type = &v return s } // Exception that indicates that the operation would exceed a limit. type LimitsExceededException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` // The threshold that would be exceeded. Limit *int64 `type:"long"` Message_ *string `locationName:"message" type:"string"` // The type of limit that would be exceeded. Type *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LimitsExceededException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LimitsExceededException) GoString() string { return s.String() } func newErrorLimitsExceededException(v protocol.ResponseMetadata) error { return &LimitsExceededException{ RespMetadata: v, } } // Code returns the exception type name. func (s *LimitsExceededException) Code() string { return "LimitsExceededException" } // Message returns the exception's message. func (s *LimitsExceededException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *LimitsExceededException) OrigErr() error { return nil } func (s *LimitsExceededException) Error() string { return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. func (s *LimitsExceededException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *LimitsExceededException) RequestID() string { return s.RespMetadata.RequestID } type ListAttacksInput struct { _ struct{} `type:"structure"` // The end of the time period for the attacks. This is a timestamp type. The // sample request above indicates a number type because the default used by // WAF is Unix time in seconds. However any valid timestamp format (http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types) // is allowed. EndTime *TimeRange `type:"structure"` // The maximum number of AttackSummary objects to return. If you leave this // blank, Shield Advanced returns the first 20 results. // // This is a maximum value. Shield Advanced might return the results in smaller // batches. That is, the number of objects returned could be less than MaxResults, // even if there are still more objects yet to return. If there are more objects // to return, Shield Advanced returns a value in NextToken that you can use // in your next request, to get the next batch of objects. MaxResults *int64 `type:"integer"` // The ListAttacksRequest.NextMarker value from a previous call to ListAttacksRequest. // Pass null if this is the first call. NextToken *string `min:"1" type:"string"` // The ARN (Amazon Resource Name) of the resource that was attacked. If this // is left blank, all applicable resources for this account will be included. ResourceArns []*string `type:"list"` // The start of the time period for the attacks. This is a timestamp type. The // sample request above indicates a number type because the default used by // WAF is Unix time in seconds. However any valid timestamp format (http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types) // is allowed. StartTime *TimeRange `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAttacksInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAttacksInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListAttacksInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListAttacksInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetEndTime sets the EndTime field's value. func (s *ListAttacksInput) SetEndTime(v *TimeRange) *ListAttacksInput { s.EndTime = v return s } // SetMaxResults sets the MaxResults field's value. func (s *ListAttacksInput) SetMaxResults(v int64) *ListAttacksInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListAttacksInput) SetNextToken(v string) *ListAttacksInput { s.NextToken = &v return s } // SetResourceArns sets the ResourceArns field's value. func (s *ListAttacksInput) SetResourceArns(v []*string) *ListAttacksInput { s.ResourceArns = v return s } // SetStartTime sets the StartTime field's value. func (s *ListAttacksInput) SetStartTime(v *TimeRange) *ListAttacksInput { s.StartTime = v return s } type ListAttacksOutput struct { _ struct{} `type:"structure"` // The attack information for the specified time range. AttackSummaries []*AttackSummary `type:"list"` // The token returned by a previous call to indicate that there is more data // available. If not null, more results are available. Pass this value for the // NextMarker parameter in a subsequent call to ListAttacks to retrieve the // next set of items. // // Shield Advanced might return the list of AttackSummary objects in batches // smaller than the number specified by MaxResults. If there are more attack // summary objects to return, Shield Advanced will always also return a NextToken. NextToken *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAttacksOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListAttacksOutput) GoString() string { return s.String() } // SetAttackSummaries sets the AttackSummaries field's value. func (s *ListAttacksOutput) SetAttackSummaries(v []*AttackSummary) *ListAttacksOutput { s.AttackSummaries = v return s } // SetNextToken sets the NextToken field's value. func (s *ListAttacksOutput) SetNextToken(v string) *ListAttacksOutput { s.NextToken = &v return s } type ListProtectionGroupsInput struct { _ struct{} `type:"structure"` // The maximum number of ProtectionGroup objects to return. If you leave this // blank, Shield Advanced returns the first 20 results. // // This is a maximum value. Shield Advanced might return the results in smaller // batches. That is, the number of objects returned could be less than MaxResults, // even if there are still more objects yet to return. If there are more objects // to return, Shield Advanced returns a value in NextToken that you can use // in your next request, to get the next batch of objects. MaxResults *int64 `type:"integer"` // The next token value from a previous call to ListProtectionGroups. Pass null // if this is the first call. NextToken *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListProtectionGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListProtectionGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListProtectionGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListProtectionGroupsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxResults sets the MaxResults field's value. func (s *ListProtectionGroupsInput) SetMaxResults(v int64) *ListProtectionGroupsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListProtectionGroupsInput) SetNextToken(v string) *ListProtectionGroupsInput { s.NextToken = &v return s } type ListProtectionGroupsOutput struct { _ struct{} `type:"structure"` // If you specify a value for MaxResults and you have more protection groups // than the value of MaxResults, Shield Advanced returns this token that you // can use in your next request, to get the next batch of objects. NextToken *string `min:"1" type:"string"` // ProtectionGroups is a required field ProtectionGroups []*ProtectionGroup `type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListProtectionGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListProtectionGroupsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListProtectionGroupsOutput) SetNextToken(v string) *ListProtectionGroupsOutput { s.NextToken = &v return s } // SetProtectionGroups sets the ProtectionGroups field's value. func (s *ListProtectionGroupsOutput) SetProtectionGroups(v []*ProtectionGroup) *ListProtectionGroupsOutput { s.ProtectionGroups = v return s } type ListProtectionsInput struct { _ struct{} `type:"structure"` // The maximum number of Protection objects to return. If you leave this blank, // Shield Advanced returns the first 20 results. // // This is a maximum value. Shield Advanced might return the results in smaller // batches. That is, the number of objects returned could be less than MaxResults, // even if there are still more objects yet to return. If there are more objects // to return, Shield Advanced returns a value in NextToken that you can use // in your next request, to get the next batch of objects. MaxResults *int64 `type:"integer"` // The ListProtectionsRequest.NextToken value from a previous call to ListProtections. // Pass null if this is the first call. NextToken *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListProtectionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListProtectionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListProtectionsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListProtectionsInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxResults sets the MaxResults field's value. func (s *ListProtectionsInput) SetMaxResults(v int64) *ListProtectionsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListProtectionsInput) SetNextToken(v string) *ListProtectionsInput { s.NextToken = &v return s } type ListProtectionsOutput struct { _ struct{} `type:"structure"` // If you specify a value for MaxResults and you have more Protections than // the value of MaxResults, Shield Advanced returns a NextToken value in the // response that allows you to list another group of Protections. For the second // and subsequent ListProtections requests, specify the value of NextToken from // the previous response to get information about another batch of Protections. // // Shield Advanced might return the list of Protection objects in batches smaller // than the number specified by MaxResults. If there are more Protection objects // to return, Shield Advanced will always also return a NextToken. NextToken *string `min:"1" type:"string"` // The array of enabled Protection objects. Protections []*Protection `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListProtectionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListProtectionsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListProtectionsOutput) SetNextToken(v string) *ListProtectionsOutput { s.NextToken = &v return s } // SetProtections sets the Protections field's value. func (s *ListProtectionsOutput) SetProtections(v []*Protection) *ListProtectionsOutput { s.Protections = v return s } type ListResourcesInProtectionGroupInput struct { _ struct{} `type:"structure"` // The maximum number of resource ARN objects to return. If you leave this blank, // Shield Advanced returns the first 20 results. // // This is a maximum value. Shield Advanced might return the results in smaller // batches. That is, the number of objects returned could be less than MaxResults, // even if there are still more objects yet to return. If there are more objects // to return, Shield Advanced returns a value in NextToken that you can use // in your next request, to get the next batch of objects. MaxResults *int64 `type:"integer"` // The next token value from a previous call to ListResourcesInProtectionGroup. // Pass null if this is the first call. NextToken *string `min:"1" type:"string"` // The name of the protection group. You use this to identify the protection // group in lists and to manage the protection group, for example to update, // delete, or describe it. // // ProtectionGroupId is a required field ProtectionGroupId *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListResourcesInProtectionGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListResourcesInProtectionGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListResourcesInProtectionGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListResourcesInProtectionGroupInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.ProtectionGroupId == nil { invalidParams.Add(request.NewErrParamRequired("ProtectionGroupId")) } if s.ProtectionGroupId != nil && len(*s.ProtectionGroupId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProtectionGroupId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxResults sets the MaxResults field's value. func (s *ListResourcesInProtectionGroupInput) SetMaxResults(v int64) *ListResourcesInProtectionGroupInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListResourcesInProtectionGroupInput) SetNextToken(v string) *ListResourcesInProtectionGroupInput { s.NextToken = &v return s } // SetProtectionGroupId sets the ProtectionGroupId field's value. func (s *ListResourcesInProtectionGroupInput) SetProtectionGroupId(v string) *ListResourcesInProtectionGroupInput { s.ProtectionGroupId = &v return s } type ListResourcesInProtectionGroupOutput struct { _ struct{} `type:"structure"` // If you specify a value for MaxResults and you have more resources in the // protection group than the value of MaxResults, Shield Advanced returns this // token that you can use in your next request, to get the next batch of objects. NextToken *string `min:"1" type:"string"` // The Amazon Resource Names (ARNs) of the resources that are included in the // protection group. // // ResourceArns is a required field ResourceArns []*string `type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListResourcesInProtectionGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListResourcesInProtectionGroupOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *ListResourcesInProtectionGroupOutput) SetNextToken(v string) *ListResourcesInProtectionGroupOutput { s.NextToken = &v return s } // SetResourceArns sets the ResourceArns field's value. func (s *ListResourcesInProtectionGroupOutput) SetResourceArns(v []*string) *ListResourcesInProtectionGroupOutput { s.ResourceArns = v return s } type ListTagsForResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource to get tags for. // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListTagsForResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResourceARN sets the ResourceARN field's value. func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { s.ResourceARN = &v return s } type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` // A list of tag key and value pairs associated with the specified resource. Tags []*Tag `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListTagsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListTagsForResourceOutput) GoString() string { return s.String() } // SetTags sets the Tags field's value. func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { s.Tags = v return s } // 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. type LockedSubscriptionException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LockedSubscriptionException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s LockedSubscriptionException) GoString() string { return s.String() } func newErrorLockedSubscriptionException(v protocol.ResponseMetadata) error { return &LockedSubscriptionException{ RespMetadata: v, } } // Code returns the exception type name. func (s *LockedSubscriptionException) Code() string { return "LockedSubscriptionException" } // Message returns the exception's message. func (s *LockedSubscriptionException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *LockedSubscriptionException) OrigErr() error { return nil } func (s *LockedSubscriptionException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *LockedSubscriptionException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *LockedSubscriptionException) RequestID() string { return s.RespMetadata.RequestID } // The mitigation applied to a DDoS attack. type Mitigation struct { _ struct{} `type:"structure"` // The name of the mitigation taken for this attack. MitigationName *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Mitigation) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Mitigation) GoString() string { return s.String() } // SetMitigationName sets the MitigationName field's value. func (s *Mitigation) SetMitigationName(v string) *Mitigation { s.MitigationName = &v return s } // The ARN of the role that you specifed does not exist. type NoAssociatedRoleException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NoAssociatedRoleException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s NoAssociatedRoleException) GoString() string { return s.String() } func newErrorNoAssociatedRoleException(v protocol.ResponseMetadata) error { return &NoAssociatedRoleException{ RespMetadata: v, } } // Code returns the exception type name. func (s *NoAssociatedRoleException) Code() string { return "NoAssociatedRoleException" } // Message returns the exception's message. func (s *NoAssociatedRoleException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *NoAssociatedRoleException) OrigErr() error { return nil } func (s *NoAssociatedRoleException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *NoAssociatedRoleException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *NoAssociatedRoleException) RequestID() string { return s.RespMetadata.RequestID } // Exception that indicates that the resource state has been modified by another // client. Retrieve the resource and then retry your request. type OptimisticLockException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s OptimisticLockException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s OptimisticLockException) GoString() string { return s.String() } func newErrorOptimisticLockException(v protocol.ResponseMetadata) error { return &OptimisticLockException{ RespMetadata: v, } } // Code returns the exception type name. func (s *OptimisticLockException) Code() string { return "OptimisticLockException" } // Message returns the exception's message. func (s *OptimisticLockException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *OptimisticLockException) OrigErr() error { return nil } func (s *OptimisticLockException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *OptimisticLockException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *OptimisticLockException) RequestID() string { return s.RespMetadata.RequestID } // An object that represents a resource that is under DDoS protection. type Protection struct { _ struct{} `type:"structure"` // The unique identifier (ID) for the Route 53 health check that's associated // with the protection. HealthCheckIds []*string `type:"list"` // The unique identifier (ID) of the protection. Id *string `min:"1" type:"string"` // The name of the protection. For example, My CloudFront distributions. Name *string `min:"1" type:"string"` // The ARN (Amazon Resource Name) of the protection. ProtectionArn *string `min:"1" type:"string"` // The ARN (Amazon Resource Name) of the Amazon Web Services resource that is // protected. ResourceArn *string `min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Protection) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Protection) GoString() string { return s.String() } // SetHealthCheckIds sets the HealthCheckIds field's value. func (s *Protection) SetHealthCheckIds(v []*string) *Protection { s.HealthCheckIds = v return s } // SetId sets the Id field's value. func (s *Protection) SetId(v string) *Protection { s.Id = &v return s } // SetName sets the Name field's value. func (s *Protection) SetName(v string) *Protection { s.Name = &v return s } // SetProtectionArn sets the ProtectionArn field's value. func (s *Protection) SetProtectionArn(v string) *Protection { s.ProtectionArn = &v return s } // SetResourceArn sets the ResourceArn field's value. func (s *Protection) SetResourceArn(v string) *Protection { s.ResourceArn = &v return s } // A grouping of protected resources that you and Shield Advanced can monitor // as a collective. This resource grouping improves the accuracy of detection // and reduces false positives. type ProtectionGroup struct { _ struct{} `type:"structure"` // Defines how Shield combines resource data for the group in order to detect, // mitigate, and report events. // // * Sum - Use the total traffic across the group. This is a good choice // for most cases. Examples include Elastic IP addresses for EC2 instances // that scale manually or automatically. // // * Mean - Use the average of the traffic across the group. This is a good // choice for resources that share traffic uniformly. Examples include accelerators // and load balancers. // // * Max - Use the highest traffic from each resource. This is useful for // resources that don't share traffic and for resources that share that traffic // in a non-uniform way. Examples include Amazon CloudFront distributions // and origin resources for CloudFront distributions. // // Aggregation is a required field Aggregation *string `type:"string" required:"true" enum:"ProtectionGroupAggregation"` // The Amazon Resource Names (ARNs) of the resources to include in the protection // group. You must set this when you set Pattern to ARBITRARY and you must not // set it for any other Pattern setting. // // Members is a required field Members []*string `type:"list" required:"true"` // The criteria to use to choose the protected resources for inclusion in the // group. You can include all resources that have protections, provide a list // of resource Amazon Resource Names (ARNs), or include all resources of a specified // resource type. // // Pattern is a required field Pattern *string `type:"string" required:"true" enum:"ProtectionGroupPattern"` // The ARN (Amazon Resource Name) of the protection group. ProtectionGroupArn *string `min:"1" type:"string"` // The name of the protection group. You use this to identify the protection // group in lists and to manage the protection group, for example to update, // delete, or describe it. // // ProtectionGroupId is a required field ProtectionGroupId *string `min:"1" type:"string" required:"true"` // The resource type to include in the protection group. All protected resources // of this type are included in the protection group. You must set this when // you set Pattern to BY_RESOURCE_TYPE and you must not set it for any other // Pattern setting. ResourceType *string `type:"string" enum:"ProtectedResourceType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionGroup) GoString() string { return s.String() } // SetAggregation sets the Aggregation field's value. func (s *ProtectionGroup) SetAggregation(v string) *ProtectionGroup { s.Aggregation = &v return s } // SetMembers sets the Members field's value. func (s *ProtectionGroup) SetMembers(v []*string) *ProtectionGroup { s.Members = v return s } // SetPattern sets the Pattern field's value. func (s *ProtectionGroup) SetPattern(v string) *ProtectionGroup { s.Pattern = &v return s } // SetProtectionGroupArn sets the ProtectionGroupArn field's value. func (s *ProtectionGroup) SetProtectionGroupArn(v string) *ProtectionGroup { s.ProtectionGroupArn = &v return s } // SetProtectionGroupId sets the ProtectionGroupId field's value. func (s *ProtectionGroup) SetProtectionGroupId(v string) *ProtectionGroup { s.ProtectionGroupId = &v return s } // SetResourceType sets the ResourceType field's value. func (s *ProtectionGroup) SetResourceType(v string) *ProtectionGroup { s.ResourceType = &v return s } // Limits settings on protection groups with arbitrary pattern type. type ProtectionGroupArbitraryPatternLimits struct { _ struct{} `type:"structure"` // The maximum number of resources you can specify for a single arbitrary pattern // in a protection group. // // MaxMembers is a required field MaxMembers *int64 `type:"long" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionGroupArbitraryPatternLimits) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionGroupArbitraryPatternLimits) GoString() string { return s.String() } // SetMaxMembers sets the MaxMembers field's value. func (s *ProtectionGroupArbitraryPatternLimits) SetMaxMembers(v int64) *ProtectionGroupArbitraryPatternLimits { s.MaxMembers = &v return s } // Limits settings on protection groups for your subscription. type ProtectionGroupLimits struct { _ struct{} `type:"structure"` // The maximum number of protection groups that you can have at one time. // // MaxProtectionGroups is a required field MaxProtectionGroups *int64 `type:"long" required:"true"` // Limits settings by pattern type in the protection groups for your subscription. // // PatternTypeLimits is a required field PatternTypeLimits *ProtectionGroupPatternTypeLimits `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionGroupLimits) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionGroupLimits) GoString() string { return s.String() } // SetMaxProtectionGroups sets the MaxProtectionGroups field's value. func (s *ProtectionGroupLimits) SetMaxProtectionGroups(v int64) *ProtectionGroupLimits { s.MaxProtectionGroups = &v return s } // SetPatternTypeLimits sets the PatternTypeLimits field's value. func (s *ProtectionGroupLimits) SetPatternTypeLimits(v *ProtectionGroupPatternTypeLimits) *ProtectionGroupLimits { s.PatternTypeLimits = v return s } // Limits settings by pattern type in the protection groups for your subscription. type ProtectionGroupPatternTypeLimits struct { _ struct{} `type:"structure"` // Limits settings on protection groups with arbitrary pattern type. // // ArbitraryPatternLimits is a required field ArbitraryPatternLimits *ProtectionGroupArbitraryPatternLimits `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionGroupPatternTypeLimits) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionGroupPatternTypeLimits) GoString() string { return s.String() } // SetArbitraryPatternLimits sets the ArbitraryPatternLimits field's value. func (s *ProtectionGroupPatternTypeLimits) SetArbitraryPatternLimits(v *ProtectionGroupArbitraryPatternLimits) *ProtectionGroupPatternTypeLimits { s.ArbitraryPatternLimits = v return s } // Limits settings on protections for your subscription. type ProtectionLimits struct { _ struct{} `type:"structure"` // The maximum number of resource types that you can specify in a protection. // // ProtectedResourceTypeLimits is a required field ProtectedResourceTypeLimits []*Limit `type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionLimits) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ProtectionLimits) GoString() string { return s.String() } // SetProtectedResourceTypeLimits sets the ProtectedResourceTypeLimits field's value. func (s *ProtectionLimits) SetProtectedResourceTypeLimits(v []*Limit) *ProtectionLimits { s.ProtectedResourceTypeLimits = v return s } // Exception indicating the specified resource already exists. If available, // this exception includes details in additional properties. type ResourceAlreadyExistsException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` // The type of resource that already exists. ResourceType *string `locationName:"resourceType" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ResourceAlreadyExistsException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ResourceAlreadyExistsException) GoString() string { return s.String() } func newErrorResourceAlreadyExistsException(v protocol.ResponseMetadata) error { return &ResourceAlreadyExistsException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ResourceAlreadyExistsException) Code() string { return "ResourceAlreadyExistsException" } // Message returns the exception's message. func (s *ResourceAlreadyExistsException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ResourceAlreadyExistsException) OrigErr() error { return nil } func (s *ResourceAlreadyExistsException) Error() string { return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. func (s *ResourceAlreadyExistsException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ResourceAlreadyExistsException) RequestID() string { return s.RespMetadata.RequestID } // Exception indicating the specified resource does not exist. If available, // this exception includes details in additional properties. type ResourceNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` // Type of resource. ResourceType *string `locationName:"resourceType" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ResourceNotFoundException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ResourceNotFoundException) GoString() string { return s.String() } func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { return &ResourceNotFoundException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ResourceNotFoundException) Code() string { return "ResourceNotFoundException" } // Message returns the exception's message. func (s *ResourceNotFoundException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ResourceNotFoundException) OrigErr() error { return nil } func (s *ResourceNotFoundException) Error() string { return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. func (s *ResourceNotFoundException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ResourceNotFoundException) RequestID() string { return s.RespMetadata.RequestID } // The attack information for the specified SubResource. type SubResourceSummary struct { _ struct{} `type:"structure"` // The list of attack types and associated counters. AttackVectors []*SummarizedAttackVector `type:"list"` // The counters that describe the details of the attack. Counters []*SummarizedCounter `type:"list"` // The unique identifier (ID) of the SubResource. Id *string `type:"string"` // The SubResource type. Type *string `type:"string" enum:"SubResourceType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SubResourceSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SubResourceSummary) GoString() string { return s.String() } // SetAttackVectors sets the AttackVectors field's value. func (s *SubResourceSummary) SetAttackVectors(v []*SummarizedAttackVector) *SubResourceSummary { s.AttackVectors = v return s } // SetCounters sets the Counters field's value. func (s *SubResourceSummary) SetCounters(v []*SummarizedCounter) *SubResourceSummary { s.Counters = v return s } // SetId sets the Id field's value. func (s *SubResourceSummary) SetId(v string) *SubResourceSummary { s.Id = &v return s } // SetType sets the Type field's value. func (s *SubResourceSummary) SetType(v string) *SubResourceSummary { s.Type = &v return s } // Information about the Shield Advanced subscription for an account. type Subscription struct { _ struct{} `type:"structure"` // If ENABLED, the subscription will be automatically renewed at the end of // the existing subscription period. // // When you initally create a subscription, AutoRenew is set to ENABLED. You // can change this by submitting an UpdateSubscription request. If the UpdateSubscription // request does not included a value for AutoRenew, the existing value for AutoRenew // remains unchanged. AutoRenew *string `type:"string" enum:"AutoRenew"` // The date and time your subscription will end. EndTime *time.Time `type:"timestamp"` // Specifies how many protections of a given type you can create. Limits []*Limit `type:"list"` // If ENABLED, the Shield Response Team (SRT) will use email and phone to notify // contacts about escalations to the SRT and to initiate proactive customer // support. // // If PENDING, you have requested proactive engagement and the request is pending. // The status changes to ENABLED when your request is fully processed. // // If DISABLED, the SRT will not proactively notify contacts about escalations // or to initiate proactive customer support. ProactiveEngagementStatus *string `type:"string" enum:"ProactiveEngagementStatus"` // The start time of the subscription, in Unix time in seconds. For more information // see timestamp (http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types). StartTime *time.Time `type:"timestamp"` // The ARN (Amazon Resource Name) of the subscription. SubscriptionArn *string `min:"1" type:"string"` // Limits settings for your subscription. // // SubscriptionLimits is a required field SubscriptionLimits *SubscriptionLimits `type:"structure" required:"true"` // The length, in seconds, of the Shield Advanced subscription for the account. TimeCommitmentInSeconds *int64 `type:"long"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Subscription) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Subscription) GoString() string { return s.String() } // SetAutoRenew sets the AutoRenew field's value. func (s *Subscription) SetAutoRenew(v string) *Subscription { s.AutoRenew = &v return s } // SetEndTime sets the EndTime field's value. func (s *Subscription) SetEndTime(v time.Time) *Subscription { s.EndTime = &v return s } // SetLimits sets the Limits field's value. func (s *Subscription) SetLimits(v []*Limit) *Subscription { s.Limits = v return s } // SetProactiveEngagementStatus sets the ProactiveEngagementStatus field's value. func (s *Subscription) SetProactiveEngagementStatus(v string) *Subscription { s.ProactiveEngagementStatus = &v return s } // SetStartTime sets the StartTime field's value. func (s *Subscription) SetStartTime(v time.Time) *Subscription { s.StartTime = &v return s } // SetSubscriptionArn sets the SubscriptionArn field's value. func (s *Subscription) SetSubscriptionArn(v string) *Subscription { s.SubscriptionArn = &v return s } // SetSubscriptionLimits sets the SubscriptionLimits field's value. func (s *Subscription) SetSubscriptionLimits(v *SubscriptionLimits) *Subscription { s.SubscriptionLimits = v return s } // SetTimeCommitmentInSeconds sets the TimeCommitmentInSeconds field's value. func (s *Subscription) SetTimeCommitmentInSeconds(v int64) *Subscription { s.TimeCommitmentInSeconds = &v return s } // Limits settings for your subscription. type SubscriptionLimits struct { _ struct{} `type:"structure"` // Limits settings on protection groups for your subscription. // // ProtectionGroupLimits is a required field ProtectionGroupLimits *ProtectionGroupLimits `type:"structure" required:"true"` // Limits settings on protections for your subscription. // // ProtectionLimits is a required field ProtectionLimits *ProtectionLimits `type:"structure" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SubscriptionLimits) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SubscriptionLimits) GoString() string { return s.String() } // SetProtectionGroupLimits sets the ProtectionGroupLimits field's value. func (s *SubscriptionLimits) SetProtectionGroupLimits(v *ProtectionGroupLimits) *SubscriptionLimits { s.ProtectionGroupLimits = v return s } // SetProtectionLimits sets the ProtectionLimits field's value. func (s *SubscriptionLimits) SetProtectionLimits(v *ProtectionLimits) *SubscriptionLimits { s.ProtectionLimits = v return s } // A summary of information about the attack. type SummarizedAttackVector struct { _ struct{} `type:"structure"` // The list of counters that describe the details of the attack. VectorCounters []*SummarizedCounter `type:"list"` // The attack type, for example, SNMP reflection or SYN flood. // // VectorType is a required field VectorType *string `type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SummarizedAttackVector) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SummarizedAttackVector) GoString() string { return s.String() } // SetVectorCounters sets the VectorCounters field's value. func (s *SummarizedAttackVector) SetVectorCounters(v []*SummarizedCounter) *SummarizedAttackVector { s.VectorCounters = v return s } // SetVectorType sets the VectorType field's value. func (s *SummarizedAttackVector) SetVectorType(v string) *SummarizedAttackVector { s.VectorType = &v return s } // The counter that describes a DDoS attack. type SummarizedCounter struct { _ struct{} `type:"structure"` // The average value of the counter for a specified time period. Average *float64 `type:"double"` // The maximum value of the counter for a specified time period. Max *float64 `type:"double"` // The number of counters for a specified time period. N *int64 `type:"integer"` // The counter name. Name *string `type:"string"` // The total of counter values for a specified time period. Sum *float64 `type:"double"` // The unit of the counters. Unit *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SummarizedCounter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s SummarizedCounter) GoString() string { return s.String() } // SetAverage sets the Average field's value. func (s *SummarizedCounter) SetAverage(v float64) *SummarizedCounter { s.Average = &v return s } // SetMax sets the Max field's value. func (s *SummarizedCounter) SetMax(v float64) *SummarizedCounter { s.Max = &v return s } // SetN sets the N field's value. func (s *SummarizedCounter) SetN(v int64) *SummarizedCounter { s.N = &v return s } // SetName sets the Name field's value. func (s *SummarizedCounter) SetName(v string) *SummarizedCounter { s.Name = &v return s } // SetSum sets the Sum field's value. func (s *SummarizedCounter) SetSum(v float64) *SummarizedCounter { s.Sum = &v return s } // SetUnit sets the Unit field's value. func (s *SummarizedCounter) SetUnit(v string) *SummarizedCounter { s.Unit = &v return s } // A tag associated with an Amazon Web Services resource. Tags are key:value // pairs that you can use to categorize and manage your resources, for purposes // like billing or other management. Typically, the tag key represents a category, // such as "environment", and the tag value represents a specific value within // that category, such as "test," "development," or "production". Or you might // set the tag key to "customer" and the value to the customer name or ID. You // can specify one or more tags to add to each Amazon Web Services resource, // up to 50 tags for a resource. type Tag struct { _ struct{} `type:"structure"` // Part of the key:value pair that defines a tag. You can use a tag key to describe // a category of information, such as "customer." Tag keys are case-sensitive. Key *string `min:"1" type:"string"` // Part of the key:value pair that defines a tag. You can use a tag value to // describe a specific value within a category, such as "companyA" or "companyB." // Tag values are case-sensitive. Value *string `type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKey sets the Key field's value. func (s *Tag) SetKey(v string) *Tag { s.Key = &v return s } // SetValue sets the Value field's value. func (s *Tag) SetValue(v string) *Tag { s.Value = &v return s } type TagResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource that you want to add or update // tags for. // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` // The tags that you want to modify or add to the resource. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TagResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } if s.Tags != nil { for i, v := range s.Tags { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResourceARN sets the ResourceARN field's value. func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { s.ResourceARN = &v return s } // SetTags sets the Tags field's value. func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { s.Tags = v return s } type TagResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TagResourceOutput) GoString() string { return s.String() } // The time range. type TimeRange struct { _ struct{} `type:"structure"` // The start time, in Unix time in seconds. For more information see timestamp // (http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types). FromInclusive *time.Time `type:"timestamp"` // The end time, in Unix time in seconds. For more information see timestamp // (http://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#parameter-types). ToExclusive *time.Time `type:"timestamp"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TimeRange) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s TimeRange) GoString() string { return s.String() } // SetFromInclusive sets the FromInclusive field's value. func (s *TimeRange) SetFromInclusive(v time.Time) *TimeRange { s.FromInclusive = &v return s } // SetToExclusive sets the ToExclusive field's value. func (s *TimeRange) SetToExclusive(v time.Time) *TimeRange { s.ToExclusive = &v return s } type UntagResourceInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the resource that you want to remove tags // from. // // ResourceARN is a required field ResourceARN *string `min:"1" type:"string" required:"true"` // The tag key for each tag that you want to remove from the resource. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UntagResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UntagResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UntagResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} if s.ResourceARN == nil { invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResourceARN sets the ResourceARN field's value. func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { s.ResourceARN = &v return s } // SetTagKeys sets the TagKeys field's value. func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { s.TagKeys = v return s } type UntagResourceOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UntagResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UntagResourceOutput) GoString() string { return s.String() } type UpdateEmergencyContactSettingsInput struct { _ struct{} `type:"structure"` // 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. // // If you have proactive engagement enabled, the contact list must include at // least one phone number. EmergencyContactList []*EmergencyContact `type:"list"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateEmergencyContactSettingsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateEmergencyContactSettingsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateEmergencyContactSettingsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateEmergencyContactSettingsInput"} if s.EmergencyContactList != nil { for i, v := range s.EmergencyContactList { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EmergencyContactList", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetEmergencyContactList sets the EmergencyContactList field's value. func (s *UpdateEmergencyContactSettingsInput) SetEmergencyContactList(v []*EmergencyContact) *UpdateEmergencyContactSettingsInput { s.EmergencyContactList = v return s } type UpdateEmergencyContactSettingsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateEmergencyContactSettingsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateEmergencyContactSettingsOutput) GoString() string { return s.String() } type UpdateProtectionGroupInput struct { _ struct{} `type:"structure"` // Defines how Shield combines resource data for the group in order to detect, // mitigate, and report events. // // * Sum - Use the total traffic across the group. This is a good choice // for most cases. Examples include Elastic IP addresses for EC2 instances // that scale manually or automatically. // // * Mean - Use the average of the traffic across the group. This is a good // choice for resources that share traffic uniformly. Examples include accelerators // and load balancers. // // * Max - Use the highest traffic from each resource. This is useful for // resources that don't share traffic and for resources that share that traffic // in a non-uniform way. Examples include Amazon CloudFront distributions // and origin resources for CloudFront distributions. // // Aggregation is a required field Aggregation *string `type:"string" required:"true" enum:"ProtectionGroupAggregation"` // The Amazon Resource Names (ARNs) of the resources to include in the protection // group. You must set this when you set Pattern to ARBITRARY and you must not // set it for any other Pattern setting. Members []*string `type:"list"` // The criteria to use to choose the protected resources for inclusion in the // group. You can include all resources that have protections, provide a list // of resource Amazon Resource Names (ARNs), or include all resources of a specified // resource type. // // Pattern is a required field Pattern *string `type:"string" required:"true" enum:"ProtectionGroupPattern"` // The name of the protection group. You use this to identify the protection // group in lists and to manage the protection group, for example to update, // delete, or describe it. // // ProtectionGroupId is a required field ProtectionGroupId *string `min:"1" type:"string" required:"true"` // The resource type to include in the protection group. All protected resources // of this type are included in the protection group. You must set this when // you set Pattern to BY_RESOURCE_TYPE and you must not set it for any other // Pattern setting. ResourceType *string `type:"string" enum:"ProtectedResourceType"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateProtectionGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateProtectionGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateProtectionGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateProtectionGroupInput"} if s.Aggregation == nil { invalidParams.Add(request.NewErrParamRequired("Aggregation")) } if s.Pattern == nil { invalidParams.Add(request.NewErrParamRequired("Pattern")) } if s.ProtectionGroupId == nil { invalidParams.Add(request.NewErrParamRequired("ProtectionGroupId")) } if s.ProtectionGroupId != nil && len(*s.ProtectionGroupId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ProtectionGroupId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetAggregation sets the Aggregation field's value. func (s *UpdateProtectionGroupInput) SetAggregation(v string) *UpdateProtectionGroupInput { s.Aggregation = &v return s } // SetMembers sets the Members field's value. func (s *UpdateProtectionGroupInput) SetMembers(v []*string) *UpdateProtectionGroupInput { s.Members = v return s } // SetPattern sets the Pattern field's value. func (s *UpdateProtectionGroupInput) SetPattern(v string) *UpdateProtectionGroupInput { s.Pattern = &v return s } // SetProtectionGroupId sets the ProtectionGroupId field's value. func (s *UpdateProtectionGroupInput) SetProtectionGroupId(v string) *UpdateProtectionGroupInput { s.ProtectionGroupId = &v return s } // SetResourceType sets the ResourceType field's value. func (s *UpdateProtectionGroupInput) SetResourceType(v string) *UpdateProtectionGroupInput { s.ResourceType = &v return s } type UpdateProtectionGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateProtectionGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateProtectionGroupOutput) GoString() string { return s.String() } type UpdateSubscriptionInput struct { _ struct{} `type:"structure"` // When you initally create a subscription, AutoRenew is set to ENABLED. If // ENABLED, the subscription will be automatically renewed at the end of the // existing subscription period. You can change this by submitting an UpdateSubscription // request. If the UpdateSubscription request does not included a value for // AutoRenew, the existing value for AutoRenew remains unchanged. AutoRenew *string `type:"string" enum:"AutoRenew"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateSubscriptionInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateSubscriptionInput) GoString() string { return s.String() } // SetAutoRenew sets the AutoRenew field's value. func (s *UpdateSubscriptionInput) SetAutoRenew(v string) *UpdateSubscriptionInput { s.AutoRenew = &v return s } type UpdateSubscriptionOutput struct { _ struct{} `type:"structure"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateSubscriptionOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s UpdateSubscriptionOutput) GoString() string { return s.String() } // Provides information about a particular parameter passed inside a request // that resulted in an exception. type ValidationExceptionField struct { _ struct{} `type:"structure"` // The message describing why the parameter failed validation. // // Message is a required field Message *string `locationName:"message" type:"string" required:"true"` // The name of the parameter that failed validation. // // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ValidationExceptionField) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ValidationExceptionField) GoString() string { return s.String() } // SetMessage sets the Message field's value. func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField { s.Message = &v return s } // SetName sets the Name field's value. func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { s.Name = &v return s } const ( // AttackLayerNetwork is a AttackLayer enum value AttackLayerNetwork = "NETWORK" // AttackLayerApplication is a AttackLayer enum value AttackLayerApplication = "APPLICATION" ) // AttackLayer_Values returns all elements of the AttackLayer enum func AttackLayer_Values() []string { return []string{ AttackLayerNetwork, AttackLayerApplication, } } const ( // AttackPropertyIdentifierDestinationUrl is a AttackPropertyIdentifier enum value AttackPropertyIdentifierDestinationUrl = "DESTINATION_URL" // AttackPropertyIdentifierReferrer is a AttackPropertyIdentifier enum value AttackPropertyIdentifierReferrer = "REFERRER" // AttackPropertyIdentifierSourceAsn is a AttackPropertyIdentifier enum value AttackPropertyIdentifierSourceAsn = "SOURCE_ASN" // AttackPropertyIdentifierSourceCountry is a AttackPropertyIdentifier enum value AttackPropertyIdentifierSourceCountry = "SOURCE_COUNTRY" // AttackPropertyIdentifierSourceIpAddress is a AttackPropertyIdentifier enum value AttackPropertyIdentifierSourceIpAddress = "SOURCE_IP_ADDRESS" // AttackPropertyIdentifierSourceUserAgent is a AttackPropertyIdentifier enum value AttackPropertyIdentifierSourceUserAgent = "SOURCE_USER_AGENT" // AttackPropertyIdentifierWordpressPingbackReflector is a AttackPropertyIdentifier enum value AttackPropertyIdentifierWordpressPingbackReflector = "WORDPRESS_PINGBACK_REFLECTOR" // AttackPropertyIdentifierWordpressPingbackSource is a AttackPropertyIdentifier enum value AttackPropertyIdentifierWordpressPingbackSource = "WORDPRESS_PINGBACK_SOURCE" ) // AttackPropertyIdentifier_Values returns all elements of the AttackPropertyIdentifier enum func AttackPropertyIdentifier_Values() []string { return []string{ AttackPropertyIdentifierDestinationUrl, AttackPropertyIdentifierReferrer, AttackPropertyIdentifierSourceAsn, AttackPropertyIdentifierSourceCountry, AttackPropertyIdentifierSourceIpAddress, AttackPropertyIdentifierSourceUserAgent, AttackPropertyIdentifierWordpressPingbackReflector, AttackPropertyIdentifierWordpressPingbackSource, } } const ( // AutoRenewEnabled is a AutoRenew enum value AutoRenewEnabled = "ENABLED" // AutoRenewDisabled is a AutoRenew enum value AutoRenewDisabled = "DISABLED" ) // AutoRenew_Values returns all elements of the AutoRenew enum func AutoRenew_Values() []string { return []string{ AutoRenewEnabled, AutoRenewDisabled, } } const ( // ProactiveEngagementStatusEnabled is a ProactiveEngagementStatus enum value ProactiveEngagementStatusEnabled = "ENABLED" // ProactiveEngagementStatusDisabled is a ProactiveEngagementStatus enum value ProactiveEngagementStatusDisabled = "DISABLED" // ProactiveEngagementStatusPending is a ProactiveEngagementStatus enum value ProactiveEngagementStatusPending = "PENDING" ) // ProactiveEngagementStatus_Values returns all elements of the ProactiveEngagementStatus enum func ProactiveEngagementStatus_Values() []string { return []string{ ProactiveEngagementStatusEnabled, ProactiveEngagementStatusDisabled, ProactiveEngagementStatusPending, } } const ( // ProtectedResourceTypeCloudfrontDistribution is a ProtectedResourceType enum value ProtectedResourceTypeCloudfrontDistribution = "CLOUDFRONT_DISTRIBUTION" // ProtectedResourceTypeRoute53HostedZone is a ProtectedResourceType enum value ProtectedResourceTypeRoute53HostedZone = "ROUTE_53_HOSTED_ZONE" // ProtectedResourceTypeElasticIpAllocation is a ProtectedResourceType enum value ProtectedResourceTypeElasticIpAllocation = "ELASTIC_IP_ALLOCATION" // ProtectedResourceTypeClassicLoadBalancer is a ProtectedResourceType enum value ProtectedResourceTypeClassicLoadBalancer = "CLASSIC_LOAD_BALANCER" // ProtectedResourceTypeApplicationLoadBalancer is a ProtectedResourceType enum value ProtectedResourceTypeApplicationLoadBalancer = "APPLICATION_LOAD_BALANCER" // ProtectedResourceTypeGlobalAccelerator is a ProtectedResourceType enum value ProtectedResourceTypeGlobalAccelerator = "GLOBAL_ACCELERATOR" ) // ProtectedResourceType_Values returns all elements of the ProtectedResourceType enum func ProtectedResourceType_Values() []string { return []string{ ProtectedResourceTypeCloudfrontDistribution, ProtectedResourceTypeRoute53HostedZone, ProtectedResourceTypeElasticIpAllocation, ProtectedResourceTypeClassicLoadBalancer, ProtectedResourceTypeApplicationLoadBalancer, ProtectedResourceTypeGlobalAccelerator, } } const ( // ProtectionGroupAggregationSum is a ProtectionGroupAggregation enum value ProtectionGroupAggregationSum = "SUM" // ProtectionGroupAggregationMean is a ProtectionGroupAggregation enum value ProtectionGroupAggregationMean = "MEAN" // ProtectionGroupAggregationMax is a ProtectionGroupAggregation enum value ProtectionGroupAggregationMax = "MAX" ) // ProtectionGroupAggregation_Values returns all elements of the ProtectionGroupAggregation enum func ProtectionGroupAggregation_Values() []string { return []string{ ProtectionGroupAggregationSum, ProtectionGroupAggregationMean, ProtectionGroupAggregationMax, } } const ( // ProtectionGroupPatternAll is a ProtectionGroupPattern enum value ProtectionGroupPatternAll = "ALL" // ProtectionGroupPatternArbitrary is a ProtectionGroupPattern enum value ProtectionGroupPatternArbitrary = "ARBITRARY" // ProtectionGroupPatternByResourceType is a ProtectionGroupPattern enum value ProtectionGroupPatternByResourceType = "BY_RESOURCE_TYPE" ) // ProtectionGroupPattern_Values returns all elements of the ProtectionGroupPattern enum func ProtectionGroupPattern_Values() []string { return []string{ ProtectionGroupPatternAll, ProtectionGroupPatternArbitrary, ProtectionGroupPatternByResourceType, } } const ( // SubResourceTypeIp is a SubResourceType enum value SubResourceTypeIp = "IP" // SubResourceTypeUrl is a SubResourceType enum value SubResourceTypeUrl = "URL" ) // SubResourceType_Values returns all elements of the SubResourceType enum func SubResourceType_Values() []string { return []string{ SubResourceTypeIp, SubResourceTypeUrl, } } const ( // SubscriptionStateActive is a SubscriptionState enum value SubscriptionStateActive = "ACTIVE" // SubscriptionStateInactive is a SubscriptionState enum value SubscriptionStateInactive = "INACTIVE" ) // SubscriptionState_Values returns all elements of the SubscriptionState enum func SubscriptionState_Values() []string { return []string{ SubscriptionStateActive, SubscriptionStateInactive, } } const ( // UnitBits is a Unit enum value UnitBits = "BITS" // UnitBytes is a Unit enum value UnitBytes = "BYTES" // UnitPackets is a Unit enum value UnitPackets = "PACKETS" // UnitRequests is a Unit enum value UnitRequests = "REQUESTS" ) // Unit_Values returns all elements of the Unit enum func Unit_Values() []string { return []string{ UnitBits, UnitBytes, UnitPackets, UnitRequests, } } const ( // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value ValidationExceptionReasonFieldValidationFailed = "FIELD_VALIDATION_FAILED" // ValidationExceptionReasonOther is a ValidationExceptionReason enum value ValidationExceptionReasonOther = "OTHER" ) // ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum func ValidationExceptionReason_Values() []string { return []string{ ValidationExceptionReasonFieldValidationFailed, ValidationExceptionReasonOther, } }