1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package wafregional 4 5import ( 6 "fmt" 7 8 "github.com/aws/aws-sdk-go/aws" 9 "github.com/aws/aws-sdk-go/aws/awsutil" 10 "github.com/aws/aws-sdk-go/aws/request" 11 "github.com/aws/aws-sdk-go/private/protocol" 12 "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" 13 "github.com/aws/aws-sdk-go/service/waf" 14) 15 16const opAssociateWebACL = "AssociateWebACL" 17 18// AssociateWebACLRequest generates a "aws/request.Request" representing the 19// client's request for the AssociateWebACL operation. The "output" return 20// value will be populated with the request's response once the request completes 21// successfully. 22// 23// Use "Send" method on the returned Request to send the API call to the service. 24// the "output" return value is not valid until after Send returns without error. 25// 26// See AssociateWebACL for more information on using the AssociateWebACL 27// API call, and error handling. 28// 29// This method is useful when you want to inject custom logic or configuration 30// into the SDK's request lifecycle. Such as custom headers, or retry logic. 31// 32// 33// // Example sending a request using the AssociateWebACLRequest method. 34// req, resp := client.AssociateWebACLRequest(params) 35// 36// err := req.Send() 37// if err == nil { // resp is now filled 38// fmt.Println(resp) 39// } 40// 41// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/AssociateWebACL 42func (c *WAFRegional) AssociateWebACLRequest(input *AssociateWebACLInput) (req *request.Request, output *AssociateWebACLOutput) { 43 op := &request.Operation{ 44 Name: opAssociateWebACL, 45 HTTPMethod: "POST", 46 HTTPPath: "/", 47 } 48 49 if input == nil { 50 input = &AssociateWebACLInput{} 51 } 52 53 output = &AssociateWebACLOutput{} 54 req = c.newRequest(op, input, output) 55 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 56 return 57} 58 59// AssociateWebACL API operation for AWS WAF Regional. 60// 61// 62// This is AWS WAF Classic Regional documentation. For more information, see 63// AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 64// in the developer guide. 65// 66// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 67// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 68// With the latest version, AWS WAF has a single set of endpoints for regional 69// and global use. 70// 71// Associates a web ACL with a resource, either an application load balancer 72// or Amazon API Gateway stage. 73// 74// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 75// with awserr.Error's Code and Message methods to get detailed information about 76// the error. 77// 78// See the AWS API reference guide for AWS WAF Regional's 79// API operation AssociateWebACL for usage and error information. 80// 81// Returned Error Types: 82// * WAFInternalErrorException 83// The operation failed because of a system problem, even though the request 84// was valid. Retry your request. 85// 86// * WAFInvalidAccountException 87// The operation failed because you tried to create, update, or delete an object 88// by using an invalid account identifier. 89// 90// * WAFInvalidParameterException 91// The operation failed because AWS WAF didn't recognize a parameter in the 92// request. For example: 93// 94// * You specified an invalid parameter name. 95// 96// * You specified an invalid value. 97// 98// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 99// using an action other than INSERT or DELETE. 100// 101// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 102// BLOCK, or COUNT. 103// 104// * You tried to create a RateBasedRule with a RateKey value other than 105// IP. 106// 107// * You tried to update a WebACL with a WafAction Type other than ALLOW, 108// BLOCK, or COUNT. 109// 110// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 111// HEADER, METHOD, QUERY_STRING, URI, or BODY. 112// 113// * You tried to update a ByteMatchSet with a Field of HEADER but no value 114// for Data. 115// 116// * Your request references an ARN that is malformed, or corresponds to 117// a resource with which a web ACL cannot be associated. 118// 119// * WAFNonexistentItemException 120// The operation failed because the referenced object doesn't exist. 121// 122// * WAFUnavailableEntityException 123// The operation failed because the entity referenced is temporarily unavailable. 124// Retry your request. 125// 126// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/AssociateWebACL 127func (c *WAFRegional) AssociateWebACL(input *AssociateWebACLInput) (*AssociateWebACLOutput, error) { 128 req, out := c.AssociateWebACLRequest(input) 129 return out, req.Send() 130} 131 132// AssociateWebACLWithContext is the same as AssociateWebACL with the addition of 133// the ability to pass a context and additional request options. 134// 135// See AssociateWebACL for details on how to use this API operation. 136// 137// The context must be non-nil and will be used for request cancellation. If 138// the context is nil a panic will occur. In the future the SDK may create 139// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 140// for more information on using Contexts. 141func (c *WAFRegional) AssociateWebACLWithContext(ctx aws.Context, input *AssociateWebACLInput, opts ...request.Option) (*AssociateWebACLOutput, error) { 142 req, out := c.AssociateWebACLRequest(input) 143 req.SetContext(ctx) 144 req.ApplyOptions(opts...) 145 return out, req.Send() 146} 147 148const opCreateByteMatchSet = "CreateByteMatchSet" 149 150// CreateByteMatchSetRequest generates a "aws/request.Request" representing the 151// client's request for the CreateByteMatchSet operation. The "output" return 152// value will be populated with the request's response once the request completes 153// successfully. 154// 155// Use "Send" method on the returned Request to send the API call to the service. 156// the "output" return value is not valid until after Send returns without error. 157// 158// See CreateByteMatchSet for more information on using the CreateByteMatchSet 159// API call, and error handling. 160// 161// This method is useful when you want to inject custom logic or configuration 162// into the SDK's request lifecycle. Such as custom headers, or retry logic. 163// 164// 165// // Example sending a request using the CreateByteMatchSetRequest method. 166// req, resp := client.CreateByteMatchSetRequest(params) 167// 168// err := req.Send() 169// if err == nil { // resp is now filled 170// fmt.Println(resp) 171// } 172// 173// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateByteMatchSet 174func (c *WAFRegional) CreateByteMatchSetRequest(input *waf.CreateByteMatchSetInput) (req *request.Request, output *waf.CreateByteMatchSetOutput) { 175 op := &request.Operation{ 176 Name: opCreateByteMatchSet, 177 HTTPMethod: "POST", 178 HTTPPath: "/", 179 } 180 181 if input == nil { 182 input = &waf.CreateByteMatchSetInput{} 183 } 184 185 output = &waf.CreateByteMatchSetOutput{} 186 req = c.newRequest(op, input, output) 187 return 188} 189 190// CreateByteMatchSet API operation for AWS WAF Regional. 191// 192// 193// This is AWS WAF Classic documentation. For more information, see AWS WAF 194// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 195// in the developer guide. 196// 197// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 198// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 199// With the latest version, AWS WAF has a single set of endpoints for regional 200// and global use. 201// 202// Creates a ByteMatchSet. You then use UpdateByteMatchSet to identify the part 203// of a web request that you want AWS WAF to inspect, such as the values of 204// the User-Agent header or the query string. For example, you can create a 205// ByteMatchSet that matches any requests with User-Agent headers that contain 206// the string BadBot. You can then configure AWS WAF to reject those requests. 207// 208// To create and configure a ByteMatchSet, perform the following steps: 209// 210// Use GetChangeToken to get the change token that you provide in the ChangeToken 211// parameter of a CreateByteMatchSet request. 212// 213// Submit a CreateByteMatchSet request. 214// 215// Use GetChangeToken to get the change token that you provide in the ChangeToken 216// parameter of an UpdateByteMatchSet request. 217// 218// Submit an UpdateByteMatchSet request to specify the part of the request that 219// you want AWS WAF to inspect (for example, the header or the URI) and the 220// value that you want AWS WAF to watch for. 221// 222// For more information about how to use the AWS WAF API to allow or block HTTP 223// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 224// 225// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 226// with awserr.Error's Code and Message methods to get detailed information about 227// the error. 228// 229// See the AWS API reference guide for AWS WAF Regional's 230// API operation CreateByteMatchSet for usage and error information. 231// 232// Returned Error Types: 233// * WAFDisallowedNameException 234// The name specified is invalid. 235// 236// * WAFInternalErrorException 237// The operation failed because of a system problem, even though the request 238// was valid. Retry your request. 239// 240// * WAFInvalidAccountException 241// The operation failed because you tried to create, update, or delete an object 242// by using an invalid account identifier. 243// 244// * WAFInvalidParameterException 245// The operation failed because AWS WAF didn't recognize a parameter in the 246// request. For example: 247// 248// * You specified an invalid parameter name. 249// 250// * You specified an invalid value. 251// 252// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 253// using an action other than INSERT or DELETE. 254// 255// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 256// BLOCK, or COUNT. 257// 258// * You tried to create a RateBasedRule with a RateKey value other than 259// IP. 260// 261// * You tried to update a WebACL with a WafAction Type other than ALLOW, 262// BLOCK, or COUNT. 263// 264// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 265// HEADER, METHOD, QUERY_STRING, URI, or BODY. 266// 267// * You tried to update a ByteMatchSet with a Field of HEADER but no value 268// for Data. 269// 270// * Your request references an ARN that is malformed, or corresponds to 271// a resource with which a web ACL cannot be associated. 272// 273// * WAFStaleDataException 274// The operation failed because you tried to create, update, or delete an object 275// by using a change token that has already been used. 276// 277// * WAFLimitsExceededException 278// The operation exceeds a resource limit, for example, the maximum number of 279// WebACL objects that you can create for an AWS account. For more information, 280// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 281// in the AWS WAF Developer Guide. 282// 283// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateByteMatchSet 284func (c *WAFRegional) CreateByteMatchSet(input *waf.CreateByteMatchSetInput) (*waf.CreateByteMatchSetOutput, error) { 285 req, out := c.CreateByteMatchSetRequest(input) 286 return out, req.Send() 287} 288 289// CreateByteMatchSetWithContext is the same as CreateByteMatchSet with the addition of 290// the ability to pass a context and additional request options. 291// 292// See CreateByteMatchSet for details on how to use this API operation. 293// 294// The context must be non-nil and will be used for request cancellation. If 295// the context is nil a panic will occur. In the future the SDK may create 296// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 297// for more information on using Contexts. 298func (c *WAFRegional) CreateByteMatchSetWithContext(ctx aws.Context, input *waf.CreateByteMatchSetInput, opts ...request.Option) (*waf.CreateByteMatchSetOutput, error) { 299 req, out := c.CreateByteMatchSetRequest(input) 300 req.SetContext(ctx) 301 req.ApplyOptions(opts...) 302 return out, req.Send() 303} 304 305const opCreateGeoMatchSet = "CreateGeoMatchSet" 306 307// CreateGeoMatchSetRequest generates a "aws/request.Request" representing the 308// client's request for the CreateGeoMatchSet operation. The "output" return 309// value will be populated with the request's response once the request completes 310// successfully. 311// 312// Use "Send" method on the returned Request to send the API call to the service. 313// the "output" return value is not valid until after Send returns without error. 314// 315// See CreateGeoMatchSet for more information on using the CreateGeoMatchSet 316// API call, and error handling. 317// 318// This method is useful when you want to inject custom logic or configuration 319// into the SDK's request lifecycle. Such as custom headers, or retry logic. 320// 321// 322// // Example sending a request using the CreateGeoMatchSetRequest method. 323// req, resp := client.CreateGeoMatchSetRequest(params) 324// 325// err := req.Send() 326// if err == nil { // resp is now filled 327// fmt.Println(resp) 328// } 329// 330// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateGeoMatchSet 331func (c *WAFRegional) CreateGeoMatchSetRequest(input *waf.CreateGeoMatchSetInput) (req *request.Request, output *waf.CreateGeoMatchSetOutput) { 332 op := &request.Operation{ 333 Name: opCreateGeoMatchSet, 334 HTTPMethod: "POST", 335 HTTPPath: "/", 336 } 337 338 if input == nil { 339 input = &waf.CreateGeoMatchSetInput{} 340 } 341 342 output = &waf.CreateGeoMatchSetOutput{} 343 req = c.newRequest(op, input, output) 344 return 345} 346 347// CreateGeoMatchSet API operation for AWS WAF Regional. 348// 349// 350// This is AWS WAF Classic documentation. For more information, see AWS WAF 351// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 352// in the developer guide. 353// 354// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 355// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 356// With the latest version, AWS WAF has a single set of endpoints for regional 357// and global use. 358// 359// Creates an GeoMatchSet, which you use to specify which web requests you want 360// to allow or block based on the country that the requests originate from. 361// For example, if you're receiving a lot of requests from one or more countries 362// and you want to block the requests, you can create an GeoMatchSet that contains 363// those countries and then configure AWS WAF to block the requests. 364// 365// To create and configure a GeoMatchSet, perform the following steps: 366// 367// Use GetChangeToken to get the change token that you provide in the ChangeToken 368// parameter of a CreateGeoMatchSet request. 369// 370// Submit a CreateGeoMatchSet request. 371// 372// Use GetChangeToken to get the change token that you provide in the ChangeToken 373// parameter of an UpdateGeoMatchSet request. 374// 375// Submit an UpdateGeoMatchSetSet request to specify the countries that you 376// want AWS WAF to watch for. 377// 378// For more information about how to use the AWS WAF API to allow or block HTTP 379// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 380// 381// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 382// with awserr.Error's Code and Message methods to get detailed information about 383// the error. 384// 385// See the AWS API reference guide for AWS WAF Regional's 386// API operation CreateGeoMatchSet for usage and error information. 387// 388// Returned Error Types: 389// * WAFStaleDataException 390// The operation failed because you tried to create, update, or delete an object 391// by using a change token that has already been used. 392// 393// * WAFInternalErrorException 394// The operation failed because of a system problem, even though the request 395// was valid. Retry your request. 396// 397// * WAFInvalidAccountException 398// The operation failed because you tried to create, update, or delete an object 399// by using an invalid account identifier. 400// 401// * WAFDisallowedNameException 402// The name specified is invalid. 403// 404// * WAFInvalidParameterException 405// The operation failed because AWS WAF didn't recognize a parameter in the 406// request. For example: 407// 408// * You specified an invalid parameter name. 409// 410// * You specified an invalid value. 411// 412// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 413// using an action other than INSERT or DELETE. 414// 415// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 416// BLOCK, or COUNT. 417// 418// * You tried to create a RateBasedRule with a RateKey value other than 419// IP. 420// 421// * You tried to update a WebACL with a WafAction Type other than ALLOW, 422// BLOCK, or COUNT. 423// 424// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 425// HEADER, METHOD, QUERY_STRING, URI, or BODY. 426// 427// * You tried to update a ByteMatchSet with a Field of HEADER but no value 428// for Data. 429// 430// * Your request references an ARN that is malformed, or corresponds to 431// a resource with which a web ACL cannot be associated. 432// 433// * WAFLimitsExceededException 434// The operation exceeds a resource limit, for example, the maximum number of 435// WebACL objects that you can create for an AWS account. For more information, 436// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 437// in the AWS WAF Developer Guide. 438// 439// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateGeoMatchSet 440func (c *WAFRegional) CreateGeoMatchSet(input *waf.CreateGeoMatchSetInput) (*waf.CreateGeoMatchSetOutput, error) { 441 req, out := c.CreateGeoMatchSetRequest(input) 442 return out, req.Send() 443} 444 445// CreateGeoMatchSetWithContext is the same as CreateGeoMatchSet with the addition of 446// the ability to pass a context and additional request options. 447// 448// See CreateGeoMatchSet for details on how to use this API operation. 449// 450// The context must be non-nil and will be used for request cancellation. If 451// the context is nil a panic will occur. In the future the SDK may create 452// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 453// for more information on using Contexts. 454func (c *WAFRegional) CreateGeoMatchSetWithContext(ctx aws.Context, input *waf.CreateGeoMatchSetInput, opts ...request.Option) (*waf.CreateGeoMatchSetOutput, error) { 455 req, out := c.CreateGeoMatchSetRequest(input) 456 req.SetContext(ctx) 457 req.ApplyOptions(opts...) 458 return out, req.Send() 459} 460 461const opCreateIPSet = "CreateIPSet" 462 463// CreateIPSetRequest generates a "aws/request.Request" representing the 464// client's request for the CreateIPSet operation. The "output" return 465// value will be populated with the request's response once the request completes 466// successfully. 467// 468// Use "Send" method on the returned Request to send the API call to the service. 469// the "output" return value is not valid until after Send returns without error. 470// 471// See CreateIPSet for more information on using the CreateIPSet 472// API call, and error handling. 473// 474// This method is useful when you want to inject custom logic or configuration 475// into the SDK's request lifecycle. Such as custom headers, or retry logic. 476// 477// 478// // Example sending a request using the CreateIPSetRequest method. 479// req, resp := client.CreateIPSetRequest(params) 480// 481// err := req.Send() 482// if err == nil { // resp is now filled 483// fmt.Println(resp) 484// } 485// 486// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateIPSet 487func (c *WAFRegional) CreateIPSetRequest(input *waf.CreateIPSetInput) (req *request.Request, output *waf.CreateIPSetOutput) { 488 op := &request.Operation{ 489 Name: opCreateIPSet, 490 HTTPMethod: "POST", 491 HTTPPath: "/", 492 } 493 494 if input == nil { 495 input = &waf.CreateIPSetInput{} 496 } 497 498 output = &waf.CreateIPSetOutput{} 499 req = c.newRequest(op, input, output) 500 return 501} 502 503// CreateIPSet API operation for AWS WAF Regional. 504// 505// 506// This is AWS WAF Classic documentation. For more information, see AWS WAF 507// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 508// in the developer guide. 509// 510// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 511// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 512// With the latest version, AWS WAF has a single set of endpoints for regional 513// and global use. 514// 515// Creates an IPSet, which you use to specify which web requests that you want 516// to allow or block based on the IP addresses that the requests originate from. 517// For example, if you're receiving a lot of requests from one or more individual 518// IP addresses or one or more ranges of IP addresses and you want to block 519// the requests, you can create an IPSet that contains those IP addresses and 520// then configure AWS WAF to block the requests. 521// 522// To create and configure an IPSet, perform the following steps: 523// 524// Use GetChangeToken to get the change token that you provide in the ChangeToken 525// parameter of a CreateIPSet request. 526// 527// Submit a CreateIPSet request. 528// 529// Use GetChangeToken to get the change token that you provide in the ChangeToken 530// parameter of an UpdateIPSet request. 531// 532// Submit an UpdateIPSet request to specify the IP addresses that you want AWS 533// WAF to watch for. 534// 535// For more information about how to use the AWS WAF API to allow or block HTTP 536// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 537// 538// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 539// with awserr.Error's Code and Message methods to get detailed information about 540// the error. 541// 542// See the AWS API reference guide for AWS WAF Regional's 543// API operation CreateIPSet for usage and error information. 544// 545// Returned Error Types: 546// * WAFStaleDataException 547// The operation failed because you tried to create, update, or delete an object 548// by using a change token that has already been used. 549// 550// * WAFInternalErrorException 551// The operation failed because of a system problem, even though the request 552// was valid. Retry your request. 553// 554// * WAFInvalidAccountException 555// The operation failed because you tried to create, update, or delete an object 556// by using an invalid account identifier. 557// 558// * WAFDisallowedNameException 559// The name specified is invalid. 560// 561// * WAFInvalidParameterException 562// The operation failed because AWS WAF didn't recognize a parameter in the 563// request. For example: 564// 565// * You specified an invalid parameter name. 566// 567// * You specified an invalid value. 568// 569// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 570// using an action other than INSERT or DELETE. 571// 572// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 573// BLOCK, or COUNT. 574// 575// * You tried to create a RateBasedRule with a RateKey value other than 576// IP. 577// 578// * You tried to update a WebACL with a WafAction Type other than ALLOW, 579// BLOCK, or COUNT. 580// 581// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 582// HEADER, METHOD, QUERY_STRING, URI, or BODY. 583// 584// * You tried to update a ByteMatchSet with a Field of HEADER but no value 585// for Data. 586// 587// * Your request references an ARN that is malformed, or corresponds to 588// a resource with which a web ACL cannot be associated. 589// 590// * WAFLimitsExceededException 591// The operation exceeds a resource limit, for example, the maximum number of 592// WebACL objects that you can create for an AWS account. For more information, 593// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 594// in the AWS WAF Developer Guide. 595// 596// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateIPSet 597func (c *WAFRegional) CreateIPSet(input *waf.CreateIPSetInput) (*waf.CreateIPSetOutput, error) { 598 req, out := c.CreateIPSetRequest(input) 599 return out, req.Send() 600} 601 602// CreateIPSetWithContext is the same as CreateIPSet with the addition of 603// the ability to pass a context and additional request options. 604// 605// See CreateIPSet for details on how to use this API operation. 606// 607// The context must be non-nil and will be used for request cancellation. If 608// the context is nil a panic will occur. In the future the SDK may create 609// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 610// for more information on using Contexts. 611func (c *WAFRegional) CreateIPSetWithContext(ctx aws.Context, input *waf.CreateIPSetInput, opts ...request.Option) (*waf.CreateIPSetOutput, error) { 612 req, out := c.CreateIPSetRequest(input) 613 req.SetContext(ctx) 614 req.ApplyOptions(opts...) 615 return out, req.Send() 616} 617 618const opCreateRateBasedRule = "CreateRateBasedRule" 619 620// CreateRateBasedRuleRequest generates a "aws/request.Request" representing the 621// client's request for the CreateRateBasedRule operation. The "output" return 622// value will be populated with the request's response once the request completes 623// successfully. 624// 625// Use "Send" method on the returned Request to send the API call to the service. 626// the "output" return value is not valid until after Send returns without error. 627// 628// See CreateRateBasedRule for more information on using the CreateRateBasedRule 629// API call, and error handling. 630// 631// This method is useful when you want to inject custom logic or configuration 632// into the SDK's request lifecycle. Such as custom headers, or retry logic. 633// 634// 635// // Example sending a request using the CreateRateBasedRuleRequest method. 636// req, resp := client.CreateRateBasedRuleRequest(params) 637// 638// err := req.Send() 639// if err == nil { // resp is now filled 640// fmt.Println(resp) 641// } 642// 643// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRateBasedRule 644func (c *WAFRegional) CreateRateBasedRuleRequest(input *waf.CreateRateBasedRuleInput) (req *request.Request, output *waf.CreateRateBasedRuleOutput) { 645 op := &request.Operation{ 646 Name: opCreateRateBasedRule, 647 HTTPMethod: "POST", 648 HTTPPath: "/", 649 } 650 651 if input == nil { 652 input = &waf.CreateRateBasedRuleInput{} 653 } 654 655 output = &waf.CreateRateBasedRuleOutput{} 656 req = c.newRequest(op, input, output) 657 return 658} 659 660// CreateRateBasedRule API operation for AWS WAF Regional. 661// 662// 663// This is AWS WAF Classic documentation. For more information, see AWS WAF 664// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 665// in the developer guide. 666// 667// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 668// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 669// With the latest version, AWS WAF has a single set of endpoints for regional 670// and global use. 671// 672// Creates a RateBasedRule. The RateBasedRule contains a RateLimit, which specifies 673// the maximum number of requests that AWS WAF allows from a specified IP address 674// in a five-minute period. The RateBasedRule also contains the IPSet objects, 675// ByteMatchSet objects, and other predicates that identify the requests that 676// you want to count or block if these requests exceed the RateLimit. 677// 678// If you add more than one predicate to a RateBasedRule, a request not only 679// must exceed the RateLimit, but it also must match all the conditions to be 680// counted or blocked. For example, suppose you add the following to a RateBasedRule: 681// 682// * An IPSet that matches the IP address 192.0.2.44/32 683// 684// * A ByteMatchSet that matches BadBot in the User-Agent header 685// 686// Further, you specify a RateLimit of 1,000. 687// 688// You then add the RateBasedRule to a WebACL and specify that you want to block 689// requests that meet the conditions in the rule. For a request to be blocked, 690// it must come from the IP address 192.0.2.44 and the User-Agent header in 691// the request must contain the value BadBot. Further, requests that match these 692// two conditions must be received at a rate of more than 1,000 requests every 693// five minutes. If both conditions are met and the rate is exceeded, AWS WAF 694// blocks the requests. If the rate drops below 1,000 for a five-minute period, 695// AWS WAF no longer blocks the requests. 696// 697// As a second example, suppose you want to limit requests to a particular page 698// on your site. To do this, you could add the following to a RateBasedRule: 699// 700// * A ByteMatchSet with FieldToMatch of URI 701// 702// * A PositionalConstraint of STARTS_WITH 703// 704// * A TargetString of login 705// 706// Further, you specify a RateLimit of 1,000. 707// 708// By adding this RateBasedRule to a WebACL, you could limit requests to your 709// login page without affecting the rest of your site. 710// 711// To create and configure a RateBasedRule, perform the following steps: 712// 713// Create and update the predicates that you want to include in the rule. For 714// more information, see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. 715// 716// Use GetChangeToken to get the change token that you provide in the ChangeToken 717// parameter of a CreateRule request. 718// 719// Submit a CreateRateBasedRule request. 720// 721// Use GetChangeToken to get the change token that you provide in the ChangeToken 722// parameter of an UpdateRule request. 723// 724// Submit an UpdateRateBasedRule request to specify the predicates that you 725// want to include in the rule. 726// 727// Create and update a WebACL that contains the RateBasedRule. For more information, 728// see CreateWebACL. 729// 730// For more information about how to use the AWS WAF API to allow or block HTTP 731// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 732// 733// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 734// with awserr.Error's Code and Message methods to get detailed information about 735// the error. 736// 737// See the AWS API reference guide for AWS WAF Regional's 738// API operation CreateRateBasedRule for usage and error information. 739// 740// Returned Error Types: 741// * WAFStaleDataException 742// The operation failed because you tried to create, update, or delete an object 743// by using a change token that has already been used. 744// 745// * WAFInternalErrorException 746// The operation failed because of a system problem, even though the request 747// was valid. Retry your request. 748// 749// * WAFDisallowedNameException 750// The name specified is invalid. 751// 752// * WAFInvalidParameterException 753// The operation failed because AWS WAF didn't recognize a parameter in the 754// request. For example: 755// 756// * You specified an invalid parameter name. 757// 758// * You specified an invalid value. 759// 760// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 761// using an action other than INSERT or DELETE. 762// 763// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 764// BLOCK, or COUNT. 765// 766// * You tried to create a RateBasedRule with a RateKey value other than 767// IP. 768// 769// * You tried to update a WebACL with a WafAction Type other than ALLOW, 770// BLOCK, or COUNT. 771// 772// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 773// HEADER, METHOD, QUERY_STRING, URI, or BODY. 774// 775// * You tried to update a ByteMatchSet with a Field of HEADER but no value 776// for Data. 777// 778// * Your request references an ARN that is malformed, or corresponds to 779// a resource with which a web ACL cannot be associated. 780// 781// * WAFLimitsExceededException 782// The operation exceeds a resource limit, for example, the maximum number of 783// WebACL objects that you can create for an AWS account. For more information, 784// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 785// in the AWS WAF Developer Guide. 786// 787// * WAFTagOperationException 788// 789// * WAFTagOperationInternalErrorException 790// 791// * WAFBadRequestException 792// 793// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRateBasedRule 794func (c *WAFRegional) CreateRateBasedRule(input *waf.CreateRateBasedRuleInput) (*waf.CreateRateBasedRuleOutput, error) { 795 req, out := c.CreateRateBasedRuleRequest(input) 796 return out, req.Send() 797} 798 799// CreateRateBasedRuleWithContext is the same as CreateRateBasedRule with the addition of 800// the ability to pass a context and additional request options. 801// 802// See CreateRateBasedRule for details on how to use this API operation. 803// 804// The context must be non-nil and will be used for request cancellation. If 805// the context is nil a panic will occur. In the future the SDK may create 806// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 807// for more information on using Contexts. 808func (c *WAFRegional) CreateRateBasedRuleWithContext(ctx aws.Context, input *waf.CreateRateBasedRuleInput, opts ...request.Option) (*waf.CreateRateBasedRuleOutput, error) { 809 req, out := c.CreateRateBasedRuleRequest(input) 810 req.SetContext(ctx) 811 req.ApplyOptions(opts...) 812 return out, req.Send() 813} 814 815const opCreateRegexMatchSet = "CreateRegexMatchSet" 816 817// CreateRegexMatchSetRequest generates a "aws/request.Request" representing the 818// client's request for the CreateRegexMatchSet operation. The "output" return 819// value will be populated with the request's response once the request completes 820// successfully. 821// 822// Use "Send" method on the returned Request to send the API call to the service. 823// the "output" return value is not valid until after Send returns without error. 824// 825// See CreateRegexMatchSet for more information on using the CreateRegexMatchSet 826// API call, and error handling. 827// 828// This method is useful when you want to inject custom logic or configuration 829// into the SDK's request lifecycle. Such as custom headers, or retry logic. 830// 831// 832// // Example sending a request using the CreateRegexMatchSetRequest method. 833// req, resp := client.CreateRegexMatchSetRequest(params) 834// 835// err := req.Send() 836// if err == nil { // resp is now filled 837// fmt.Println(resp) 838// } 839// 840// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRegexMatchSet 841func (c *WAFRegional) CreateRegexMatchSetRequest(input *waf.CreateRegexMatchSetInput) (req *request.Request, output *waf.CreateRegexMatchSetOutput) { 842 op := &request.Operation{ 843 Name: opCreateRegexMatchSet, 844 HTTPMethod: "POST", 845 HTTPPath: "/", 846 } 847 848 if input == nil { 849 input = &waf.CreateRegexMatchSetInput{} 850 } 851 852 output = &waf.CreateRegexMatchSetOutput{} 853 req = c.newRequest(op, input, output) 854 return 855} 856 857// CreateRegexMatchSet API operation for AWS WAF Regional. 858// 859// 860// This is AWS WAF Classic documentation. For more information, see AWS WAF 861// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 862// in the developer guide. 863// 864// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 865// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 866// With the latest version, AWS WAF has a single set of endpoints for regional 867// and global use. 868// 869// Creates a RegexMatchSet. You then use UpdateRegexMatchSet to identify the 870// part of a web request that you want AWS WAF to inspect, such as the values 871// of the User-Agent header or the query string. For example, you can create 872// a RegexMatchSet that contains a RegexMatchTuple that looks for any requests 873// with User-Agent headers that match a RegexPatternSet with pattern B[a@]dB[o0]t. 874// You can then configure AWS WAF to reject those requests. 875// 876// To create and configure a RegexMatchSet, perform the following steps: 877// 878// Use GetChangeToken to get the change token that you provide in the ChangeToken 879// parameter of a CreateRegexMatchSet request. 880// 881// Submit a CreateRegexMatchSet request. 882// 883// Use GetChangeToken to get the change token that you provide in the ChangeToken 884// parameter of an UpdateRegexMatchSet request. 885// 886// Submit an UpdateRegexMatchSet request to specify the part of the request 887// that you want AWS WAF to inspect (for example, the header or the URI) and 888// the value, using a RegexPatternSet, that you want AWS WAF to watch for. 889// 890// For more information about how to use the AWS WAF API to allow or block HTTP 891// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 892// 893// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 894// with awserr.Error's Code and Message methods to get detailed information about 895// the error. 896// 897// See the AWS API reference guide for AWS WAF Regional's 898// API operation CreateRegexMatchSet for usage and error information. 899// 900// Returned Error Types: 901// * WAFStaleDataException 902// The operation failed because you tried to create, update, or delete an object 903// by using a change token that has already been used. 904// 905// * WAFInternalErrorException 906// The operation failed because of a system problem, even though the request 907// was valid. Retry your request. 908// 909// * WAFDisallowedNameException 910// The name specified is invalid. 911// 912// * WAFLimitsExceededException 913// The operation exceeds a resource limit, for example, the maximum number of 914// WebACL objects that you can create for an AWS account. For more information, 915// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 916// in the AWS WAF Developer Guide. 917// 918// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRegexMatchSet 919func (c *WAFRegional) CreateRegexMatchSet(input *waf.CreateRegexMatchSetInput) (*waf.CreateRegexMatchSetOutput, error) { 920 req, out := c.CreateRegexMatchSetRequest(input) 921 return out, req.Send() 922} 923 924// CreateRegexMatchSetWithContext is the same as CreateRegexMatchSet with the addition of 925// the ability to pass a context and additional request options. 926// 927// See CreateRegexMatchSet for details on how to use this API operation. 928// 929// The context must be non-nil and will be used for request cancellation. If 930// the context is nil a panic will occur. In the future the SDK may create 931// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 932// for more information on using Contexts. 933func (c *WAFRegional) CreateRegexMatchSetWithContext(ctx aws.Context, input *waf.CreateRegexMatchSetInput, opts ...request.Option) (*waf.CreateRegexMatchSetOutput, error) { 934 req, out := c.CreateRegexMatchSetRequest(input) 935 req.SetContext(ctx) 936 req.ApplyOptions(opts...) 937 return out, req.Send() 938} 939 940const opCreateRegexPatternSet = "CreateRegexPatternSet" 941 942// CreateRegexPatternSetRequest generates a "aws/request.Request" representing the 943// client's request for the CreateRegexPatternSet operation. The "output" return 944// value will be populated with the request's response once the request completes 945// successfully. 946// 947// Use "Send" method on the returned Request to send the API call to the service. 948// the "output" return value is not valid until after Send returns without error. 949// 950// See CreateRegexPatternSet for more information on using the CreateRegexPatternSet 951// API call, and error handling. 952// 953// This method is useful when you want to inject custom logic or configuration 954// into the SDK's request lifecycle. Such as custom headers, or retry logic. 955// 956// 957// // Example sending a request using the CreateRegexPatternSetRequest method. 958// req, resp := client.CreateRegexPatternSetRequest(params) 959// 960// err := req.Send() 961// if err == nil { // resp is now filled 962// fmt.Println(resp) 963// } 964// 965// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRegexPatternSet 966func (c *WAFRegional) CreateRegexPatternSetRequest(input *waf.CreateRegexPatternSetInput) (req *request.Request, output *waf.CreateRegexPatternSetOutput) { 967 op := &request.Operation{ 968 Name: opCreateRegexPatternSet, 969 HTTPMethod: "POST", 970 HTTPPath: "/", 971 } 972 973 if input == nil { 974 input = &waf.CreateRegexPatternSetInput{} 975 } 976 977 output = &waf.CreateRegexPatternSetOutput{} 978 req = c.newRequest(op, input, output) 979 return 980} 981 982// CreateRegexPatternSet API operation for AWS WAF Regional. 983// 984// 985// This is AWS WAF Classic documentation. For more information, see AWS WAF 986// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 987// in the developer guide. 988// 989// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 990// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 991// With the latest version, AWS WAF has a single set of endpoints for regional 992// and global use. 993// 994// Creates a RegexPatternSet. You then use UpdateRegexPatternSet to specify 995// the regular expression (regex) pattern that you want AWS WAF to search for, 996// such as B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests. 997// 998// To create and configure a RegexPatternSet, perform the following steps: 999// 1000// Use GetChangeToken to get the change token that you provide in the ChangeToken 1001// parameter of a CreateRegexPatternSet request. 1002// 1003// Submit a CreateRegexPatternSet request. 1004// 1005// Use GetChangeToken to get the change token that you provide in the ChangeToken 1006// parameter of an UpdateRegexPatternSet request. 1007// 1008// Submit an UpdateRegexPatternSet request to specify the string that you want 1009// AWS WAF to watch for. 1010// 1011// For more information about how to use the AWS WAF API to allow or block HTTP 1012// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 1013// 1014// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1015// with awserr.Error's Code and Message methods to get detailed information about 1016// the error. 1017// 1018// See the AWS API reference guide for AWS WAF Regional's 1019// API operation CreateRegexPatternSet for usage and error information. 1020// 1021// Returned Error Types: 1022// * WAFStaleDataException 1023// The operation failed because you tried to create, update, or delete an object 1024// by using a change token that has already been used. 1025// 1026// * WAFInternalErrorException 1027// The operation failed because of a system problem, even though the request 1028// was valid. Retry your request. 1029// 1030// * WAFDisallowedNameException 1031// The name specified is invalid. 1032// 1033// * WAFLimitsExceededException 1034// The operation exceeds a resource limit, for example, the maximum number of 1035// WebACL objects that you can create for an AWS account. For more information, 1036// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 1037// in the AWS WAF Developer Guide. 1038// 1039// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRegexPatternSet 1040func (c *WAFRegional) CreateRegexPatternSet(input *waf.CreateRegexPatternSetInput) (*waf.CreateRegexPatternSetOutput, error) { 1041 req, out := c.CreateRegexPatternSetRequest(input) 1042 return out, req.Send() 1043} 1044 1045// CreateRegexPatternSetWithContext is the same as CreateRegexPatternSet with the addition of 1046// the ability to pass a context and additional request options. 1047// 1048// See CreateRegexPatternSet for details on how to use this API operation. 1049// 1050// The context must be non-nil and will be used for request cancellation. If 1051// the context is nil a panic will occur. In the future the SDK may create 1052// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1053// for more information on using Contexts. 1054func (c *WAFRegional) CreateRegexPatternSetWithContext(ctx aws.Context, input *waf.CreateRegexPatternSetInput, opts ...request.Option) (*waf.CreateRegexPatternSetOutput, error) { 1055 req, out := c.CreateRegexPatternSetRequest(input) 1056 req.SetContext(ctx) 1057 req.ApplyOptions(opts...) 1058 return out, req.Send() 1059} 1060 1061const opCreateRule = "CreateRule" 1062 1063// CreateRuleRequest generates a "aws/request.Request" representing the 1064// client's request for the CreateRule operation. The "output" return 1065// value will be populated with the request's response once the request completes 1066// successfully. 1067// 1068// Use "Send" method on the returned Request to send the API call to the service. 1069// the "output" return value is not valid until after Send returns without error. 1070// 1071// See CreateRule for more information on using the CreateRule 1072// API call, and error handling. 1073// 1074// This method is useful when you want to inject custom logic or configuration 1075// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1076// 1077// 1078// // Example sending a request using the CreateRuleRequest method. 1079// req, resp := client.CreateRuleRequest(params) 1080// 1081// err := req.Send() 1082// if err == nil { // resp is now filled 1083// fmt.Println(resp) 1084// } 1085// 1086// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRule 1087func (c *WAFRegional) CreateRuleRequest(input *waf.CreateRuleInput) (req *request.Request, output *waf.CreateRuleOutput) { 1088 op := &request.Operation{ 1089 Name: opCreateRule, 1090 HTTPMethod: "POST", 1091 HTTPPath: "/", 1092 } 1093 1094 if input == nil { 1095 input = &waf.CreateRuleInput{} 1096 } 1097 1098 output = &waf.CreateRuleOutput{} 1099 req = c.newRequest(op, input, output) 1100 return 1101} 1102 1103// CreateRule API operation for AWS WAF Regional. 1104// 1105// 1106// This is AWS WAF Classic documentation. For more information, see AWS WAF 1107// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 1108// in the developer guide. 1109// 1110// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 1111// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 1112// With the latest version, AWS WAF has a single set of endpoints for regional 1113// and global use. 1114// 1115// Creates a Rule, which contains the IPSet objects, ByteMatchSet objects, and 1116// other predicates that identify the requests that you want to block. If you 1117// add more than one predicate to a Rule, a request must match all of the specifications 1118// to be allowed or blocked. For example, suppose that you add the following 1119// to a Rule: 1120// 1121// * An IPSet that matches the IP address 192.0.2.44/32 1122// 1123// * A ByteMatchSet that matches BadBot in the User-Agent header 1124// 1125// You then add the Rule to a WebACL and specify that you want to blocks requests 1126// that satisfy the Rule. For a request to be blocked, it must come from the 1127// IP address 192.0.2.44 and the User-Agent header in the request must contain 1128// the value BadBot. 1129// 1130// To create and configure a Rule, perform the following steps: 1131// 1132// Create and update the predicates that you want to include in the Rule. For 1133// more information, see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. 1134// 1135// Use GetChangeToken to get the change token that you provide in the ChangeToken 1136// parameter of a CreateRule request. 1137// 1138// Submit a CreateRule request. 1139// 1140// Use GetChangeToken to get the change token that you provide in the ChangeToken 1141// parameter of an UpdateRule request. 1142// 1143// Submit an UpdateRule request to specify the predicates that you want to include 1144// in the Rule. 1145// 1146// Create and update a WebACL that contains the Rule. For more information, 1147// see CreateWebACL. 1148// 1149// For more information about how to use the AWS WAF API to allow or block HTTP 1150// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 1151// 1152// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1153// with awserr.Error's Code and Message methods to get detailed information about 1154// the error. 1155// 1156// See the AWS API reference guide for AWS WAF Regional's 1157// API operation CreateRule for usage and error information. 1158// 1159// Returned Error Types: 1160// * WAFStaleDataException 1161// The operation failed because you tried to create, update, or delete an object 1162// by using a change token that has already been used. 1163// 1164// * WAFInternalErrorException 1165// The operation failed because of a system problem, even though the request 1166// was valid. Retry your request. 1167// 1168// * WAFDisallowedNameException 1169// The name specified is invalid. 1170// 1171// * WAFInvalidParameterException 1172// The operation failed because AWS WAF didn't recognize a parameter in the 1173// request. For example: 1174// 1175// * You specified an invalid parameter name. 1176// 1177// * You specified an invalid value. 1178// 1179// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 1180// using an action other than INSERT or DELETE. 1181// 1182// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 1183// BLOCK, or COUNT. 1184// 1185// * You tried to create a RateBasedRule with a RateKey value other than 1186// IP. 1187// 1188// * You tried to update a WebACL with a WafAction Type other than ALLOW, 1189// BLOCK, or COUNT. 1190// 1191// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 1192// HEADER, METHOD, QUERY_STRING, URI, or BODY. 1193// 1194// * You tried to update a ByteMatchSet with a Field of HEADER but no value 1195// for Data. 1196// 1197// * Your request references an ARN that is malformed, or corresponds to 1198// a resource with which a web ACL cannot be associated. 1199// 1200// * WAFLimitsExceededException 1201// The operation exceeds a resource limit, for example, the maximum number of 1202// WebACL objects that you can create for an AWS account. For more information, 1203// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 1204// in the AWS WAF Developer Guide. 1205// 1206// * WAFTagOperationException 1207// 1208// * WAFTagOperationInternalErrorException 1209// 1210// * WAFBadRequestException 1211// 1212// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRule 1213func (c *WAFRegional) CreateRule(input *waf.CreateRuleInput) (*waf.CreateRuleOutput, error) { 1214 req, out := c.CreateRuleRequest(input) 1215 return out, req.Send() 1216} 1217 1218// CreateRuleWithContext is the same as CreateRule with the addition of 1219// the ability to pass a context and additional request options. 1220// 1221// See CreateRule for details on how to use this API operation. 1222// 1223// The context must be non-nil and will be used for request cancellation. If 1224// the context is nil a panic will occur. In the future the SDK may create 1225// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1226// for more information on using Contexts. 1227func (c *WAFRegional) CreateRuleWithContext(ctx aws.Context, input *waf.CreateRuleInput, opts ...request.Option) (*waf.CreateRuleOutput, error) { 1228 req, out := c.CreateRuleRequest(input) 1229 req.SetContext(ctx) 1230 req.ApplyOptions(opts...) 1231 return out, req.Send() 1232} 1233 1234const opCreateRuleGroup = "CreateRuleGroup" 1235 1236// CreateRuleGroupRequest generates a "aws/request.Request" representing the 1237// client's request for the CreateRuleGroup operation. The "output" return 1238// value will be populated with the request's response once the request completes 1239// successfully. 1240// 1241// Use "Send" method on the returned Request to send the API call to the service. 1242// the "output" return value is not valid until after Send returns without error. 1243// 1244// See CreateRuleGroup for more information on using the CreateRuleGroup 1245// API call, and error handling. 1246// 1247// This method is useful when you want to inject custom logic or configuration 1248// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1249// 1250// 1251// // Example sending a request using the CreateRuleGroupRequest method. 1252// req, resp := client.CreateRuleGroupRequest(params) 1253// 1254// err := req.Send() 1255// if err == nil { // resp is now filled 1256// fmt.Println(resp) 1257// } 1258// 1259// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRuleGroup 1260func (c *WAFRegional) CreateRuleGroupRequest(input *waf.CreateRuleGroupInput) (req *request.Request, output *waf.CreateRuleGroupOutput) { 1261 op := &request.Operation{ 1262 Name: opCreateRuleGroup, 1263 HTTPMethod: "POST", 1264 HTTPPath: "/", 1265 } 1266 1267 if input == nil { 1268 input = &waf.CreateRuleGroupInput{} 1269 } 1270 1271 output = &waf.CreateRuleGroupOutput{} 1272 req = c.newRequest(op, input, output) 1273 return 1274} 1275 1276// CreateRuleGroup API operation for AWS WAF Regional. 1277// 1278// 1279// This is AWS WAF Classic documentation. For more information, see AWS WAF 1280// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 1281// in the developer guide. 1282// 1283// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 1284// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 1285// With the latest version, AWS WAF has a single set of endpoints for regional 1286// and global use. 1287// 1288// Creates a RuleGroup. A rule group is a collection of predefined rules that 1289// you add to a web ACL. You use UpdateRuleGroup to add rules to the rule group. 1290// 1291// Rule groups are subject to the following limits: 1292// 1293// * Three rule groups per account. You can request an increase to this limit 1294// by contacting customer support. 1295// 1296// * One rule group per web ACL. 1297// 1298// * Ten rules per rule group. 1299// 1300// For more information about how to use the AWS WAF API to allow or block HTTP 1301// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 1302// 1303// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1304// with awserr.Error's Code and Message methods to get detailed information about 1305// the error. 1306// 1307// See the AWS API reference guide for AWS WAF Regional's 1308// API operation CreateRuleGroup for usage and error information. 1309// 1310// Returned Error Types: 1311// * WAFStaleDataException 1312// The operation failed because you tried to create, update, or delete an object 1313// by using a change token that has already been used. 1314// 1315// * WAFInternalErrorException 1316// The operation failed because of a system problem, even though the request 1317// was valid. Retry your request. 1318// 1319// * WAFDisallowedNameException 1320// The name specified is invalid. 1321// 1322// * WAFLimitsExceededException 1323// The operation exceeds a resource limit, for example, the maximum number of 1324// WebACL objects that you can create for an AWS account. For more information, 1325// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 1326// in the AWS WAF Developer Guide. 1327// 1328// * WAFTagOperationException 1329// 1330// * WAFTagOperationInternalErrorException 1331// 1332// * WAFBadRequestException 1333// 1334// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateRuleGroup 1335func (c *WAFRegional) CreateRuleGroup(input *waf.CreateRuleGroupInput) (*waf.CreateRuleGroupOutput, error) { 1336 req, out := c.CreateRuleGroupRequest(input) 1337 return out, req.Send() 1338} 1339 1340// CreateRuleGroupWithContext is the same as CreateRuleGroup with the addition of 1341// the ability to pass a context and additional request options. 1342// 1343// See CreateRuleGroup for details on how to use this API operation. 1344// 1345// The context must be non-nil and will be used for request cancellation. If 1346// the context is nil a panic will occur. In the future the SDK may create 1347// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1348// for more information on using Contexts. 1349func (c *WAFRegional) CreateRuleGroupWithContext(ctx aws.Context, input *waf.CreateRuleGroupInput, opts ...request.Option) (*waf.CreateRuleGroupOutput, error) { 1350 req, out := c.CreateRuleGroupRequest(input) 1351 req.SetContext(ctx) 1352 req.ApplyOptions(opts...) 1353 return out, req.Send() 1354} 1355 1356const opCreateSizeConstraintSet = "CreateSizeConstraintSet" 1357 1358// CreateSizeConstraintSetRequest generates a "aws/request.Request" representing the 1359// client's request for the CreateSizeConstraintSet operation. The "output" return 1360// value will be populated with the request's response once the request completes 1361// successfully. 1362// 1363// Use "Send" method on the returned Request to send the API call to the service. 1364// the "output" return value is not valid until after Send returns without error. 1365// 1366// See CreateSizeConstraintSet for more information on using the CreateSizeConstraintSet 1367// API call, and error handling. 1368// 1369// This method is useful when you want to inject custom logic or configuration 1370// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1371// 1372// 1373// // Example sending a request using the CreateSizeConstraintSetRequest method. 1374// req, resp := client.CreateSizeConstraintSetRequest(params) 1375// 1376// err := req.Send() 1377// if err == nil { // resp is now filled 1378// fmt.Println(resp) 1379// } 1380// 1381// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateSizeConstraintSet 1382func (c *WAFRegional) CreateSizeConstraintSetRequest(input *waf.CreateSizeConstraintSetInput) (req *request.Request, output *waf.CreateSizeConstraintSetOutput) { 1383 op := &request.Operation{ 1384 Name: opCreateSizeConstraintSet, 1385 HTTPMethod: "POST", 1386 HTTPPath: "/", 1387 } 1388 1389 if input == nil { 1390 input = &waf.CreateSizeConstraintSetInput{} 1391 } 1392 1393 output = &waf.CreateSizeConstraintSetOutput{} 1394 req = c.newRequest(op, input, output) 1395 return 1396} 1397 1398// CreateSizeConstraintSet API operation for AWS WAF Regional. 1399// 1400// 1401// This is AWS WAF Classic documentation. For more information, see AWS WAF 1402// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 1403// in the developer guide. 1404// 1405// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 1406// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 1407// With the latest version, AWS WAF has a single set of endpoints for regional 1408// and global use. 1409// 1410// Creates a SizeConstraintSet. You then use UpdateSizeConstraintSet to identify 1411// the part of a web request that you want AWS WAF to check for length, such 1412// as the length of the User-Agent header or the length of the query string. 1413// For example, you can create a SizeConstraintSet that matches any requests 1414// that have a query string that is longer than 100 bytes. You can then configure 1415// AWS WAF to reject those requests. 1416// 1417// To create and configure a SizeConstraintSet, perform the following steps: 1418// 1419// Use GetChangeToken to get the change token that you provide in the ChangeToken 1420// parameter of a CreateSizeConstraintSet request. 1421// 1422// Submit a CreateSizeConstraintSet request. 1423// 1424// Use GetChangeToken to get the change token that you provide in the ChangeToken 1425// parameter of an UpdateSizeConstraintSet request. 1426// 1427// Submit an UpdateSizeConstraintSet request to specify the part of the request 1428// that you want AWS WAF to inspect (for example, the header or the URI) and 1429// the value that you want AWS WAF to watch for. 1430// 1431// For more information about how to use the AWS WAF API to allow or block HTTP 1432// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 1433// 1434// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1435// with awserr.Error's Code and Message methods to get detailed information about 1436// the error. 1437// 1438// See the AWS API reference guide for AWS WAF Regional's 1439// API operation CreateSizeConstraintSet for usage and error information. 1440// 1441// Returned Error Types: 1442// * WAFStaleDataException 1443// The operation failed because you tried to create, update, or delete an object 1444// by using a change token that has already been used. 1445// 1446// * WAFInternalErrorException 1447// The operation failed because of a system problem, even though the request 1448// was valid. Retry your request. 1449// 1450// * WAFInvalidAccountException 1451// The operation failed because you tried to create, update, or delete an object 1452// by using an invalid account identifier. 1453// 1454// * WAFDisallowedNameException 1455// The name specified is invalid. 1456// 1457// * WAFInvalidParameterException 1458// The operation failed because AWS WAF didn't recognize a parameter in the 1459// request. For example: 1460// 1461// * You specified an invalid parameter name. 1462// 1463// * You specified an invalid value. 1464// 1465// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 1466// using an action other than INSERT or DELETE. 1467// 1468// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 1469// BLOCK, or COUNT. 1470// 1471// * You tried to create a RateBasedRule with a RateKey value other than 1472// IP. 1473// 1474// * You tried to update a WebACL with a WafAction Type other than ALLOW, 1475// BLOCK, or COUNT. 1476// 1477// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 1478// HEADER, METHOD, QUERY_STRING, URI, or BODY. 1479// 1480// * You tried to update a ByteMatchSet with a Field of HEADER but no value 1481// for Data. 1482// 1483// * Your request references an ARN that is malformed, or corresponds to 1484// a resource with which a web ACL cannot be associated. 1485// 1486// * WAFLimitsExceededException 1487// The operation exceeds a resource limit, for example, the maximum number of 1488// WebACL objects that you can create for an AWS account. For more information, 1489// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 1490// in the AWS WAF Developer Guide. 1491// 1492// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateSizeConstraintSet 1493func (c *WAFRegional) CreateSizeConstraintSet(input *waf.CreateSizeConstraintSetInput) (*waf.CreateSizeConstraintSetOutput, error) { 1494 req, out := c.CreateSizeConstraintSetRequest(input) 1495 return out, req.Send() 1496} 1497 1498// CreateSizeConstraintSetWithContext is the same as CreateSizeConstraintSet with the addition of 1499// the ability to pass a context and additional request options. 1500// 1501// See CreateSizeConstraintSet for details on how to use this API operation. 1502// 1503// The context must be non-nil and will be used for request cancellation. If 1504// the context is nil a panic will occur. In the future the SDK may create 1505// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1506// for more information on using Contexts. 1507func (c *WAFRegional) CreateSizeConstraintSetWithContext(ctx aws.Context, input *waf.CreateSizeConstraintSetInput, opts ...request.Option) (*waf.CreateSizeConstraintSetOutput, error) { 1508 req, out := c.CreateSizeConstraintSetRequest(input) 1509 req.SetContext(ctx) 1510 req.ApplyOptions(opts...) 1511 return out, req.Send() 1512} 1513 1514const opCreateSqlInjectionMatchSet = "CreateSqlInjectionMatchSet" 1515 1516// CreateSqlInjectionMatchSetRequest generates a "aws/request.Request" representing the 1517// client's request for the CreateSqlInjectionMatchSet operation. The "output" return 1518// value will be populated with the request's response once the request completes 1519// successfully. 1520// 1521// Use "Send" method on the returned Request to send the API call to the service. 1522// the "output" return value is not valid until after Send returns without error. 1523// 1524// See CreateSqlInjectionMatchSet for more information on using the CreateSqlInjectionMatchSet 1525// API call, and error handling. 1526// 1527// This method is useful when you want to inject custom logic or configuration 1528// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1529// 1530// 1531// // Example sending a request using the CreateSqlInjectionMatchSetRequest method. 1532// req, resp := client.CreateSqlInjectionMatchSetRequest(params) 1533// 1534// err := req.Send() 1535// if err == nil { // resp is now filled 1536// fmt.Println(resp) 1537// } 1538// 1539// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateSqlInjectionMatchSet 1540func (c *WAFRegional) CreateSqlInjectionMatchSetRequest(input *waf.CreateSqlInjectionMatchSetInput) (req *request.Request, output *waf.CreateSqlInjectionMatchSetOutput) { 1541 op := &request.Operation{ 1542 Name: opCreateSqlInjectionMatchSet, 1543 HTTPMethod: "POST", 1544 HTTPPath: "/", 1545 } 1546 1547 if input == nil { 1548 input = &waf.CreateSqlInjectionMatchSetInput{} 1549 } 1550 1551 output = &waf.CreateSqlInjectionMatchSetOutput{} 1552 req = c.newRequest(op, input, output) 1553 return 1554} 1555 1556// CreateSqlInjectionMatchSet API operation for AWS WAF Regional. 1557// 1558// 1559// This is AWS WAF Classic documentation. For more information, see AWS WAF 1560// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 1561// in the developer guide. 1562// 1563// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 1564// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 1565// With the latest version, AWS WAF has a single set of endpoints for regional 1566// and global use. 1567// 1568// Creates a SqlInjectionMatchSet, which you use to allow, block, or count requests 1569// that contain snippets of SQL code in a specified part of web requests. AWS 1570// WAF searches for character sequences that are likely to be malicious strings. 1571// 1572// To create and configure a SqlInjectionMatchSet, perform the following steps: 1573// 1574// Use GetChangeToken to get the change token that you provide in the ChangeToken 1575// parameter of a CreateSqlInjectionMatchSet request. 1576// 1577// Submit a CreateSqlInjectionMatchSet request. 1578// 1579// Use GetChangeToken to get the change token that you provide in the ChangeToken 1580// parameter of an UpdateSqlInjectionMatchSet request. 1581// 1582// Submit an UpdateSqlInjectionMatchSet request to specify the parts of web 1583// requests in which you want to allow, block, or count malicious SQL code. 1584// 1585// For more information about how to use the AWS WAF API to allow or block HTTP 1586// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 1587// 1588// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1589// with awserr.Error's Code and Message methods to get detailed information about 1590// the error. 1591// 1592// See the AWS API reference guide for AWS WAF Regional's 1593// API operation CreateSqlInjectionMatchSet for usage and error information. 1594// 1595// Returned Error Types: 1596// * WAFDisallowedNameException 1597// The name specified is invalid. 1598// 1599// * WAFInternalErrorException 1600// The operation failed because of a system problem, even though the request 1601// was valid. Retry your request. 1602// 1603// * WAFInvalidAccountException 1604// The operation failed because you tried to create, update, or delete an object 1605// by using an invalid account identifier. 1606// 1607// * WAFInvalidParameterException 1608// The operation failed because AWS WAF didn't recognize a parameter in the 1609// request. For example: 1610// 1611// * You specified an invalid parameter name. 1612// 1613// * You specified an invalid value. 1614// 1615// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 1616// using an action other than INSERT or DELETE. 1617// 1618// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 1619// BLOCK, or COUNT. 1620// 1621// * You tried to create a RateBasedRule with a RateKey value other than 1622// IP. 1623// 1624// * You tried to update a WebACL with a WafAction Type other than ALLOW, 1625// BLOCK, or COUNT. 1626// 1627// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 1628// HEADER, METHOD, QUERY_STRING, URI, or BODY. 1629// 1630// * You tried to update a ByteMatchSet with a Field of HEADER but no value 1631// for Data. 1632// 1633// * Your request references an ARN that is malformed, or corresponds to 1634// a resource with which a web ACL cannot be associated. 1635// 1636// * WAFStaleDataException 1637// The operation failed because you tried to create, update, or delete an object 1638// by using a change token that has already been used. 1639// 1640// * WAFLimitsExceededException 1641// The operation exceeds a resource limit, for example, the maximum number of 1642// WebACL objects that you can create for an AWS account. For more information, 1643// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 1644// in the AWS WAF Developer Guide. 1645// 1646// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateSqlInjectionMatchSet 1647func (c *WAFRegional) CreateSqlInjectionMatchSet(input *waf.CreateSqlInjectionMatchSetInput) (*waf.CreateSqlInjectionMatchSetOutput, error) { 1648 req, out := c.CreateSqlInjectionMatchSetRequest(input) 1649 return out, req.Send() 1650} 1651 1652// CreateSqlInjectionMatchSetWithContext is the same as CreateSqlInjectionMatchSet with the addition of 1653// the ability to pass a context and additional request options. 1654// 1655// See CreateSqlInjectionMatchSet for details on how to use this API operation. 1656// 1657// The context must be non-nil and will be used for request cancellation. If 1658// the context is nil a panic will occur. In the future the SDK may create 1659// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1660// for more information on using Contexts. 1661func (c *WAFRegional) CreateSqlInjectionMatchSetWithContext(ctx aws.Context, input *waf.CreateSqlInjectionMatchSetInput, opts ...request.Option) (*waf.CreateSqlInjectionMatchSetOutput, error) { 1662 req, out := c.CreateSqlInjectionMatchSetRequest(input) 1663 req.SetContext(ctx) 1664 req.ApplyOptions(opts...) 1665 return out, req.Send() 1666} 1667 1668const opCreateWebACL = "CreateWebACL" 1669 1670// CreateWebACLRequest generates a "aws/request.Request" representing the 1671// client's request for the CreateWebACL operation. The "output" return 1672// value will be populated with the request's response once the request completes 1673// successfully. 1674// 1675// Use "Send" method on the returned Request to send the API call to the service. 1676// the "output" return value is not valid until after Send returns without error. 1677// 1678// See CreateWebACL for more information on using the CreateWebACL 1679// API call, and error handling. 1680// 1681// This method is useful when you want to inject custom logic or configuration 1682// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1683// 1684// 1685// // Example sending a request using the CreateWebACLRequest method. 1686// req, resp := client.CreateWebACLRequest(params) 1687// 1688// err := req.Send() 1689// if err == nil { // resp is now filled 1690// fmt.Println(resp) 1691// } 1692// 1693// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateWebACL 1694func (c *WAFRegional) CreateWebACLRequest(input *waf.CreateWebACLInput) (req *request.Request, output *waf.CreateWebACLOutput) { 1695 op := &request.Operation{ 1696 Name: opCreateWebACL, 1697 HTTPMethod: "POST", 1698 HTTPPath: "/", 1699 } 1700 1701 if input == nil { 1702 input = &waf.CreateWebACLInput{} 1703 } 1704 1705 output = &waf.CreateWebACLOutput{} 1706 req = c.newRequest(op, input, output) 1707 return 1708} 1709 1710// CreateWebACL API operation for AWS WAF Regional. 1711// 1712// 1713// This is AWS WAF Classic documentation. For more information, see AWS WAF 1714// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 1715// in the developer guide. 1716// 1717// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 1718// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 1719// With the latest version, AWS WAF has a single set of endpoints for regional 1720// and global use. 1721// 1722// Creates a WebACL, which contains the Rules that identify the CloudFront web 1723// requests that you want to allow, block, or count. AWS WAF evaluates Rules 1724// in order based on the value of Priority for each Rule. 1725// 1726// You also specify a default action, either ALLOW or BLOCK. If a web request 1727// doesn't match any of the Rules in a WebACL, AWS WAF responds to the request 1728// with the default action. 1729// 1730// To create and configure a WebACL, perform the following steps: 1731// 1732// Create and update the ByteMatchSet objects and other predicates that you 1733// want to include in Rules. For more information, see CreateByteMatchSet, UpdateByteMatchSet, 1734// CreateIPSet, UpdateIPSet, CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet. 1735// 1736// Create and update the Rules that you want to include in the WebACL. For more 1737// information, see CreateRule and UpdateRule. 1738// 1739// Use GetChangeToken to get the change token that you provide in the ChangeToken 1740// parameter of a CreateWebACL request. 1741// 1742// Submit a CreateWebACL request. 1743// 1744// Use GetChangeToken to get the change token that you provide in the ChangeToken 1745// parameter of an UpdateWebACL request. 1746// 1747// Submit an UpdateWebACL request to specify the Rules that you want to include 1748// in the WebACL, to specify the default action, and to associate the WebACL 1749// with a CloudFront distribution. 1750// 1751// For more information about how to use the AWS WAF API, see the AWS WAF Developer 1752// Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 1753// 1754// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1755// with awserr.Error's Code and Message methods to get detailed information about 1756// the error. 1757// 1758// See the AWS API reference guide for AWS WAF Regional's 1759// API operation CreateWebACL for usage and error information. 1760// 1761// Returned Error Types: 1762// * WAFStaleDataException 1763// The operation failed because you tried to create, update, or delete an object 1764// by using a change token that has already been used. 1765// 1766// * WAFInternalErrorException 1767// The operation failed because of a system problem, even though the request 1768// was valid. Retry your request. 1769// 1770// * WAFInvalidAccountException 1771// The operation failed because you tried to create, update, or delete an object 1772// by using an invalid account identifier. 1773// 1774// * WAFDisallowedNameException 1775// The name specified is invalid. 1776// 1777// * WAFInvalidParameterException 1778// The operation failed because AWS WAF didn't recognize a parameter in the 1779// request. For example: 1780// 1781// * You specified an invalid parameter name. 1782// 1783// * You specified an invalid value. 1784// 1785// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 1786// using an action other than INSERT or DELETE. 1787// 1788// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 1789// BLOCK, or COUNT. 1790// 1791// * You tried to create a RateBasedRule with a RateKey value other than 1792// IP. 1793// 1794// * You tried to update a WebACL with a WafAction Type other than ALLOW, 1795// BLOCK, or COUNT. 1796// 1797// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 1798// HEADER, METHOD, QUERY_STRING, URI, or BODY. 1799// 1800// * You tried to update a ByteMatchSet with a Field of HEADER but no value 1801// for Data. 1802// 1803// * Your request references an ARN that is malformed, or corresponds to 1804// a resource with which a web ACL cannot be associated. 1805// 1806// * WAFLimitsExceededException 1807// The operation exceeds a resource limit, for example, the maximum number of 1808// WebACL objects that you can create for an AWS account. For more information, 1809// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 1810// in the AWS WAF Developer Guide. 1811// 1812// * WAFTagOperationException 1813// 1814// * WAFTagOperationInternalErrorException 1815// 1816// * WAFBadRequestException 1817// 1818// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateWebACL 1819func (c *WAFRegional) CreateWebACL(input *waf.CreateWebACLInput) (*waf.CreateWebACLOutput, error) { 1820 req, out := c.CreateWebACLRequest(input) 1821 return out, req.Send() 1822} 1823 1824// CreateWebACLWithContext is the same as CreateWebACL with the addition of 1825// the ability to pass a context and additional request options. 1826// 1827// See CreateWebACL for details on how to use this API operation. 1828// 1829// The context must be non-nil and will be used for request cancellation. If 1830// the context is nil a panic will occur. In the future the SDK may create 1831// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1832// for more information on using Contexts. 1833func (c *WAFRegional) CreateWebACLWithContext(ctx aws.Context, input *waf.CreateWebACLInput, opts ...request.Option) (*waf.CreateWebACLOutput, error) { 1834 req, out := c.CreateWebACLRequest(input) 1835 req.SetContext(ctx) 1836 req.ApplyOptions(opts...) 1837 return out, req.Send() 1838} 1839 1840const opCreateWebACLMigrationStack = "CreateWebACLMigrationStack" 1841 1842// CreateWebACLMigrationStackRequest generates a "aws/request.Request" representing the 1843// client's request for the CreateWebACLMigrationStack operation. The "output" return 1844// value will be populated with the request's response once the request completes 1845// successfully. 1846// 1847// Use "Send" method on the returned Request to send the API call to the service. 1848// the "output" return value is not valid until after Send returns without error. 1849// 1850// See CreateWebACLMigrationStack for more information on using the CreateWebACLMigrationStack 1851// API call, and error handling. 1852// 1853// This method is useful when you want to inject custom logic or configuration 1854// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1855// 1856// 1857// // Example sending a request using the CreateWebACLMigrationStackRequest method. 1858// req, resp := client.CreateWebACLMigrationStackRequest(params) 1859// 1860// err := req.Send() 1861// if err == nil { // resp is now filled 1862// fmt.Println(resp) 1863// } 1864// 1865// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateWebACLMigrationStack 1866func (c *WAFRegional) CreateWebACLMigrationStackRequest(input *waf.CreateWebACLMigrationStackInput) (req *request.Request, output *waf.CreateWebACLMigrationStackOutput) { 1867 op := &request.Operation{ 1868 Name: opCreateWebACLMigrationStack, 1869 HTTPMethod: "POST", 1870 HTTPPath: "/", 1871 } 1872 1873 if input == nil { 1874 input = &waf.CreateWebACLMigrationStackInput{} 1875 } 1876 1877 output = &waf.CreateWebACLMigrationStackOutput{} 1878 req = c.newRequest(op, input, output) 1879 return 1880} 1881 1882// CreateWebACLMigrationStack API operation for AWS WAF Regional. 1883// 1884// Creates an AWS CloudFormation WAFV2 template for the specified web ACL in 1885// the specified Amazon S3 bucket. Then, in CloudFormation, you create a stack 1886// from the template, to create the web ACL and its resources in AWS WAFV2. 1887// Use this to migrate your AWS WAF Classic web ACL to the latest version of 1888// AWS WAF. 1889// 1890// This is part of a larger migration procedure for web ACLs from AWS WAF Classic 1891// to the latest version of AWS WAF. For the full procedure, including caveats 1892// and manual steps to complete the migration and switch over to the new web 1893// ACL, see Migrating your AWS WAF Classic resources to AWS WAF (https://docs.aws.amazon.com/waf/latest/developerguide/waf-migrating-from-classic.html) 1894// in the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 1895// 1896// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1897// with awserr.Error's Code and Message methods to get detailed information about 1898// the error. 1899// 1900// See the AWS API reference guide for AWS WAF Regional's 1901// API operation CreateWebACLMigrationStack for usage and error information. 1902// 1903// Returned Error Types: 1904// * WAFInternalErrorException 1905// The operation failed because of a system problem, even though the request 1906// was valid. Retry your request. 1907// 1908// * WAFInvalidParameterException 1909// The operation failed because AWS WAF didn't recognize a parameter in the 1910// request. For example: 1911// 1912// * You specified an invalid parameter name. 1913// 1914// * You specified an invalid value. 1915// 1916// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 1917// using an action other than INSERT or DELETE. 1918// 1919// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 1920// BLOCK, or COUNT. 1921// 1922// * You tried to create a RateBasedRule with a RateKey value other than 1923// IP. 1924// 1925// * You tried to update a WebACL with a WafAction Type other than ALLOW, 1926// BLOCK, or COUNT. 1927// 1928// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 1929// HEADER, METHOD, QUERY_STRING, URI, or BODY. 1930// 1931// * You tried to update a ByteMatchSet with a Field of HEADER but no value 1932// for Data. 1933// 1934// * Your request references an ARN that is malformed, or corresponds to 1935// a resource with which a web ACL cannot be associated. 1936// 1937// * WAFInvalidOperationException 1938// The operation failed because there was nothing to do. For example: 1939// 1940// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 1941// specified WebACL. 1942// 1943// * You tried to remove an IP address from an IPSet, but the IP address 1944// isn't in the specified IPSet. 1945// 1946// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 1947// isn't in the specified WebACL. 1948// 1949// * You tried to add a Rule to a WebACL, but the Rule already exists in 1950// the specified WebACL. 1951// 1952// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 1953// already exists in the specified WebACL. 1954// 1955// * WAFNonexistentItemException 1956// The operation failed because the referenced object doesn't exist. 1957// 1958// * WAFEntityMigrationException 1959// The operation failed due to a problem with the migration. The failure cause 1960// is provided in the exception, in the MigrationErrorType: 1961// 1962// * ENTITY_NOT_SUPPORTED - The web ACL has an unsupported entity but the 1963// IgnoreUnsupportedType is not set to true. 1964// 1965// * ENTITY_NOT_FOUND - The web ACL doesn't exist. 1966// 1967// * S3_BUCKET_NO_PERMISSION - You don't have permission to perform the PutObject 1968// action to the specified Amazon S3 bucket. 1969// 1970// * S3_BUCKET_NOT_ACCESSIBLE - The bucket policy doesn't allow AWS WAF to 1971// perform the PutObject action in the bucket. 1972// 1973// * S3_BUCKET_NOT_FOUND - The S3 bucket doesn't exist. 1974// 1975// * S3_BUCKET_INVALID_REGION - The S3 bucket is not in the same Region as 1976// the web ACL. 1977// 1978// * S3_INTERNAL_ERROR - AWS WAF failed to create the template in the S3 1979// bucket for another reason. 1980// 1981// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateWebACLMigrationStack 1982func (c *WAFRegional) CreateWebACLMigrationStack(input *waf.CreateWebACLMigrationStackInput) (*waf.CreateWebACLMigrationStackOutput, error) { 1983 req, out := c.CreateWebACLMigrationStackRequest(input) 1984 return out, req.Send() 1985} 1986 1987// CreateWebACLMigrationStackWithContext is the same as CreateWebACLMigrationStack with the addition of 1988// the ability to pass a context and additional request options. 1989// 1990// See CreateWebACLMigrationStack for details on how to use this API operation. 1991// 1992// The context must be non-nil and will be used for request cancellation. If 1993// the context is nil a panic will occur. In the future the SDK may create 1994// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1995// for more information on using Contexts. 1996func (c *WAFRegional) CreateWebACLMigrationStackWithContext(ctx aws.Context, input *waf.CreateWebACLMigrationStackInput, opts ...request.Option) (*waf.CreateWebACLMigrationStackOutput, error) { 1997 req, out := c.CreateWebACLMigrationStackRequest(input) 1998 req.SetContext(ctx) 1999 req.ApplyOptions(opts...) 2000 return out, req.Send() 2001} 2002 2003const opCreateXssMatchSet = "CreateXssMatchSet" 2004 2005// CreateXssMatchSetRequest generates a "aws/request.Request" representing the 2006// client's request for the CreateXssMatchSet operation. The "output" return 2007// value will be populated with the request's response once the request completes 2008// successfully. 2009// 2010// Use "Send" method on the returned Request to send the API call to the service. 2011// the "output" return value is not valid until after Send returns without error. 2012// 2013// See CreateXssMatchSet for more information on using the CreateXssMatchSet 2014// API call, and error handling. 2015// 2016// This method is useful when you want to inject custom logic or configuration 2017// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2018// 2019// 2020// // Example sending a request using the CreateXssMatchSetRequest method. 2021// req, resp := client.CreateXssMatchSetRequest(params) 2022// 2023// err := req.Send() 2024// if err == nil { // resp is now filled 2025// fmt.Println(resp) 2026// } 2027// 2028// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateXssMatchSet 2029func (c *WAFRegional) CreateXssMatchSetRequest(input *waf.CreateXssMatchSetInput) (req *request.Request, output *waf.CreateXssMatchSetOutput) { 2030 op := &request.Operation{ 2031 Name: opCreateXssMatchSet, 2032 HTTPMethod: "POST", 2033 HTTPPath: "/", 2034 } 2035 2036 if input == nil { 2037 input = &waf.CreateXssMatchSetInput{} 2038 } 2039 2040 output = &waf.CreateXssMatchSetOutput{} 2041 req = c.newRequest(op, input, output) 2042 return 2043} 2044 2045// CreateXssMatchSet API operation for AWS WAF Regional. 2046// 2047// 2048// This is AWS WAF Classic documentation. For more information, see AWS WAF 2049// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 2050// in the developer guide. 2051// 2052// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 2053// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 2054// With the latest version, AWS WAF has a single set of endpoints for regional 2055// and global use. 2056// 2057// Creates an XssMatchSet, which you use to allow, block, or count requests 2058// that contain cross-site scripting attacks in the specified part of web requests. 2059// AWS WAF searches for character sequences that are likely to be malicious 2060// strings. 2061// 2062// To create and configure an XssMatchSet, perform the following steps: 2063// 2064// Use GetChangeToken to get the change token that you provide in the ChangeToken 2065// parameter of a CreateXssMatchSet request. 2066// 2067// Submit a CreateXssMatchSet request. 2068// 2069// Use GetChangeToken to get the change token that you provide in the ChangeToken 2070// parameter of an UpdateXssMatchSet request. 2071// 2072// Submit an UpdateXssMatchSet request to specify the parts of web requests 2073// in which you want to allow, block, or count cross-site scripting attacks. 2074// 2075// For more information about how to use the AWS WAF API to allow or block HTTP 2076// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 2077// 2078// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2079// with awserr.Error's Code and Message methods to get detailed information about 2080// the error. 2081// 2082// See the AWS API reference guide for AWS WAF Regional's 2083// API operation CreateXssMatchSet for usage and error information. 2084// 2085// Returned Error Types: 2086// * WAFDisallowedNameException 2087// The name specified is invalid. 2088// 2089// * WAFInternalErrorException 2090// The operation failed because of a system problem, even though the request 2091// was valid. Retry your request. 2092// 2093// * WAFInvalidAccountException 2094// The operation failed because you tried to create, update, or delete an object 2095// by using an invalid account identifier. 2096// 2097// * WAFInvalidParameterException 2098// The operation failed because AWS WAF didn't recognize a parameter in the 2099// request. For example: 2100// 2101// * You specified an invalid parameter name. 2102// 2103// * You specified an invalid value. 2104// 2105// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 2106// using an action other than INSERT or DELETE. 2107// 2108// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 2109// BLOCK, or COUNT. 2110// 2111// * You tried to create a RateBasedRule with a RateKey value other than 2112// IP. 2113// 2114// * You tried to update a WebACL with a WafAction Type other than ALLOW, 2115// BLOCK, or COUNT. 2116// 2117// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 2118// HEADER, METHOD, QUERY_STRING, URI, or BODY. 2119// 2120// * You tried to update a ByteMatchSet with a Field of HEADER but no value 2121// for Data. 2122// 2123// * Your request references an ARN that is malformed, or corresponds to 2124// a resource with which a web ACL cannot be associated. 2125// 2126// * WAFStaleDataException 2127// The operation failed because you tried to create, update, or delete an object 2128// by using a change token that has already been used. 2129// 2130// * WAFLimitsExceededException 2131// The operation exceeds a resource limit, for example, the maximum number of 2132// WebACL objects that you can create for an AWS account. For more information, 2133// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 2134// in the AWS WAF Developer Guide. 2135// 2136// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/CreateXssMatchSet 2137func (c *WAFRegional) CreateXssMatchSet(input *waf.CreateXssMatchSetInput) (*waf.CreateXssMatchSetOutput, error) { 2138 req, out := c.CreateXssMatchSetRequest(input) 2139 return out, req.Send() 2140} 2141 2142// CreateXssMatchSetWithContext is the same as CreateXssMatchSet with the addition of 2143// the ability to pass a context and additional request options. 2144// 2145// See CreateXssMatchSet for details on how to use this API operation. 2146// 2147// The context must be non-nil and will be used for request cancellation. If 2148// the context is nil a panic will occur. In the future the SDK may create 2149// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2150// for more information on using Contexts. 2151func (c *WAFRegional) CreateXssMatchSetWithContext(ctx aws.Context, input *waf.CreateXssMatchSetInput, opts ...request.Option) (*waf.CreateXssMatchSetOutput, error) { 2152 req, out := c.CreateXssMatchSetRequest(input) 2153 req.SetContext(ctx) 2154 req.ApplyOptions(opts...) 2155 return out, req.Send() 2156} 2157 2158const opDeleteByteMatchSet = "DeleteByteMatchSet" 2159 2160// DeleteByteMatchSetRequest generates a "aws/request.Request" representing the 2161// client's request for the DeleteByteMatchSet operation. The "output" return 2162// value will be populated with the request's response once the request completes 2163// successfully. 2164// 2165// Use "Send" method on the returned Request to send the API call to the service. 2166// the "output" return value is not valid until after Send returns without error. 2167// 2168// See DeleteByteMatchSet for more information on using the DeleteByteMatchSet 2169// API call, and error handling. 2170// 2171// This method is useful when you want to inject custom logic or configuration 2172// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2173// 2174// 2175// // Example sending a request using the DeleteByteMatchSetRequest method. 2176// req, resp := client.DeleteByteMatchSetRequest(params) 2177// 2178// err := req.Send() 2179// if err == nil { // resp is now filled 2180// fmt.Println(resp) 2181// } 2182// 2183// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteByteMatchSet 2184func (c *WAFRegional) DeleteByteMatchSetRequest(input *waf.DeleteByteMatchSetInput) (req *request.Request, output *waf.DeleteByteMatchSetOutput) { 2185 op := &request.Operation{ 2186 Name: opDeleteByteMatchSet, 2187 HTTPMethod: "POST", 2188 HTTPPath: "/", 2189 } 2190 2191 if input == nil { 2192 input = &waf.DeleteByteMatchSetInput{} 2193 } 2194 2195 output = &waf.DeleteByteMatchSetOutput{} 2196 req = c.newRequest(op, input, output) 2197 return 2198} 2199 2200// DeleteByteMatchSet API operation for AWS WAF Regional. 2201// 2202// 2203// This is AWS WAF Classic documentation. For more information, see AWS WAF 2204// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 2205// in the developer guide. 2206// 2207// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 2208// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 2209// With the latest version, AWS WAF has a single set of endpoints for regional 2210// and global use. 2211// 2212// Permanently deletes a ByteMatchSet. You can't delete a ByteMatchSet if it's 2213// still used in any Rules or if it still includes any ByteMatchTuple objects 2214// (any filters). 2215// 2216// If you just want to remove a ByteMatchSet from a Rule, use UpdateRule. 2217// 2218// To permanently delete a ByteMatchSet, perform the following steps: 2219// 2220// Update the ByteMatchSet to remove filters, if any. For more information, 2221// see UpdateByteMatchSet. 2222// 2223// Use GetChangeToken to get the change token that you provide in the ChangeToken 2224// parameter of a DeleteByteMatchSet request. 2225// 2226// Submit a DeleteByteMatchSet request. 2227// 2228// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2229// with awserr.Error's Code and Message methods to get detailed information about 2230// the error. 2231// 2232// See the AWS API reference guide for AWS WAF Regional's 2233// API operation DeleteByteMatchSet for usage and error information. 2234// 2235// Returned Error Types: 2236// * WAFInternalErrorException 2237// The operation failed because of a system problem, even though the request 2238// was valid. Retry your request. 2239// 2240// * WAFInvalidAccountException 2241// The operation failed because you tried to create, update, or delete an object 2242// by using an invalid account identifier. 2243// 2244// * WAFNonexistentItemException 2245// The operation failed because the referenced object doesn't exist. 2246// 2247// * WAFReferencedItemException 2248// The operation failed because you tried to delete an object that is still 2249// in use. For example: 2250// 2251// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 2252// 2253// * You tried to delete a Rule that is still referenced by a WebACL. 2254// 2255// * WAFStaleDataException 2256// The operation failed because you tried to create, update, or delete an object 2257// by using a change token that has already been used. 2258// 2259// * WAFNonEmptyEntityException 2260// The operation failed because you tried to delete an object that isn't empty. 2261// For example: 2262// 2263// * You tried to delete a WebACL that still contains one or more Rule objects. 2264// 2265// * You tried to delete a Rule that still contains one or more ByteMatchSet 2266// objects or other predicates. 2267// 2268// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 2269// objects. 2270// 2271// * You tried to delete an IPSet that references one or more IP addresses. 2272// 2273// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteByteMatchSet 2274func (c *WAFRegional) DeleteByteMatchSet(input *waf.DeleteByteMatchSetInput) (*waf.DeleteByteMatchSetOutput, error) { 2275 req, out := c.DeleteByteMatchSetRequest(input) 2276 return out, req.Send() 2277} 2278 2279// DeleteByteMatchSetWithContext is the same as DeleteByteMatchSet with the addition of 2280// the ability to pass a context and additional request options. 2281// 2282// See DeleteByteMatchSet for details on how to use this API operation. 2283// 2284// The context must be non-nil and will be used for request cancellation. If 2285// the context is nil a panic will occur. In the future the SDK may create 2286// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2287// for more information on using Contexts. 2288func (c *WAFRegional) DeleteByteMatchSetWithContext(ctx aws.Context, input *waf.DeleteByteMatchSetInput, opts ...request.Option) (*waf.DeleteByteMatchSetOutput, error) { 2289 req, out := c.DeleteByteMatchSetRequest(input) 2290 req.SetContext(ctx) 2291 req.ApplyOptions(opts...) 2292 return out, req.Send() 2293} 2294 2295const opDeleteGeoMatchSet = "DeleteGeoMatchSet" 2296 2297// DeleteGeoMatchSetRequest generates a "aws/request.Request" representing the 2298// client's request for the DeleteGeoMatchSet operation. The "output" return 2299// value will be populated with the request's response once the request completes 2300// successfully. 2301// 2302// Use "Send" method on the returned Request to send the API call to the service. 2303// the "output" return value is not valid until after Send returns without error. 2304// 2305// See DeleteGeoMatchSet for more information on using the DeleteGeoMatchSet 2306// API call, and error handling. 2307// 2308// This method is useful when you want to inject custom logic or configuration 2309// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2310// 2311// 2312// // Example sending a request using the DeleteGeoMatchSetRequest method. 2313// req, resp := client.DeleteGeoMatchSetRequest(params) 2314// 2315// err := req.Send() 2316// if err == nil { // resp is now filled 2317// fmt.Println(resp) 2318// } 2319// 2320// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteGeoMatchSet 2321func (c *WAFRegional) DeleteGeoMatchSetRequest(input *waf.DeleteGeoMatchSetInput) (req *request.Request, output *waf.DeleteGeoMatchSetOutput) { 2322 op := &request.Operation{ 2323 Name: opDeleteGeoMatchSet, 2324 HTTPMethod: "POST", 2325 HTTPPath: "/", 2326 } 2327 2328 if input == nil { 2329 input = &waf.DeleteGeoMatchSetInput{} 2330 } 2331 2332 output = &waf.DeleteGeoMatchSetOutput{} 2333 req = c.newRequest(op, input, output) 2334 return 2335} 2336 2337// DeleteGeoMatchSet API operation for AWS WAF Regional. 2338// 2339// 2340// This is AWS WAF Classic documentation. For more information, see AWS WAF 2341// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 2342// in the developer guide. 2343// 2344// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 2345// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 2346// With the latest version, AWS WAF has a single set of endpoints for regional 2347// and global use. 2348// 2349// Permanently deletes a GeoMatchSet. You can't delete a GeoMatchSet if it's 2350// still used in any Rules or if it still includes any countries. 2351// 2352// If you just want to remove a GeoMatchSet from a Rule, use UpdateRule. 2353// 2354// To permanently delete a GeoMatchSet from AWS WAF, perform the following steps: 2355// 2356// Update the GeoMatchSet to remove any countries. For more information, see 2357// UpdateGeoMatchSet. 2358// 2359// Use GetChangeToken to get the change token that you provide in the ChangeToken 2360// parameter of a DeleteGeoMatchSet request. 2361// 2362// Submit a DeleteGeoMatchSet request. 2363// 2364// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2365// with awserr.Error's Code and Message methods to get detailed information about 2366// the error. 2367// 2368// See the AWS API reference guide for AWS WAF Regional's 2369// API operation DeleteGeoMatchSet for usage and error information. 2370// 2371// Returned Error Types: 2372// * WAFStaleDataException 2373// The operation failed because you tried to create, update, or delete an object 2374// by using a change token that has already been used. 2375// 2376// * WAFInternalErrorException 2377// The operation failed because of a system problem, even though the request 2378// was valid. Retry your request. 2379// 2380// * WAFInvalidAccountException 2381// The operation failed because you tried to create, update, or delete an object 2382// by using an invalid account identifier. 2383// 2384// * WAFNonexistentItemException 2385// The operation failed because the referenced object doesn't exist. 2386// 2387// * WAFReferencedItemException 2388// The operation failed because you tried to delete an object that is still 2389// in use. For example: 2390// 2391// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 2392// 2393// * You tried to delete a Rule that is still referenced by a WebACL. 2394// 2395// * WAFNonEmptyEntityException 2396// The operation failed because you tried to delete an object that isn't empty. 2397// For example: 2398// 2399// * You tried to delete a WebACL that still contains one or more Rule objects. 2400// 2401// * You tried to delete a Rule that still contains one or more ByteMatchSet 2402// objects or other predicates. 2403// 2404// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 2405// objects. 2406// 2407// * You tried to delete an IPSet that references one or more IP addresses. 2408// 2409// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteGeoMatchSet 2410func (c *WAFRegional) DeleteGeoMatchSet(input *waf.DeleteGeoMatchSetInput) (*waf.DeleteGeoMatchSetOutput, error) { 2411 req, out := c.DeleteGeoMatchSetRequest(input) 2412 return out, req.Send() 2413} 2414 2415// DeleteGeoMatchSetWithContext is the same as DeleteGeoMatchSet with the addition of 2416// the ability to pass a context and additional request options. 2417// 2418// See DeleteGeoMatchSet for details on how to use this API operation. 2419// 2420// The context must be non-nil and will be used for request cancellation. If 2421// the context is nil a panic will occur. In the future the SDK may create 2422// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2423// for more information on using Contexts. 2424func (c *WAFRegional) DeleteGeoMatchSetWithContext(ctx aws.Context, input *waf.DeleteGeoMatchSetInput, opts ...request.Option) (*waf.DeleteGeoMatchSetOutput, error) { 2425 req, out := c.DeleteGeoMatchSetRequest(input) 2426 req.SetContext(ctx) 2427 req.ApplyOptions(opts...) 2428 return out, req.Send() 2429} 2430 2431const opDeleteIPSet = "DeleteIPSet" 2432 2433// DeleteIPSetRequest generates a "aws/request.Request" representing the 2434// client's request for the DeleteIPSet operation. The "output" return 2435// value will be populated with the request's response once the request completes 2436// successfully. 2437// 2438// Use "Send" method on the returned Request to send the API call to the service. 2439// the "output" return value is not valid until after Send returns without error. 2440// 2441// See DeleteIPSet for more information on using the DeleteIPSet 2442// API call, and error handling. 2443// 2444// This method is useful when you want to inject custom logic or configuration 2445// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2446// 2447// 2448// // Example sending a request using the DeleteIPSetRequest method. 2449// req, resp := client.DeleteIPSetRequest(params) 2450// 2451// err := req.Send() 2452// if err == nil { // resp is now filled 2453// fmt.Println(resp) 2454// } 2455// 2456// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteIPSet 2457func (c *WAFRegional) DeleteIPSetRequest(input *waf.DeleteIPSetInput) (req *request.Request, output *waf.DeleteIPSetOutput) { 2458 op := &request.Operation{ 2459 Name: opDeleteIPSet, 2460 HTTPMethod: "POST", 2461 HTTPPath: "/", 2462 } 2463 2464 if input == nil { 2465 input = &waf.DeleteIPSetInput{} 2466 } 2467 2468 output = &waf.DeleteIPSetOutput{} 2469 req = c.newRequest(op, input, output) 2470 return 2471} 2472 2473// DeleteIPSet API operation for AWS WAF Regional. 2474// 2475// 2476// This is AWS WAF Classic documentation. For more information, see AWS WAF 2477// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 2478// in the developer guide. 2479// 2480// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 2481// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 2482// With the latest version, AWS WAF has a single set of endpoints for regional 2483// and global use. 2484// 2485// Permanently deletes an IPSet. You can't delete an IPSet if it's still used 2486// in any Rules or if it still includes any IP addresses. 2487// 2488// If you just want to remove an IPSet from a Rule, use UpdateRule. 2489// 2490// To permanently delete an IPSet from AWS WAF, perform the following steps: 2491// 2492// Update the IPSet to remove IP address ranges, if any. For more information, 2493// see UpdateIPSet. 2494// 2495// Use GetChangeToken to get the change token that you provide in the ChangeToken 2496// parameter of a DeleteIPSet request. 2497// 2498// Submit a DeleteIPSet request. 2499// 2500// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2501// with awserr.Error's Code and Message methods to get detailed information about 2502// the error. 2503// 2504// See the AWS API reference guide for AWS WAF Regional's 2505// API operation DeleteIPSet for usage and error information. 2506// 2507// Returned Error Types: 2508// * WAFStaleDataException 2509// The operation failed because you tried to create, update, or delete an object 2510// by using a change token that has already been used. 2511// 2512// * WAFInternalErrorException 2513// The operation failed because of a system problem, even though the request 2514// was valid. Retry your request. 2515// 2516// * WAFInvalidAccountException 2517// The operation failed because you tried to create, update, or delete an object 2518// by using an invalid account identifier. 2519// 2520// * WAFNonexistentItemException 2521// The operation failed because the referenced object doesn't exist. 2522// 2523// * WAFReferencedItemException 2524// The operation failed because you tried to delete an object that is still 2525// in use. For example: 2526// 2527// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 2528// 2529// * You tried to delete a Rule that is still referenced by a WebACL. 2530// 2531// * WAFNonEmptyEntityException 2532// The operation failed because you tried to delete an object that isn't empty. 2533// For example: 2534// 2535// * You tried to delete a WebACL that still contains one or more Rule objects. 2536// 2537// * You tried to delete a Rule that still contains one or more ByteMatchSet 2538// objects or other predicates. 2539// 2540// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 2541// objects. 2542// 2543// * You tried to delete an IPSet that references one or more IP addresses. 2544// 2545// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteIPSet 2546func (c *WAFRegional) DeleteIPSet(input *waf.DeleteIPSetInput) (*waf.DeleteIPSetOutput, error) { 2547 req, out := c.DeleteIPSetRequest(input) 2548 return out, req.Send() 2549} 2550 2551// DeleteIPSetWithContext is the same as DeleteIPSet with the addition of 2552// the ability to pass a context and additional request options. 2553// 2554// See DeleteIPSet for details on how to use this API operation. 2555// 2556// The context must be non-nil and will be used for request cancellation. If 2557// the context is nil a panic will occur. In the future the SDK may create 2558// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2559// for more information on using Contexts. 2560func (c *WAFRegional) DeleteIPSetWithContext(ctx aws.Context, input *waf.DeleteIPSetInput, opts ...request.Option) (*waf.DeleteIPSetOutput, error) { 2561 req, out := c.DeleteIPSetRequest(input) 2562 req.SetContext(ctx) 2563 req.ApplyOptions(opts...) 2564 return out, req.Send() 2565} 2566 2567const opDeleteLoggingConfiguration = "DeleteLoggingConfiguration" 2568 2569// DeleteLoggingConfigurationRequest generates a "aws/request.Request" representing the 2570// client's request for the DeleteLoggingConfiguration operation. The "output" return 2571// value will be populated with the request's response once the request completes 2572// successfully. 2573// 2574// Use "Send" method on the returned Request to send the API call to the service. 2575// the "output" return value is not valid until after Send returns without error. 2576// 2577// See DeleteLoggingConfiguration for more information on using the DeleteLoggingConfiguration 2578// API call, and error handling. 2579// 2580// This method is useful when you want to inject custom logic or configuration 2581// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2582// 2583// 2584// // Example sending a request using the DeleteLoggingConfigurationRequest method. 2585// req, resp := client.DeleteLoggingConfigurationRequest(params) 2586// 2587// err := req.Send() 2588// if err == nil { // resp is now filled 2589// fmt.Println(resp) 2590// } 2591// 2592// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteLoggingConfiguration 2593func (c *WAFRegional) DeleteLoggingConfigurationRequest(input *waf.DeleteLoggingConfigurationInput) (req *request.Request, output *waf.DeleteLoggingConfigurationOutput) { 2594 op := &request.Operation{ 2595 Name: opDeleteLoggingConfiguration, 2596 HTTPMethod: "POST", 2597 HTTPPath: "/", 2598 } 2599 2600 if input == nil { 2601 input = &waf.DeleteLoggingConfigurationInput{} 2602 } 2603 2604 output = &waf.DeleteLoggingConfigurationOutput{} 2605 req = c.newRequest(op, input, output) 2606 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2607 return 2608} 2609 2610// DeleteLoggingConfiguration API operation for AWS WAF Regional. 2611// 2612// 2613// This is AWS WAF Classic documentation. For more information, see AWS WAF 2614// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 2615// in the developer guide. 2616// 2617// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 2618// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 2619// With the latest version, AWS WAF has a single set of endpoints for regional 2620// and global use. 2621// 2622// Permanently deletes the LoggingConfiguration from the specified web ACL. 2623// 2624// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2625// with awserr.Error's Code and Message methods to get detailed information about 2626// the error. 2627// 2628// See the AWS API reference guide for AWS WAF Regional's 2629// API operation DeleteLoggingConfiguration for usage and error information. 2630// 2631// Returned Error Types: 2632// * WAFInternalErrorException 2633// The operation failed because of a system problem, even though the request 2634// was valid. Retry your request. 2635// 2636// * WAFNonexistentItemException 2637// The operation failed because the referenced object doesn't exist. 2638// 2639// * WAFStaleDataException 2640// The operation failed because you tried to create, update, or delete an object 2641// by using a change token that has already been used. 2642// 2643// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteLoggingConfiguration 2644func (c *WAFRegional) DeleteLoggingConfiguration(input *waf.DeleteLoggingConfigurationInput) (*waf.DeleteLoggingConfigurationOutput, error) { 2645 req, out := c.DeleteLoggingConfigurationRequest(input) 2646 return out, req.Send() 2647} 2648 2649// DeleteLoggingConfigurationWithContext is the same as DeleteLoggingConfiguration with the addition of 2650// the ability to pass a context and additional request options. 2651// 2652// See DeleteLoggingConfiguration for details on how to use this API operation. 2653// 2654// The context must be non-nil and will be used for request cancellation. If 2655// the context is nil a panic will occur. In the future the SDK may create 2656// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2657// for more information on using Contexts. 2658func (c *WAFRegional) DeleteLoggingConfigurationWithContext(ctx aws.Context, input *waf.DeleteLoggingConfigurationInput, opts ...request.Option) (*waf.DeleteLoggingConfigurationOutput, error) { 2659 req, out := c.DeleteLoggingConfigurationRequest(input) 2660 req.SetContext(ctx) 2661 req.ApplyOptions(opts...) 2662 return out, req.Send() 2663} 2664 2665const opDeletePermissionPolicy = "DeletePermissionPolicy" 2666 2667// DeletePermissionPolicyRequest generates a "aws/request.Request" representing the 2668// client's request for the DeletePermissionPolicy operation. The "output" return 2669// value will be populated with the request's response once the request completes 2670// successfully. 2671// 2672// Use "Send" method on the returned Request to send the API call to the service. 2673// the "output" return value is not valid until after Send returns without error. 2674// 2675// See DeletePermissionPolicy for more information on using the DeletePermissionPolicy 2676// API call, and error handling. 2677// 2678// This method is useful when you want to inject custom logic or configuration 2679// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2680// 2681// 2682// // Example sending a request using the DeletePermissionPolicyRequest method. 2683// req, resp := client.DeletePermissionPolicyRequest(params) 2684// 2685// err := req.Send() 2686// if err == nil { // resp is now filled 2687// fmt.Println(resp) 2688// } 2689// 2690// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeletePermissionPolicy 2691func (c *WAFRegional) DeletePermissionPolicyRequest(input *waf.DeletePermissionPolicyInput) (req *request.Request, output *waf.DeletePermissionPolicyOutput) { 2692 op := &request.Operation{ 2693 Name: opDeletePermissionPolicy, 2694 HTTPMethod: "POST", 2695 HTTPPath: "/", 2696 } 2697 2698 if input == nil { 2699 input = &waf.DeletePermissionPolicyInput{} 2700 } 2701 2702 output = &waf.DeletePermissionPolicyOutput{} 2703 req = c.newRequest(op, input, output) 2704 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 2705 return 2706} 2707 2708// DeletePermissionPolicy API operation for AWS WAF Regional. 2709// 2710// 2711// This is AWS WAF Classic documentation. For more information, see AWS WAF 2712// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 2713// in the developer guide. 2714// 2715// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 2716// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 2717// With the latest version, AWS WAF has a single set of endpoints for regional 2718// and global use. 2719// 2720// Permanently deletes an IAM policy from the specified RuleGroup. 2721// 2722// The user making the request must be the owner of the RuleGroup. 2723// 2724// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2725// with awserr.Error's Code and Message methods to get detailed information about 2726// the error. 2727// 2728// See the AWS API reference guide for AWS WAF Regional's 2729// API operation DeletePermissionPolicy for usage and error information. 2730// 2731// Returned Error Types: 2732// * WAFInternalErrorException 2733// The operation failed because of a system problem, even though the request 2734// was valid. Retry your request. 2735// 2736// * WAFStaleDataException 2737// The operation failed because you tried to create, update, or delete an object 2738// by using a change token that has already been used. 2739// 2740// * WAFNonexistentItemException 2741// The operation failed because the referenced object doesn't exist. 2742// 2743// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeletePermissionPolicy 2744func (c *WAFRegional) DeletePermissionPolicy(input *waf.DeletePermissionPolicyInput) (*waf.DeletePermissionPolicyOutput, error) { 2745 req, out := c.DeletePermissionPolicyRequest(input) 2746 return out, req.Send() 2747} 2748 2749// DeletePermissionPolicyWithContext is the same as DeletePermissionPolicy with the addition of 2750// the ability to pass a context and additional request options. 2751// 2752// See DeletePermissionPolicy for details on how to use this API operation. 2753// 2754// The context must be non-nil and will be used for request cancellation. If 2755// the context is nil a panic will occur. In the future the SDK may create 2756// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2757// for more information on using Contexts. 2758func (c *WAFRegional) DeletePermissionPolicyWithContext(ctx aws.Context, input *waf.DeletePermissionPolicyInput, opts ...request.Option) (*waf.DeletePermissionPolicyOutput, error) { 2759 req, out := c.DeletePermissionPolicyRequest(input) 2760 req.SetContext(ctx) 2761 req.ApplyOptions(opts...) 2762 return out, req.Send() 2763} 2764 2765const opDeleteRateBasedRule = "DeleteRateBasedRule" 2766 2767// DeleteRateBasedRuleRequest generates a "aws/request.Request" representing the 2768// client's request for the DeleteRateBasedRule operation. The "output" return 2769// value will be populated with the request's response once the request completes 2770// successfully. 2771// 2772// Use "Send" method on the returned Request to send the API call to the service. 2773// the "output" return value is not valid until after Send returns without error. 2774// 2775// See DeleteRateBasedRule for more information on using the DeleteRateBasedRule 2776// API call, and error handling. 2777// 2778// This method is useful when you want to inject custom logic or configuration 2779// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2780// 2781// 2782// // Example sending a request using the DeleteRateBasedRuleRequest method. 2783// req, resp := client.DeleteRateBasedRuleRequest(params) 2784// 2785// err := req.Send() 2786// if err == nil { // resp is now filled 2787// fmt.Println(resp) 2788// } 2789// 2790// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRateBasedRule 2791func (c *WAFRegional) DeleteRateBasedRuleRequest(input *waf.DeleteRateBasedRuleInput) (req *request.Request, output *waf.DeleteRateBasedRuleOutput) { 2792 op := &request.Operation{ 2793 Name: opDeleteRateBasedRule, 2794 HTTPMethod: "POST", 2795 HTTPPath: "/", 2796 } 2797 2798 if input == nil { 2799 input = &waf.DeleteRateBasedRuleInput{} 2800 } 2801 2802 output = &waf.DeleteRateBasedRuleOutput{} 2803 req = c.newRequest(op, input, output) 2804 return 2805} 2806 2807// DeleteRateBasedRule API operation for AWS WAF Regional. 2808// 2809// 2810// This is AWS WAF Classic documentation. For more information, see AWS WAF 2811// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 2812// in the developer guide. 2813// 2814// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 2815// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 2816// With the latest version, AWS WAF has a single set of endpoints for regional 2817// and global use. 2818// 2819// Permanently deletes a RateBasedRule. You can't delete a rule if it's still 2820// used in any WebACL objects or if it still includes any predicates, such as 2821// ByteMatchSet objects. 2822// 2823// If you just want to remove a rule from a WebACL, use UpdateWebACL. 2824// 2825// To permanently delete a RateBasedRule from AWS WAF, perform the following 2826// steps: 2827// 2828// Update the RateBasedRule to remove predicates, if any. For more information, 2829// see UpdateRateBasedRule. 2830// 2831// Use GetChangeToken to get the change token that you provide in the ChangeToken 2832// parameter of a DeleteRateBasedRule request. 2833// 2834// Submit a DeleteRateBasedRule request. 2835// 2836// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2837// with awserr.Error's Code and Message methods to get detailed information about 2838// the error. 2839// 2840// See the AWS API reference guide for AWS WAF Regional's 2841// API operation DeleteRateBasedRule for usage and error information. 2842// 2843// Returned Error Types: 2844// * WAFStaleDataException 2845// The operation failed because you tried to create, update, or delete an object 2846// by using a change token that has already been used. 2847// 2848// * WAFInternalErrorException 2849// The operation failed because of a system problem, even though the request 2850// was valid. Retry your request. 2851// 2852// * WAFInvalidAccountException 2853// The operation failed because you tried to create, update, or delete an object 2854// by using an invalid account identifier. 2855// 2856// * WAFNonexistentItemException 2857// The operation failed because the referenced object doesn't exist. 2858// 2859// * WAFReferencedItemException 2860// The operation failed because you tried to delete an object that is still 2861// in use. For example: 2862// 2863// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 2864// 2865// * You tried to delete a Rule that is still referenced by a WebACL. 2866// 2867// * WAFNonEmptyEntityException 2868// The operation failed because you tried to delete an object that isn't empty. 2869// For example: 2870// 2871// * You tried to delete a WebACL that still contains one or more Rule objects. 2872// 2873// * You tried to delete a Rule that still contains one or more ByteMatchSet 2874// objects or other predicates. 2875// 2876// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 2877// objects. 2878// 2879// * You tried to delete an IPSet that references one or more IP addresses. 2880// 2881// * WAFTagOperationException 2882// 2883// * WAFTagOperationInternalErrorException 2884// 2885// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRateBasedRule 2886func (c *WAFRegional) DeleteRateBasedRule(input *waf.DeleteRateBasedRuleInput) (*waf.DeleteRateBasedRuleOutput, error) { 2887 req, out := c.DeleteRateBasedRuleRequest(input) 2888 return out, req.Send() 2889} 2890 2891// DeleteRateBasedRuleWithContext is the same as DeleteRateBasedRule with the addition of 2892// the ability to pass a context and additional request options. 2893// 2894// See DeleteRateBasedRule for details on how to use this API operation. 2895// 2896// The context must be non-nil and will be used for request cancellation. If 2897// the context is nil a panic will occur. In the future the SDK may create 2898// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2899// for more information on using Contexts. 2900func (c *WAFRegional) DeleteRateBasedRuleWithContext(ctx aws.Context, input *waf.DeleteRateBasedRuleInput, opts ...request.Option) (*waf.DeleteRateBasedRuleOutput, error) { 2901 req, out := c.DeleteRateBasedRuleRequest(input) 2902 req.SetContext(ctx) 2903 req.ApplyOptions(opts...) 2904 return out, req.Send() 2905} 2906 2907const opDeleteRegexMatchSet = "DeleteRegexMatchSet" 2908 2909// DeleteRegexMatchSetRequest generates a "aws/request.Request" representing the 2910// client's request for the DeleteRegexMatchSet operation. The "output" return 2911// value will be populated with the request's response once the request completes 2912// successfully. 2913// 2914// Use "Send" method on the returned Request to send the API call to the service. 2915// the "output" return value is not valid until after Send returns without error. 2916// 2917// See DeleteRegexMatchSet for more information on using the DeleteRegexMatchSet 2918// API call, and error handling. 2919// 2920// This method is useful when you want to inject custom logic or configuration 2921// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2922// 2923// 2924// // Example sending a request using the DeleteRegexMatchSetRequest method. 2925// req, resp := client.DeleteRegexMatchSetRequest(params) 2926// 2927// err := req.Send() 2928// if err == nil { // resp is now filled 2929// fmt.Println(resp) 2930// } 2931// 2932// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRegexMatchSet 2933func (c *WAFRegional) DeleteRegexMatchSetRequest(input *waf.DeleteRegexMatchSetInput) (req *request.Request, output *waf.DeleteRegexMatchSetOutput) { 2934 op := &request.Operation{ 2935 Name: opDeleteRegexMatchSet, 2936 HTTPMethod: "POST", 2937 HTTPPath: "/", 2938 } 2939 2940 if input == nil { 2941 input = &waf.DeleteRegexMatchSetInput{} 2942 } 2943 2944 output = &waf.DeleteRegexMatchSetOutput{} 2945 req = c.newRequest(op, input, output) 2946 return 2947} 2948 2949// DeleteRegexMatchSet API operation for AWS WAF Regional. 2950// 2951// 2952// This is AWS WAF Classic documentation. For more information, see AWS WAF 2953// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 2954// in the developer guide. 2955// 2956// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 2957// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 2958// With the latest version, AWS WAF has a single set of endpoints for regional 2959// and global use. 2960// 2961// Permanently deletes a RegexMatchSet. You can't delete a RegexMatchSet if 2962// it's still used in any Rules or if it still includes any RegexMatchTuples 2963// objects (any filters). 2964// 2965// If you just want to remove a RegexMatchSet from a Rule, use UpdateRule. 2966// 2967// To permanently delete a RegexMatchSet, perform the following steps: 2968// 2969// Update the RegexMatchSet to remove filters, if any. For more information, 2970// see UpdateRegexMatchSet. 2971// 2972// Use GetChangeToken to get the change token that you provide in the ChangeToken 2973// parameter of a DeleteRegexMatchSet request. 2974// 2975// Submit a DeleteRegexMatchSet request. 2976// 2977// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2978// with awserr.Error's Code and Message methods to get detailed information about 2979// the error. 2980// 2981// See the AWS API reference guide for AWS WAF Regional's 2982// API operation DeleteRegexMatchSet for usage and error information. 2983// 2984// Returned Error Types: 2985// * WAFInternalErrorException 2986// The operation failed because of a system problem, even though the request 2987// was valid. Retry your request. 2988// 2989// * WAFInvalidAccountException 2990// The operation failed because you tried to create, update, or delete an object 2991// by using an invalid account identifier. 2992// 2993// * WAFNonexistentItemException 2994// The operation failed because the referenced object doesn't exist. 2995// 2996// * WAFReferencedItemException 2997// The operation failed because you tried to delete an object that is still 2998// in use. For example: 2999// 3000// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 3001// 3002// * You tried to delete a Rule that is still referenced by a WebACL. 3003// 3004// * WAFStaleDataException 3005// The operation failed because you tried to create, update, or delete an object 3006// by using a change token that has already been used. 3007// 3008// * WAFNonEmptyEntityException 3009// The operation failed because you tried to delete an object that isn't empty. 3010// For example: 3011// 3012// * You tried to delete a WebACL that still contains one or more Rule objects. 3013// 3014// * You tried to delete a Rule that still contains one or more ByteMatchSet 3015// objects or other predicates. 3016// 3017// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 3018// objects. 3019// 3020// * You tried to delete an IPSet that references one or more IP addresses. 3021// 3022// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRegexMatchSet 3023func (c *WAFRegional) DeleteRegexMatchSet(input *waf.DeleteRegexMatchSetInput) (*waf.DeleteRegexMatchSetOutput, error) { 3024 req, out := c.DeleteRegexMatchSetRequest(input) 3025 return out, req.Send() 3026} 3027 3028// DeleteRegexMatchSetWithContext is the same as DeleteRegexMatchSet with the addition of 3029// the ability to pass a context and additional request options. 3030// 3031// See DeleteRegexMatchSet for details on how to use this API operation. 3032// 3033// The context must be non-nil and will be used for request cancellation. If 3034// the context is nil a panic will occur. In the future the SDK may create 3035// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3036// for more information on using Contexts. 3037func (c *WAFRegional) DeleteRegexMatchSetWithContext(ctx aws.Context, input *waf.DeleteRegexMatchSetInput, opts ...request.Option) (*waf.DeleteRegexMatchSetOutput, error) { 3038 req, out := c.DeleteRegexMatchSetRequest(input) 3039 req.SetContext(ctx) 3040 req.ApplyOptions(opts...) 3041 return out, req.Send() 3042} 3043 3044const opDeleteRegexPatternSet = "DeleteRegexPatternSet" 3045 3046// DeleteRegexPatternSetRequest generates a "aws/request.Request" representing the 3047// client's request for the DeleteRegexPatternSet operation. The "output" return 3048// value will be populated with the request's response once the request completes 3049// successfully. 3050// 3051// Use "Send" method on the returned Request to send the API call to the service. 3052// the "output" return value is not valid until after Send returns without error. 3053// 3054// See DeleteRegexPatternSet for more information on using the DeleteRegexPatternSet 3055// API call, and error handling. 3056// 3057// This method is useful when you want to inject custom logic or configuration 3058// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3059// 3060// 3061// // Example sending a request using the DeleteRegexPatternSetRequest method. 3062// req, resp := client.DeleteRegexPatternSetRequest(params) 3063// 3064// err := req.Send() 3065// if err == nil { // resp is now filled 3066// fmt.Println(resp) 3067// } 3068// 3069// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRegexPatternSet 3070func (c *WAFRegional) DeleteRegexPatternSetRequest(input *waf.DeleteRegexPatternSetInput) (req *request.Request, output *waf.DeleteRegexPatternSetOutput) { 3071 op := &request.Operation{ 3072 Name: opDeleteRegexPatternSet, 3073 HTTPMethod: "POST", 3074 HTTPPath: "/", 3075 } 3076 3077 if input == nil { 3078 input = &waf.DeleteRegexPatternSetInput{} 3079 } 3080 3081 output = &waf.DeleteRegexPatternSetOutput{} 3082 req = c.newRequest(op, input, output) 3083 return 3084} 3085 3086// DeleteRegexPatternSet API operation for AWS WAF Regional. 3087// 3088// 3089// This is AWS WAF Classic documentation. For more information, see AWS WAF 3090// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 3091// in the developer guide. 3092// 3093// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 3094// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 3095// With the latest version, AWS WAF has a single set of endpoints for regional 3096// and global use. 3097// 3098// Permanently deletes a RegexPatternSet. You can't delete a RegexPatternSet 3099// if it's still used in any RegexMatchSet or if the RegexPatternSet is not 3100// empty. 3101// 3102// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3103// with awserr.Error's Code and Message methods to get detailed information about 3104// the error. 3105// 3106// See the AWS API reference guide for AWS WAF Regional's 3107// API operation DeleteRegexPatternSet for usage and error information. 3108// 3109// Returned Error Types: 3110// * WAFInternalErrorException 3111// The operation failed because of a system problem, even though the request 3112// was valid. Retry your request. 3113// 3114// * WAFInvalidAccountException 3115// The operation failed because you tried to create, update, or delete an object 3116// by using an invalid account identifier. 3117// 3118// * WAFNonexistentItemException 3119// The operation failed because the referenced object doesn't exist. 3120// 3121// * WAFReferencedItemException 3122// The operation failed because you tried to delete an object that is still 3123// in use. For example: 3124// 3125// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 3126// 3127// * You tried to delete a Rule that is still referenced by a WebACL. 3128// 3129// * WAFStaleDataException 3130// The operation failed because you tried to create, update, or delete an object 3131// by using a change token that has already been used. 3132// 3133// * WAFNonEmptyEntityException 3134// The operation failed because you tried to delete an object that isn't empty. 3135// For example: 3136// 3137// * You tried to delete a WebACL that still contains one or more Rule objects. 3138// 3139// * You tried to delete a Rule that still contains one or more ByteMatchSet 3140// objects or other predicates. 3141// 3142// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 3143// objects. 3144// 3145// * You tried to delete an IPSet that references one or more IP addresses. 3146// 3147// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRegexPatternSet 3148func (c *WAFRegional) DeleteRegexPatternSet(input *waf.DeleteRegexPatternSetInput) (*waf.DeleteRegexPatternSetOutput, error) { 3149 req, out := c.DeleteRegexPatternSetRequest(input) 3150 return out, req.Send() 3151} 3152 3153// DeleteRegexPatternSetWithContext is the same as DeleteRegexPatternSet with the addition of 3154// the ability to pass a context and additional request options. 3155// 3156// See DeleteRegexPatternSet for details on how to use this API operation. 3157// 3158// The context must be non-nil and will be used for request cancellation. If 3159// the context is nil a panic will occur. In the future the SDK may create 3160// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3161// for more information on using Contexts. 3162func (c *WAFRegional) DeleteRegexPatternSetWithContext(ctx aws.Context, input *waf.DeleteRegexPatternSetInput, opts ...request.Option) (*waf.DeleteRegexPatternSetOutput, error) { 3163 req, out := c.DeleteRegexPatternSetRequest(input) 3164 req.SetContext(ctx) 3165 req.ApplyOptions(opts...) 3166 return out, req.Send() 3167} 3168 3169const opDeleteRule = "DeleteRule" 3170 3171// DeleteRuleRequest generates a "aws/request.Request" representing the 3172// client's request for the DeleteRule operation. The "output" return 3173// value will be populated with the request's response once the request completes 3174// successfully. 3175// 3176// Use "Send" method on the returned Request to send the API call to the service. 3177// the "output" return value is not valid until after Send returns without error. 3178// 3179// See DeleteRule for more information on using the DeleteRule 3180// API call, and error handling. 3181// 3182// This method is useful when you want to inject custom logic or configuration 3183// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3184// 3185// 3186// // Example sending a request using the DeleteRuleRequest method. 3187// req, resp := client.DeleteRuleRequest(params) 3188// 3189// err := req.Send() 3190// if err == nil { // resp is now filled 3191// fmt.Println(resp) 3192// } 3193// 3194// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRule 3195func (c *WAFRegional) DeleteRuleRequest(input *waf.DeleteRuleInput) (req *request.Request, output *waf.DeleteRuleOutput) { 3196 op := &request.Operation{ 3197 Name: opDeleteRule, 3198 HTTPMethod: "POST", 3199 HTTPPath: "/", 3200 } 3201 3202 if input == nil { 3203 input = &waf.DeleteRuleInput{} 3204 } 3205 3206 output = &waf.DeleteRuleOutput{} 3207 req = c.newRequest(op, input, output) 3208 return 3209} 3210 3211// DeleteRule API operation for AWS WAF Regional. 3212// 3213// 3214// This is AWS WAF Classic documentation. For more information, see AWS WAF 3215// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 3216// in the developer guide. 3217// 3218// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 3219// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 3220// With the latest version, AWS WAF has a single set of endpoints for regional 3221// and global use. 3222// 3223// Permanently deletes a Rule. You can't delete a Rule if it's still used in 3224// any WebACL objects or if it still includes any predicates, such as ByteMatchSet 3225// objects. 3226// 3227// If you just want to remove a Rule from a WebACL, use UpdateWebACL. 3228// 3229// To permanently delete a Rule from AWS WAF, perform the following steps: 3230// 3231// Update the Rule to remove predicates, if any. For more information, see UpdateRule. 3232// 3233// Use GetChangeToken to get the change token that you provide in the ChangeToken 3234// parameter of a DeleteRule request. 3235// 3236// Submit a DeleteRule request. 3237// 3238// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3239// with awserr.Error's Code and Message methods to get detailed information about 3240// the error. 3241// 3242// See the AWS API reference guide for AWS WAF Regional's 3243// API operation DeleteRule for usage and error information. 3244// 3245// Returned Error Types: 3246// * WAFStaleDataException 3247// The operation failed because you tried to create, update, or delete an object 3248// by using a change token that has already been used. 3249// 3250// * WAFInternalErrorException 3251// The operation failed because of a system problem, even though the request 3252// was valid. Retry your request. 3253// 3254// * WAFInvalidAccountException 3255// The operation failed because you tried to create, update, or delete an object 3256// by using an invalid account identifier. 3257// 3258// * WAFNonexistentItemException 3259// The operation failed because the referenced object doesn't exist. 3260// 3261// * WAFReferencedItemException 3262// The operation failed because you tried to delete an object that is still 3263// in use. For example: 3264// 3265// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 3266// 3267// * You tried to delete a Rule that is still referenced by a WebACL. 3268// 3269// * WAFNonEmptyEntityException 3270// The operation failed because you tried to delete an object that isn't empty. 3271// For example: 3272// 3273// * You tried to delete a WebACL that still contains one or more Rule objects. 3274// 3275// * You tried to delete a Rule that still contains one or more ByteMatchSet 3276// objects or other predicates. 3277// 3278// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 3279// objects. 3280// 3281// * You tried to delete an IPSet that references one or more IP addresses. 3282// 3283// * WAFTagOperationException 3284// 3285// * WAFTagOperationInternalErrorException 3286// 3287// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRule 3288func (c *WAFRegional) DeleteRule(input *waf.DeleteRuleInput) (*waf.DeleteRuleOutput, error) { 3289 req, out := c.DeleteRuleRequest(input) 3290 return out, req.Send() 3291} 3292 3293// DeleteRuleWithContext is the same as DeleteRule with the addition of 3294// the ability to pass a context and additional request options. 3295// 3296// See DeleteRule for details on how to use this API operation. 3297// 3298// The context must be non-nil and will be used for request cancellation. If 3299// the context is nil a panic will occur. In the future the SDK may create 3300// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3301// for more information on using Contexts. 3302func (c *WAFRegional) DeleteRuleWithContext(ctx aws.Context, input *waf.DeleteRuleInput, opts ...request.Option) (*waf.DeleteRuleOutput, error) { 3303 req, out := c.DeleteRuleRequest(input) 3304 req.SetContext(ctx) 3305 req.ApplyOptions(opts...) 3306 return out, req.Send() 3307} 3308 3309const opDeleteRuleGroup = "DeleteRuleGroup" 3310 3311// DeleteRuleGroupRequest generates a "aws/request.Request" representing the 3312// client's request for the DeleteRuleGroup operation. The "output" return 3313// value will be populated with the request's response once the request completes 3314// successfully. 3315// 3316// Use "Send" method on the returned Request to send the API call to the service. 3317// the "output" return value is not valid until after Send returns without error. 3318// 3319// See DeleteRuleGroup for more information on using the DeleteRuleGroup 3320// API call, and error handling. 3321// 3322// This method is useful when you want to inject custom logic or configuration 3323// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3324// 3325// 3326// // Example sending a request using the DeleteRuleGroupRequest method. 3327// req, resp := client.DeleteRuleGroupRequest(params) 3328// 3329// err := req.Send() 3330// if err == nil { // resp is now filled 3331// fmt.Println(resp) 3332// } 3333// 3334// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRuleGroup 3335func (c *WAFRegional) DeleteRuleGroupRequest(input *waf.DeleteRuleGroupInput) (req *request.Request, output *waf.DeleteRuleGroupOutput) { 3336 op := &request.Operation{ 3337 Name: opDeleteRuleGroup, 3338 HTTPMethod: "POST", 3339 HTTPPath: "/", 3340 } 3341 3342 if input == nil { 3343 input = &waf.DeleteRuleGroupInput{} 3344 } 3345 3346 output = &waf.DeleteRuleGroupOutput{} 3347 req = c.newRequest(op, input, output) 3348 return 3349} 3350 3351// DeleteRuleGroup API operation for AWS WAF Regional. 3352// 3353// 3354// This is AWS WAF Classic documentation. For more information, see AWS WAF 3355// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 3356// in the developer guide. 3357// 3358// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 3359// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 3360// With the latest version, AWS WAF has a single set of endpoints for regional 3361// and global use. 3362// 3363// Permanently deletes a RuleGroup. You can't delete a RuleGroup if it's still 3364// used in any WebACL objects or if it still includes any rules. 3365// 3366// If you just want to remove a RuleGroup from a WebACL, use UpdateWebACL. 3367// 3368// To permanently delete a RuleGroup from AWS WAF, perform the following steps: 3369// 3370// Update the RuleGroup to remove rules, if any. For more information, see UpdateRuleGroup. 3371// 3372// Use GetChangeToken to get the change token that you provide in the ChangeToken 3373// parameter of a DeleteRuleGroup request. 3374// 3375// Submit a DeleteRuleGroup request. 3376// 3377// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3378// with awserr.Error's Code and Message methods to get detailed information about 3379// the error. 3380// 3381// See the AWS API reference guide for AWS WAF Regional's 3382// API operation DeleteRuleGroup for usage and error information. 3383// 3384// Returned Error Types: 3385// * WAFStaleDataException 3386// The operation failed because you tried to create, update, or delete an object 3387// by using a change token that has already been used. 3388// 3389// * WAFInternalErrorException 3390// The operation failed because of a system problem, even though the request 3391// was valid. Retry your request. 3392// 3393// * WAFNonexistentItemException 3394// The operation failed because the referenced object doesn't exist. 3395// 3396// * WAFReferencedItemException 3397// The operation failed because you tried to delete an object that is still 3398// in use. For example: 3399// 3400// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 3401// 3402// * You tried to delete a Rule that is still referenced by a WebACL. 3403// 3404// * WAFNonEmptyEntityException 3405// The operation failed because you tried to delete an object that isn't empty. 3406// For example: 3407// 3408// * You tried to delete a WebACL that still contains one or more Rule objects. 3409// 3410// * You tried to delete a Rule that still contains one or more ByteMatchSet 3411// objects or other predicates. 3412// 3413// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 3414// objects. 3415// 3416// * You tried to delete an IPSet that references one or more IP addresses. 3417// 3418// * WAFInvalidOperationException 3419// The operation failed because there was nothing to do. For example: 3420// 3421// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 3422// specified WebACL. 3423// 3424// * You tried to remove an IP address from an IPSet, but the IP address 3425// isn't in the specified IPSet. 3426// 3427// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 3428// isn't in the specified WebACL. 3429// 3430// * You tried to add a Rule to a WebACL, but the Rule already exists in 3431// the specified WebACL. 3432// 3433// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 3434// already exists in the specified WebACL. 3435// 3436// * WAFTagOperationException 3437// 3438// * WAFTagOperationInternalErrorException 3439// 3440// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteRuleGroup 3441func (c *WAFRegional) DeleteRuleGroup(input *waf.DeleteRuleGroupInput) (*waf.DeleteRuleGroupOutput, error) { 3442 req, out := c.DeleteRuleGroupRequest(input) 3443 return out, req.Send() 3444} 3445 3446// DeleteRuleGroupWithContext is the same as DeleteRuleGroup with the addition of 3447// the ability to pass a context and additional request options. 3448// 3449// See DeleteRuleGroup for details on how to use this API operation. 3450// 3451// The context must be non-nil and will be used for request cancellation. If 3452// the context is nil a panic will occur. In the future the SDK may create 3453// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3454// for more information on using Contexts. 3455func (c *WAFRegional) DeleteRuleGroupWithContext(ctx aws.Context, input *waf.DeleteRuleGroupInput, opts ...request.Option) (*waf.DeleteRuleGroupOutput, error) { 3456 req, out := c.DeleteRuleGroupRequest(input) 3457 req.SetContext(ctx) 3458 req.ApplyOptions(opts...) 3459 return out, req.Send() 3460} 3461 3462const opDeleteSizeConstraintSet = "DeleteSizeConstraintSet" 3463 3464// DeleteSizeConstraintSetRequest generates a "aws/request.Request" representing the 3465// client's request for the DeleteSizeConstraintSet operation. The "output" return 3466// value will be populated with the request's response once the request completes 3467// successfully. 3468// 3469// Use "Send" method on the returned Request to send the API call to the service. 3470// the "output" return value is not valid until after Send returns without error. 3471// 3472// See DeleteSizeConstraintSet for more information on using the DeleteSizeConstraintSet 3473// API call, and error handling. 3474// 3475// This method is useful when you want to inject custom logic or configuration 3476// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3477// 3478// 3479// // Example sending a request using the DeleteSizeConstraintSetRequest method. 3480// req, resp := client.DeleteSizeConstraintSetRequest(params) 3481// 3482// err := req.Send() 3483// if err == nil { // resp is now filled 3484// fmt.Println(resp) 3485// } 3486// 3487// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteSizeConstraintSet 3488func (c *WAFRegional) DeleteSizeConstraintSetRequest(input *waf.DeleteSizeConstraintSetInput) (req *request.Request, output *waf.DeleteSizeConstraintSetOutput) { 3489 op := &request.Operation{ 3490 Name: opDeleteSizeConstraintSet, 3491 HTTPMethod: "POST", 3492 HTTPPath: "/", 3493 } 3494 3495 if input == nil { 3496 input = &waf.DeleteSizeConstraintSetInput{} 3497 } 3498 3499 output = &waf.DeleteSizeConstraintSetOutput{} 3500 req = c.newRequest(op, input, output) 3501 return 3502} 3503 3504// DeleteSizeConstraintSet API operation for AWS WAF Regional. 3505// 3506// 3507// This is AWS WAF Classic documentation. For more information, see AWS WAF 3508// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 3509// in the developer guide. 3510// 3511// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 3512// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 3513// With the latest version, AWS WAF has a single set of endpoints for regional 3514// and global use. 3515// 3516// Permanently deletes a SizeConstraintSet. You can't delete a SizeConstraintSet 3517// if it's still used in any Rules or if it still includes any SizeConstraint 3518// objects (any filters). 3519// 3520// If you just want to remove a SizeConstraintSet from a Rule, use UpdateRule. 3521// 3522// To permanently delete a SizeConstraintSet, perform the following steps: 3523// 3524// Update the SizeConstraintSet to remove filters, if any. For more information, 3525// see UpdateSizeConstraintSet. 3526// 3527// Use GetChangeToken to get the change token that you provide in the ChangeToken 3528// parameter of a DeleteSizeConstraintSet request. 3529// 3530// Submit a DeleteSizeConstraintSet request. 3531// 3532// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3533// with awserr.Error's Code and Message methods to get detailed information about 3534// the error. 3535// 3536// See the AWS API reference guide for AWS WAF Regional's 3537// API operation DeleteSizeConstraintSet for usage and error information. 3538// 3539// Returned Error Types: 3540// * WAFStaleDataException 3541// The operation failed because you tried to create, update, or delete an object 3542// by using a change token that has already been used. 3543// 3544// * WAFInternalErrorException 3545// The operation failed because of a system problem, even though the request 3546// was valid. Retry your request. 3547// 3548// * WAFInvalidAccountException 3549// The operation failed because you tried to create, update, or delete an object 3550// by using an invalid account identifier. 3551// 3552// * WAFNonexistentItemException 3553// The operation failed because the referenced object doesn't exist. 3554// 3555// * WAFReferencedItemException 3556// The operation failed because you tried to delete an object that is still 3557// in use. For example: 3558// 3559// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 3560// 3561// * You tried to delete a Rule that is still referenced by a WebACL. 3562// 3563// * WAFNonEmptyEntityException 3564// The operation failed because you tried to delete an object that isn't empty. 3565// For example: 3566// 3567// * You tried to delete a WebACL that still contains one or more Rule objects. 3568// 3569// * You tried to delete a Rule that still contains one or more ByteMatchSet 3570// objects or other predicates. 3571// 3572// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 3573// objects. 3574// 3575// * You tried to delete an IPSet that references one or more IP addresses. 3576// 3577// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteSizeConstraintSet 3578func (c *WAFRegional) DeleteSizeConstraintSet(input *waf.DeleteSizeConstraintSetInput) (*waf.DeleteSizeConstraintSetOutput, error) { 3579 req, out := c.DeleteSizeConstraintSetRequest(input) 3580 return out, req.Send() 3581} 3582 3583// DeleteSizeConstraintSetWithContext is the same as DeleteSizeConstraintSet with the addition of 3584// the ability to pass a context and additional request options. 3585// 3586// See DeleteSizeConstraintSet for details on how to use this API operation. 3587// 3588// The context must be non-nil and will be used for request cancellation. If 3589// the context is nil a panic will occur. In the future the SDK may create 3590// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3591// for more information on using Contexts. 3592func (c *WAFRegional) DeleteSizeConstraintSetWithContext(ctx aws.Context, input *waf.DeleteSizeConstraintSetInput, opts ...request.Option) (*waf.DeleteSizeConstraintSetOutput, error) { 3593 req, out := c.DeleteSizeConstraintSetRequest(input) 3594 req.SetContext(ctx) 3595 req.ApplyOptions(opts...) 3596 return out, req.Send() 3597} 3598 3599const opDeleteSqlInjectionMatchSet = "DeleteSqlInjectionMatchSet" 3600 3601// DeleteSqlInjectionMatchSetRequest generates a "aws/request.Request" representing the 3602// client's request for the DeleteSqlInjectionMatchSet operation. The "output" return 3603// value will be populated with the request's response once the request completes 3604// successfully. 3605// 3606// Use "Send" method on the returned Request to send the API call to the service. 3607// the "output" return value is not valid until after Send returns without error. 3608// 3609// See DeleteSqlInjectionMatchSet for more information on using the DeleteSqlInjectionMatchSet 3610// API call, and error handling. 3611// 3612// This method is useful when you want to inject custom logic or configuration 3613// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3614// 3615// 3616// // Example sending a request using the DeleteSqlInjectionMatchSetRequest method. 3617// req, resp := client.DeleteSqlInjectionMatchSetRequest(params) 3618// 3619// err := req.Send() 3620// if err == nil { // resp is now filled 3621// fmt.Println(resp) 3622// } 3623// 3624// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteSqlInjectionMatchSet 3625func (c *WAFRegional) DeleteSqlInjectionMatchSetRequest(input *waf.DeleteSqlInjectionMatchSetInput) (req *request.Request, output *waf.DeleteSqlInjectionMatchSetOutput) { 3626 op := &request.Operation{ 3627 Name: opDeleteSqlInjectionMatchSet, 3628 HTTPMethod: "POST", 3629 HTTPPath: "/", 3630 } 3631 3632 if input == nil { 3633 input = &waf.DeleteSqlInjectionMatchSetInput{} 3634 } 3635 3636 output = &waf.DeleteSqlInjectionMatchSetOutput{} 3637 req = c.newRequest(op, input, output) 3638 return 3639} 3640 3641// DeleteSqlInjectionMatchSet API operation for AWS WAF Regional. 3642// 3643// 3644// This is AWS WAF Classic documentation. For more information, see AWS WAF 3645// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 3646// in the developer guide. 3647// 3648// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 3649// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 3650// With the latest version, AWS WAF has a single set of endpoints for regional 3651// and global use. 3652// 3653// Permanently deletes a SqlInjectionMatchSet. You can't delete a SqlInjectionMatchSet 3654// if it's still used in any Rules or if it still contains any SqlInjectionMatchTuple 3655// objects. 3656// 3657// If you just want to remove a SqlInjectionMatchSet from a Rule, use UpdateRule. 3658// 3659// To permanently delete a SqlInjectionMatchSet from AWS WAF, perform the following 3660// steps: 3661// 3662// Update the SqlInjectionMatchSet to remove filters, if any. For more information, 3663// see UpdateSqlInjectionMatchSet. 3664// 3665// Use GetChangeToken to get the change token that you provide in the ChangeToken 3666// parameter of a DeleteSqlInjectionMatchSet request. 3667// 3668// Submit a DeleteSqlInjectionMatchSet request. 3669// 3670// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3671// with awserr.Error's Code and Message methods to get detailed information about 3672// the error. 3673// 3674// See the AWS API reference guide for AWS WAF Regional's 3675// API operation DeleteSqlInjectionMatchSet for usage and error information. 3676// 3677// Returned Error Types: 3678// * WAFInternalErrorException 3679// The operation failed because of a system problem, even though the request 3680// was valid. Retry your request. 3681// 3682// * WAFInvalidAccountException 3683// The operation failed because you tried to create, update, or delete an object 3684// by using an invalid account identifier. 3685// 3686// * WAFNonexistentItemException 3687// The operation failed because the referenced object doesn't exist. 3688// 3689// * WAFReferencedItemException 3690// The operation failed because you tried to delete an object that is still 3691// in use. For example: 3692// 3693// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 3694// 3695// * You tried to delete a Rule that is still referenced by a WebACL. 3696// 3697// * WAFStaleDataException 3698// The operation failed because you tried to create, update, or delete an object 3699// by using a change token that has already been used. 3700// 3701// * WAFNonEmptyEntityException 3702// The operation failed because you tried to delete an object that isn't empty. 3703// For example: 3704// 3705// * You tried to delete a WebACL that still contains one or more Rule objects. 3706// 3707// * You tried to delete a Rule that still contains one or more ByteMatchSet 3708// objects or other predicates. 3709// 3710// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 3711// objects. 3712// 3713// * You tried to delete an IPSet that references one or more IP addresses. 3714// 3715// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteSqlInjectionMatchSet 3716func (c *WAFRegional) DeleteSqlInjectionMatchSet(input *waf.DeleteSqlInjectionMatchSetInput) (*waf.DeleteSqlInjectionMatchSetOutput, error) { 3717 req, out := c.DeleteSqlInjectionMatchSetRequest(input) 3718 return out, req.Send() 3719} 3720 3721// DeleteSqlInjectionMatchSetWithContext is the same as DeleteSqlInjectionMatchSet with the addition of 3722// the ability to pass a context and additional request options. 3723// 3724// See DeleteSqlInjectionMatchSet for details on how to use this API operation. 3725// 3726// The context must be non-nil and will be used for request cancellation. If 3727// the context is nil a panic will occur. In the future the SDK may create 3728// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3729// for more information on using Contexts. 3730func (c *WAFRegional) DeleteSqlInjectionMatchSetWithContext(ctx aws.Context, input *waf.DeleteSqlInjectionMatchSetInput, opts ...request.Option) (*waf.DeleteSqlInjectionMatchSetOutput, error) { 3731 req, out := c.DeleteSqlInjectionMatchSetRequest(input) 3732 req.SetContext(ctx) 3733 req.ApplyOptions(opts...) 3734 return out, req.Send() 3735} 3736 3737const opDeleteWebACL = "DeleteWebACL" 3738 3739// DeleteWebACLRequest generates a "aws/request.Request" representing the 3740// client's request for the DeleteWebACL operation. The "output" return 3741// value will be populated with the request's response once the request completes 3742// successfully. 3743// 3744// Use "Send" method on the returned Request to send the API call to the service. 3745// the "output" return value is not valid until after Send returns without error. 3746// 3747// See DeleteWebACL for more information on using the DeleteWebACL 3748// API call, and error handling. 3749// 3750// This method is useful when you want to inject custom logic or configuration 3751// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3752// 3753// 3754// // Example sending a request using the DeleteWebACLRequest method. 3755// req, resp := client.DeleteWebACLRequest(params) 3756// 3757// err := req.Send() 3758// if err == nil { // resp is now filled 3759// fmt.Println(resp) 3760// } 3761// 3762// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteWebACL 3763func (c *WAFRegional) DeleteWebACLRequest(input *waf.DeleteWebACLInput) (req *request.Request, output *waf.DeleteWebACLOutput) { 3764 op := &request.Operation{ 3765 Name: opDeleteWebACL, 3766 HTTPMethod: "POST", 3767 HTTPPath: "/", 3768 } 3769 3770 if input == nil { 3771 input = &waf.DeleteWebACLInput{} 3772 } 3773 3774 output = &waf.DeleteWebACLOutput{} 3775 req = c.newRequest(op, input, output) 3776 return 3777} 3778 3779// DeleteWebACL API operation for AWS WAF Regional. 3780// 3781// 3782// This is AWS WAF Classic documentation. For more information, see AWS WAF 3783// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 3784// in the developer guide. 3785// 3786// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 3787// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 3788// With the latest version, AWS WAF has a single set of endpoints for regional 3789// and global use. 3790// 3791// Permanently deletes a WebACL. You can't delete a WebACL if it still contains 3792// any Rules. 3793// 3794// To delete a WebACL, perform the following steps: 3795// 3796// Update the WebACL to remove Rules, if any. For more information, see UpdateWebACL. 3797// 3798// Use GetChangeToken to get the change token that you provide in the ChangeToken 3799// parameter of a DeleteWebACL request. 3800// 3801// Submit a DeleteWebACL request. 3802// 3803// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3804// with awserr.Error's Code and Message methods to get detailed information about 3805// the error. 3806// 3807// See the AWS API reference guide for AWS WAF Regional's 3808// API operation DeleteWebACL for usage and error information. 3809// 3810// Returned Error Types: 3811// * WAFStaleDataException 3812// The operation failed because you tried to create, update, or delete an object 3813// by using a change token that has already been used. 3814// 3815// * WAFInternalErrorException 3816// The operation failed because of a system problem, even though the request 3817// was valid. Retry your request. 3818// 3819// * WAFInvalidAccountException 3820// The operation failed because you tried to create, update, or delete an object 3821// by using an invalid account identifier. 3822// 3823// * WAFNonexistentItemException 3824// The operation failed because the referenced object doesn't exist. 3825// 3826// * WAFReferencedItemException 3827// The operation failed because you tried to delete an object that is still 3828// in use. For example: 3829// 3830// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 3831// 3832// * You tried to delete a Rule that is still referenced by a WebACL. 3833// 3834// * WAFNonEmptyEntityException 3835// The operation failed because you tried to delete an object that isn't empty. 3836// For example: 3837// 3838// * You tried to delete a WebACL that still contains one or more Rule objects. 3839// 3840// * You tried to delete a Rule that still contains one or more ByteMatchSet 3841// objects or other predicates. 3842// 3843// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 3844// objects. 3845// 3846// * You tried to delete an IPSet that references one or more IP addresses. 3847// 3848// * WAFTagOperationException 3849// 3850// * WAFTagOperationInternalErrorException 3851// 3852// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteWebACL 3853func (c *WAFRegional) DeleteWebACL(input *waf.DeleteWebACLInput) (*waf.DeleteWebACLOutput, error) { 3854 req, out := c.DeleteWebACLRequest(input) 3855 return out, req.Send() 3856} 3857 3858// DeleteWebACLWithContext is the same as DeleteWebACL with the addition of 3859// the ability to pass a context and additional request options. 3860// 3861// See DeleteWebACL for details on how to use this API operation. 3862// 3863// The context must be non-nil and will be used for request cancellation. If 3864// the context is nil a panic will occur. In the future the SDK may create 3865// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 3866// for more information on using Contexts. 3867func (c *WAFRegional) DeleteWebACLWithContext(ctx aws.Context, input *waf.DeleteWebACLInput, opts ...request.Option) (*waf.DeleteWebACLOutput, error) { 3868 req, out := c.DeleteWebACLRequest(input) 3869 req.SetContext(ctx) 3870 req.ApplyOptions(opts...) 3871 return out, req.Send() 3872} 3873 3874const opDeleteXssMatchSet = "DeleteXssMatchSet" 3875 3876// DeleteXssMatchSetRequest generates a "aws/request.Request" representing the 3877// client's request for the DeleteXssMatchSet operation. The "output" return 3878// value will be populated with the request's response once the request completes 3879// successfully. 3880// 3881// Use "Send" method on the returned Request to send the API call to the service. 3882// the "output" return value is not valid until after Send returns without error. 3883// 3884// See DeleteXssMatchSet for more information on using the DeleteXssMatchSet 3885// API call, and error handling. 3886// 3887// This method is useful when you want to inject custom logic or configuration 3888// into the SDK's request lifecycle. Such as custom headers, or retry logic. 3889// 3890// 3891// // Example sending a request using the DeleteXssMatchSetRequest method. 3892// req, resp := client.DeleteXssMatchSetRequest(params) 3893// 3894// err := req.Send() 3895// if err == nil { // resp is now filled 3896// fmt.Println(resp) 3897// } 3898// 3899// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteXssMatchSet 3900func (c *WAFRegional) DeleteXssMatchSetRequest(input *waf.DeleteXssMatchSetInput) (req *request.Request, output *waf.DeleteXssMatchSetOutput) { 3901 op := &request.Operation{ 3902 Name: opDeleteXssMatchSet, 3903 HTTPMethod: "POST", 3904 HTTPPath: "/", 3905 } 3906 3907 if input == nil { 3908 input = &waf.DeleteXssMatchSetInput{} 3909 } 3910 3911 output = &waf.DeleteXssMatchSetOutput{} 3912 req = c.newRequest(op, input, output) 3913 return 3914} 3915 3916// DeleteXssMatchSet API operation for AWS WAF Regional. 3917// 3918// 3919// This is AWS WAF Classic documentation. For more information, see AWS WAF 3920// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 3921// in the developer guide. 3922// 3923// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 3924// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 3925// With the latest version, AWS WAF has a single set of endpoints for regional 3926// and global use. 3927// 3928// Permanently deletes an XssMatchSet. You can't delete an XssMatchSet if it's 3929// still used in any Rules or if it still contains any XssMatchTuple objects. 3930// 3931// If you just want to remove an XssMatchSet from a Rule, use UpdateRule. 3932// 3933// To permanently delete an XssMatchSet from AWS WAF, perform the following 3934// steps: 3935// 3936// Update the XssMatchSet to remove filters, if any. For more information, see 3937// UpdateXssMatchSet. 3938// 3939// Use GetChangeToken to get the change token that you provide in the ChangeToken 3940// parameter of a DeleteXssMatchSet request. 3941// 3942// Submit a DeleteXssMatchSet request. 3943// 3944// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 3945// with awserr.Error's Code and Message methods to get detailed information about 3946// the error. 3947// 3948// See the AWS API reference guide for AWS WAF Regional's 3949// API operation DeleteXssMatchSet for usage and error information. 3950// 3951// Returned Error Types: 3952// * WAFInternalErrorException 3953// The operation failed because of a system problem, even though the request 3954// was valid. Retry your request. 3955// 3956// * WAFInvalidAccountException 3957// The operation failed because you tried to create, update, or delete an object 3958// by using an invalid account identifier. 3959// 3960// * WAFNonexistentItemException 3961// The operation failed because the referenced object doesn't exist. 3962// 3963// * WAFReferencedItemException 3964// The operation failed because you tried to delete an object that is still 3965// in use. For example: 3966// 3967// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 3968// 3969// * You tried to delete a Rule that is still referenced by a WebACL. 3970// 3971// * WAFStaleDataException 3972// The operation failed because you tried to create, update, or delete an object 3973// by using a change token that has already been used. 3974// 3975// * WAFNonEmptyEntityException 3976// The operation failed because you tried to delete an object that isn't empty. 3977// For example: 3978// 3979// * You tried to delete a WebACL that still contains one or more Rule objects. 3980// 3981// * You tried to delete a Rule that still contains one or more ByteMatchSet 3982// objects or other predicates. 3983// 3984// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 3985// objects. 3986// 3987// * You tried to delete an IPSet that references one or more IP addresses. 3988// 3989// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DeleteXssMatchSet 3990func (c *WAFRegional) DeleteXssMatchSet(input *waf.DeleteXssMatchSetInput) (*waf.DeleteXssMatchSetOutput, error) { 3991 req, out := c.DeleteXssMatchSetRequest(input) 3992 return out, req.Send() 3993} 3994 3995// DeleteXssMatchSetWithContext is the same as DeleteXssMatchSet with the addition of 3996// the ability to pass a context and additional request options. 3997// 3998// See DeleteXssMatchSet for details on how to use this API operation. 3999// 4000// The context must be non-nil and will be used for request cancellation. If 4001// the context is nil a panic will occur. In the future the SDK may create 4002// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4003// for more information on using Contexts. 4004func (c *WAFRegional) DeleteXssMatchSetWithContext(ctx aws.Context, input *waf.DeleteXssMatchSetInput, opts ...request.Option) (*waf.DeleteXssMatchSetOutput, error) { 4005 req, out := c.DeleteXssMatchSetRequest(input) 4006 req.SetContext(ctx) 4007 req.ApplyOptions(opts...) 4008 return out, req.Send() 4009} 4010 4011const opDisassociateWebACL = "DisassociateWebACL" 4012 4013// DisassociateWebACLRequest generates a "aws/request.Request" representing the 4014// client's request for the DisassociateWebACL operation. The "output" return 4015// value will be populated with the request's response once the request completes 4016// successfully. 4017// 4018// Use "Send" method on the returned Request to send the API call to the service. 4019// the "output" return value is not valid until after Send returns without error. 4020// 4021// See DisassociateWebACL for more information on using the DisassociateWebACL 4022// API call, and error handling. 4023// 4024// This method is useful when you want to inject custom logic or configuration 4025// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4026// 4027// 4028// // Example sending a request using the DisassociateWebACLRequest method. 4029// req, resp := client.DisassociateWebACLRequest(params) 4030// 4031// err := req.Send() 4032// if err == nil { // resp is now filled 4033// fmt.Println(resp) 4034// } 4035// 4036// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DisassociateWebACL 4037func (c *WAFRegional) DisassociateWebACLRequest(input *DisassociateWebACLInput) (req *request.Request, output *DisassociateWebACLOutput) { 4038 op := &request.Operation{ 4039 Name: opDisassociateWebACL, 4040 HTTPMethod: "POST", 4041 HTTPPath: "/", 4042 } 4043 4044 if input == nil { 4045 input = &DisassociateWebACLInput{} 4046 } 4047 4048 output = &DisassociateWebACLOutput{} 4049 req = c.newRequest(op, input, output) 4050 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 4051 return 4052} 4053 4054// DisassociateWebACL API operation for AWS WAF Regional. 4055// 4056// 4057// This is AWS WAF Classic Regional documentation. For more information, see 4058// AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4059// in the developer guide. 4060// 4061// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4062// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4063// With the latest version, AWS WAF has a single set of endpoints for regional 4064// and global use. 4065// 4066// Removes a web ACL from the specified resource, either an application load 4067// balancer or Amazon API Gateway stage. 4068// 4069// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4070// with awserr.Error's Code and Message methods to get detailed information about 4071// the error. 4072// 4073// See the AWS API reference guide for AWS WAF Regional's 4074// API operation DisassociateWebACL for usage and error information. 4075// 4076// Returned Error Types: 4077// * WAFInternalErrorException 4078// The operation failed because of a system problem, even though the request 4079// was valid. Retry your request. 4080// 4081// * WAFInvalidAccountException 4082// The operation failed because you tried to create, update, or delete an object 4083// by using an invalid account identifier. 4084// 4085// * WAFInvalidParameterException 4086// The operation failed because AWS WAF didn't recognize a parameter in the 4087// request. For example: 4088// 4089// * You specified an invalid parameter name. 4090// 4091// * You specified an invalid value. 4092// 4093// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 4094// using an action other than INSERT or DELETE. 4095// 4096// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 4097// BLOCK, or COUNT. 4098// 4099// * You tried to create a RateBasedRule with a RateKey value other than 4100// IP. 4101// 4102// * You tried to update a WebACL with a WafAction Type other than ALLOW, 4103// BLOCK, or COUNT. 4104// 4105// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 4106// HEADER, METHOD, QUERY_STRING, URI, or BODY. 4107// 4108// * You tried to update a ByteMatchSet with a Field of HEADER but no value 4109// for Data. 4110// 4111// * Your request references an ARN that is malformed, or corresponds to 4112// a resource with which a web ACL cannot be associated. 4113// 4114// * WAFNonexistentItemException 4115// The operation failed because the referenced object doesn't exist. 4116// 4117// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/DisassociateWebACL 4118func (c *WAFRegional) DisassociateWebACL(input *DisassociateWebACLInput) (*DisassociateWebACLOutput, error) { 4119 req, out := c.DisassociateWebACLRequest(input) 4120 return out, req.Send() 4121} 4122 4123// DisassociateWebACLWithContext is the same as DisassociateWebACL with the addition of 4124// the ability to pass a context and additional request options. 4125// 4126// See DisassociateWebACL for details on how to use this API operation. 4127// 4128// The context must be non-nil and will be used for request cancellation. If 4129// the context is nil a panic will occur. In the future the SDK may create 4130// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4131// for more information on using Contexts. 4132func (c *WAFRegional) DisassociateWebACLWithContext(ctx aws.Context, input *DisassociateWebACLInput, opts ...request.Option) (*DisassociateWebACLOutput, error) { 4133 req, out := c.DisassociateWebACLRequest(input) 4134 req.SetContext(ctx) 4135 req.ApplyOptions(opts...) 4136 return out, req.Send() 4137} 4138 4139const opGetByteMatchSet = "GetByteMatchSet" 4140 4141// GetByteMatchSetRequest generates a "aws/request.Request" representing the 4142// client's request for the GetByteMatchSet operation. The "output" return 4143// value will be populated with the request's response once the request completes 4144// successfully. 4145// 4146// Use "Send" method on the returned Request to send the API call to the service. 4147// the "output" return value is not valid until after Send returns without error. 4148// 4149// See GetByteMatchSet for more information on using the GetByteMatchSet 4150// API call, and error handling. 4151// 4152// This method is useful when you want to inject custom logic or configuration 4153// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4154// 4155// 4156// // Example sending a request using the GetByteMatchSetRequest method. 4157// req, resp := client.GetByteMatchSetRequest(params) 4158// 4159// err := req.Send() 4160// if err == nil { // resp is now filled 4161// fmt.Println(resp) 4162// } 4163// 4164// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetByteMatchSet 4165func (c *WAFRegional) GetByteMatchSetRequest(input *waf.GetByteMatchSetInput) (req *request.Request, output *waf.GetByteMatchSetOutput) { 4166 op := &request.Operation{ 4167 Name: opGetByteMatchSet, 4168 HTTPMethod: "POST", 4169 HTTPPath: "/", 4170 } 4171 4172 if input == nil { 4173 input = &waf.GetByteMatchSetInput{} 4174 } 4175 4176 output = &waf.GetByteMatchSetOutput{} 4177 req = c.newRequest(op, input, output) 4178 return 4179} 4180 4181// GetByteMatchSet API operation for AWS WAF Regional. 4182// 4183// 4184// This is AWS WAF Classic documentation. For more information, see AWS WAF 4185// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4186// in the developer guide. 4187// 4188// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4189// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4190// With the latest version, AWS WAF has a single set of endpoints for regional 4191// and global use. 4192// 4193// Returns the ByteMatchSet specified by ByteMatchSetId. 4194// 4195// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4196// with awserr.Error's Code and Message methods to get detailed information about 4197// the error. 4198// 4199// See the AWS API reference guide for AWS WAF Regional's 4200// API operation GetByteMatchSet for usage and error information. 4201// 4202// Returned Error Types: 4203// * WAFInternalErrorException 4204// The operation failed because of a system problem, even though the request 4205// was valid. Retry your request. 4206// 4207// * WAFInvalidAccountException 4208// The operation failed because you tried to create, update, or delete an object 4209// by using an invalid account identifier. 4210// 4211// * WAFNonexistentItemException 4212// The operation failed because the referenced object doesn't exist. 4213// 4214// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetByteMatchSet 4215func (c *WAFRegional) GetByteMatchSet(input *waf.GetByteMatchSetInput) (*waf.GetByteMatchSetOutput, error) { 4216 req, out := c.GetByteMatchSetRequest(input) 4217 return out, req.Send() 4218} 4219 4220// GetByteMatchSetWithContext is the same as GetByteMatchSet with the addition of 4221// the ability to pass a context and additional request options. 4222// 4223// See GetByteMatchSet for details on how to use this API operation. 4224// 4225// The context must be non-nil and will be used for request cancellation. If 4226// the context is nil a panic will occur. In the future the SDK may create 4227// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4228// for more information on using Contexts. 4229func (c *WAFRegional) GetByteMatchSetWithContext(ctx aws.Context, input *waf.GetByteMatchSetInput, opts ...request.Option) (*waf.GetByteMatchSetOutput, error) { 4230 req, out := c.GetByteMatchSetRequest(input) 4231 req.SetContext(ctx) 4232 req.ApplyOptions(opts...) 4233 return out, req.Send() 4234} 4235 4236const opGetChangeToken = "GetChangeToken" 4237 4238// GetChangeTokenRequest generates a "aws/request.Request" representing the 4239// client's request for the GetChangeToken operation. The "output" return 4240// value will be populated with the request's response once the request completes 4241// successfully. 4242// 4243// Use "Send" method on the returned Request to send the API call to the service. 4244// the "output" return value is not valid until after Send returns without error. 4245// 4246// See GetChangeToken for more information on using the GetChangeToken 4247// API call, and error handling. 4248// 4249// This method is useful when you want to inject custom logic or configuration 4250// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4251// 4252// 4253// // Example sending a request using the GetChangeTokenRequest method. 4254// req, resp := client.GetChangeTokenRequest(params) 4255// 4256// err := req.Send() 4257// if err == nil { // resp is now filled 4258// fmt.Println(resp) 4259// } 4260// 4261// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetChangeToken 4262func (c *WAFRegional) GetChangeTokenRequest(input *waf.GetChangeTokenInput) (req *request.Request, output *waf.GetChangeTokenOutput) { 4263 op := &request.Operation{ 4264 Name: opGetChangeToken, 4265 HTTPMethod: "POST", 4266 HTTPPath: "/", 4267 } 4268 4269 if input == nil { 4270 input = &waf.GetChangeTokenInput{} 4271 } 4272 4273 output = &waf.GetChangeTokenOutput{} 4274 req = c.newRequest(op, input, output) 4275 return 4276} 4277 4278// GetChangeToken API operation for AWS WAF Regional. 4279// 4280// 4281// This is AWS WAF Classic documentation. For more information, see AWS WAF 4282// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4283// in the developer guide. 4284// 4285// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4286// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4287// With the latest version, AWS WAF has a single set of endpoints for regional 4288// and global use. 4289// 4290// When you want to create, update, or delete AWS WAF objects, get a change 4291// token and include the change token in the create, update, or delete request. 4292// Change tokens ensure that your application doesn't submit conflicting requests 4293// to AWS WAF. 4294// 4295// Each create, update, or delete request must use a unique change token. If 4296// your application submits a GetChangeToken request and then submits a second 4297// GetChangeToken request before submitting a create, update, or delete request, 4298// the second GetChangeToken request returns the same value as the first GetChangeToken 4299// request. 4300// 4301// When you use a change token in a create, update, or delete request, the status 4302// of the change token changes to PENDING, which indicates that AWS WAF is propagating 4303// the change to all AWS WAF servers. Use GetChangeTokenStatus to determine 4304// the status of your change token. 4305// 4306// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4307// with awserr.Error's Code and Message methods to get detailed information about 4308// the error. 4309// 4310// See the AWS API reference guide for AWS WAF Regional's 4311// API operation GetChangeToken for usage and error information. 4312// 4313// Returned Error Types: 4314// * WAFInternalErrorException 4315// The operation failed because of a system problem, even though the request 4316// was valid. Retry your request. 4317// 4318// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetChangeToken 4319func (c *WAFRegional) GetChangeToken(input *waf.GetChangeTokenInput) (*waf.GetChangeTokenOutput, error) { 4320 req, out := c.GetChangeTokenRequest(input) 4321 return out, req.Send() 4322} 4323 4324// GetChangeTokenWithContext is the same as GetChangeToken with the addition of 4325// the ability to pass a context and additional request options. 4326// 4327// See GetChangeToken for details on how to use this API operation. 4328// 4329// The context must be non-nil and will be used for request cancellation. If 4330// the context is nil a panic will occur. In the future the SDK may create 4331// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4332// for more information on using Contexts. 4333func (c *WAFRegional) GetChangeTokenWithContext(ctx aws.Context, input *waf.GetChangeTokenInput, opts ...request.Option) (*waf.GetChangeTokenOutput, error) { 4334 req, out := c.GetChangeTokenRequest(input) 4335 req.SetContext(ctx) 4336 req.ApplyOptions(opts...) 4337 return out, req.Send() 4338} 4339 4340const opGetChangeTokenStatus = "GetChangeTokenStatus" 4341 4342// GetChangeTokenStatusRequest generates a "aws/request.Request" representing the 4343// client's request for the GetChangeTokenStatus operation. The "output" return 4344// value will be populated with the request's response once the request completes 4345// successfully. 4346// 4347// Use "Send" method on the returned Request to send the API call to the service. 4348// the "output" return value is not valid until after Send returns without error. 4349// 4350// See GetChangeTokenStatus for more information on using the GetChangeTokenStatus 4351// API call, and error handling. 4352// 4353// This method is useful when you want to inject custom logic or configuration 4354// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4355// 4356// 4357// // Example sending a request using the GetChangeTokenStatusRequest method. 4358// req, resp := client.GetChangeTokenStatusRequest(params) 4359// 4360// err := req.Send() 4361// if err == nil { // resp is now filled 4362// fmt.Println(resp) 4363// } 4364// 4365// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetChangeTokenStatus 4366func (c *WAFRegional) GetChangeTokenStatusRequest(input *waf.GetChangeTokenStatusInput) (req *request.Request, output *waf.GetChangeTokenStatusOutput) { 4367 op := &request.Operation{ 4368 Name: opGetChangeTokenStatus, 4369 HTTPMethod: "POST", 4370 HTTPPath: "/", 4371 } 4372 4373 if input == nil { 4374 input = &waf.GetChangeTokenStatusInput{} 4375 } 4376 4377 output = &waf.GetChangeTokenStatusOutput{} 4378 req = c.newRequest(op, input, output) 4379 return 4380} 4381 4382// GetChangeTokenStatus API operation for AWS WAF Regional. 4383// 4384// 4385// This is AWS WAF Classic documentation. For more information, see AWS WAF 4386// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4387// in the developer guide. 4388// 4389// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4390// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4391// With the latest version, AWS WAF has a single set of endpoints for regional 4392// and global use. 4393// 4394// Returns the status of a ChangeToken that you got by calling GetChangeToken. 4395// ChangeTokenStatus is one of the following values: 4396// 4397// * PROVISIONED: You requested the change token by calling GetChangeToken, 4398// but you haven't used it yet in a call to create, update, or delete an 4399// AWS WAF object. 4400// 4401// * PENDING: AWS WAF is propagating the create, update, or delete request 4402// to all AWS WAF servers. 4403// 4404// * INSYNC: Propagation is complete. 4405// 4406// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4407// with awserr.Error's Code and Message methods to get detailed information about 4408// the error. 4409// 4410// See the AWS API reference guide for AWS WAF Regional's 4411// API operation GetChangeTokenStatus for usage and error information. 4412// 4413// Returned Error Types: 4414// * WAFNonexistentItemException 4415// The operation failed because the referenced object doesn't exist. 4416// 4417// * WAFInternalErrorException 4418// The operation failed because of a system problem, even though the request 4419// was valid. Retry your request. 4420// 4421// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetChangeTokenStatus 4422func (c *WAFRegional) GetChangeTokenStatus(input *waf.GetChangeTokenStatusInput) (*waf.GetChangeTokenStatusOutput, error) { 4423 req, out := c.GetChangeTokenStatusRequest(input) 4424 return out, req.Send() 4425} 4426 4427// GetChangeTokenStatusWithContext is the same as GetChangeTokenStatus with the addition of 4428// the ability to pass a context and additional request options. 4429// 4430// See GetChangeTokenStatus for details on how to use this API operation. 4431// 4432// The context must be non-nil and will be used for request cancellation. If 4433// the context is nil a panic will occur. In the future the SDK may create 4434// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4435// for more information on using Contexts. 4436func (c *WAFRegional) GetChangeTokenStatusWithContext(ctx aws.Context, input *waf.GetChangeTokenStatusInput, opts ...request.Option) (*waf.GetChangeTokenStatusOutput, error) { 4437 req, out := c.GetChangeTokenStatusRequest(input) 4438 req.SetContext(ctx) 4439 req.ApplyOptions(opts...) 4440 return out, req.Send() 4441} 4442 4443const opGetGeoMatchSet = "GetGeoMatchSet" 4444 4445// GetGeoMatchSetRequest generates a "aws/request.Request" representing the 4446// client's request for the GetGeoMatchSet operation. The "output" return 4447// value will be populated with the request's response once the request completes 4448// successfully. 4449// 4450// Use "Send" method on the returned Request to send the API call to the service. 4451// the "output" return value is not valid until after Send returns without error. 4452// 4453// See GetGeoMatchSet for more information on using the GetGeoMatchSet 4454// API call, and error handling. 4455// 4456// This method is useful when you want to inject custom logic or configuration 4457// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4458// 4459// 4460// // Example sending a request using the GetGeoMatchSetRequest method. 4461// req, resp := client.GetGeoMatchSetRequest(params) 4462// 4463// err := req.Send() 4464// if err == nil { // resp is now filled 4465// fmt.Println(resp) 4466// } 4467// 4468// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetGeoMatchSet 4469func (c *WAFRegional) GetGeoMatchSetRequest(input *waf.GetGeoMatchSetInput) (req *request.Request, output *waf.GetGeoMatchSetOutput) { 4470 op := &request.Operation{ 4471 Name: opGetGeoMatchSet, 4472 HTTPMethod: "POST", 4473 HTTPPath: "/", 4474 } 4475 4476 if input == nil { 4477 input = &waf.GetGeoMatchSetInput{} 4478 } 4479 4480 output = &waf.GetGeoMatchSetOutput{} 4481 req = c.newRequest(op, input, output) 4482 return 4483} 4484 4485// GetGeoMatchSet API operation for AWS WAF Regional. 4486// 4487// 4488// This is AWS WAF Classic documentation. For more information, see AWS WAF 4489// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4490// in the developer guide. 4491// 4492// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4493// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4494// With the latest version, AWS WAF has a single set of endpoints for regional 4495// and global use. 4496// 4497// Returns the GeoMatchSet that is specified by GeoMatchSetId. 4498// 4499// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4500// with awserr.Error's Code and Message methods to get detailed information about 4501// the error. 4502// 4503// See the AWS API reference guide for AWS WAF Regional's 4504// API operation GetGeoMatchSet for usage and error information. 4505// 4506// Returned Error Types: 4507// * WAFInternalErrorException 4508// The operation failed because of a system problem, even though the request 4509// was valid. Retry your request. 4510// 4511// * WAFInvalidAccountException 4512// The operation failed because you tried to create, update, or delete an object 4513// by using an invalid account identifier. 4514// 4515// * WAFNonexistentItemException 4516// The operation failed because the referenced object doesn't exist. 4517// 4518// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetGeoMatchSet 4519func (c *WAFRegional) GetGeoMatchSet(input *waf.GetGeoMatchSetInput) (*waf.GetGeoMatchSetOutput, error) { 4520 req, out := c.GetGeoMatchSetRequest(input) 4521 return out, req.Send() 4522} 4523 4524// GetGeoMatchSetWithContext is the same as GetGeoMatchSet with the addition of 4525// the ability to pass a context and additional request options. 4526// 4527// See GetGeoMatchSet for details on how to use this API operation. 4528// 4529// The context must be non-nil and will be used for request cancellation. If 4530// the context is nil a panic will occur. In the future the SDK may create 4531// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4532// for more information on using Contexts. 4533func (c *WAFRegional) GetGeoMatchSetWithContext(ctx aws.Context, input *waf.GetGeoMatchSetInput, opts ...request.Option) (*waf.GetGeoMatchSetOutput, error) { 4534 req, out := c.GetGeoMatchSetRequest(input) 4535 req.SetContext(ctx) 4536 req.ApplyOptions(opts...) 4537 return out, req.Send() 4538} 4539 4540const opGetIPSet = "GetIPSet" 4541 4542// GetIPSetRequest generates a "aws/request.Request" representing the 4543// client's request for the GetIPSet operation. The "output" return 4544// value will be populated with the request's response once the request completes 4545// successfully. 4546// 4547// Use "Send" method on the returned Request to send the API call to the service. 4548// the "output" return value is not valid until after Send returns without error. 4549// 4550// See GetIPSet for more information on using the GetIPSet 4551// API call, and error handling. 4552// 4553// This method is useful when you want to inject custom logic or configuration 4554// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4555// 4556// 4557// // Example sending a request using the GetIPSetRequest method. 4558// req, resp := client.GetIPSetRequest(params) 4559// 4560// err := req.Send() 4561// if err == nil { // resp is now filled 4562// fmt.Println(resp) 4563// } 4564// 4565// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetIPSet 4566func (c *WAFRegional) GetIPSetRequest(input *waf.GetIPSetInput) (req *request.Request, output *waf.GetIPSetOutput) { 4567 op := &request.Operation{ 4568 Name: opGetIPSet, 4569 HTTPMethod: "POST", 4570 HTTPPath: "/", 4571 } 4572 4573 if input == nil { 4574 input = &waf.GetIPSetInput{} 4575 } 4576 4577 output = &waf.GetIPSetOutput{} 4578 req = c.newRequest(op, input, output) 4579 return 4580} 4581 4582// GetIPSet API operation for AWS WAF Regional. 4583// 4584// 4585// This is AWS WAF Classic documentation. For more information, see AWS WAF 4586// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4587// in the developer guide. 4588// 4589// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4590// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4591// With the latest version, AWS WAF has a single set of endpoints for regional 4592// and global use. 4593// 4594// Returns the IPSet that is specified by IPSetId. 4595// 4596// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4597// with awserr.Error's Code and Message methods to get detailed information about 4598// the error. 4599// 4600// See the AWS API reference guide for AWS WAF Regional's 4601// API operation GetIPSet for usage and error information. 4602// 4603// Returned Error Types: 4604// * WAFInternalErrorException 4605// The operation failed because of a system problem, even though the request 4606// was valid. Retry your request. 4607// 4608// * WAFInvalidAccountException 4609// The operation failed because you tried to create, update, or delete an object 4610// by using an invalid account identifier. 4611// 4612// * WAFNonexistentItemException 4613// The operation failed because the referenced object doesn't exist. 4614// 4615// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetIPSet 4616func (c *WAFRegional) GetIPSet(input *waf.GetIPSetInput) (*waf.GetIPSetOutput, error) { 4617 req, out := c.GetIPSetRequest(input) 4618 return out, req.Send() 4619} 4620 4621// GetIPSetWithContext is the same as GetIPSet with the addition of 4622// the ability to pass a context and additional request options. 4623// 4624// See GetIPSet for details on how to use this API operation. 4625// 4626// The context must be non-nil and will be used for request cancellation. If 4627// the context is nil a panic will occur. In the future the SDK may create 4628// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4629// for more information on using Contexts. 4630func (c *WAFRegional) GetIPSetWithContext(ctx aws.Context, input *waf.GetIPSetInput, opts ...request.Option) (*waf.GetIPSetOutput, error) { 4631 req, out := c.GetIPSetRequest(input) 4632 req.SetContext(ctx) 4633 req.ApplyOptions(opts...) 4634 return out, req.Send() 4635} 4636 4637const opGetLoggingConfiguration = "GetLoggingConfiguration" 4638 4639// GetLoggingConfigurationRequest generates a "aws/request.Request" representing the 4640// client's request for the GetLoggingConfiguration operation. The "output" return 4641// value will be populated with the request's response once the request completes 4642// successfully. 4643// 4644// Use "Send" method on the returned Request to send the API call to the service. 4645// the "output" return value is not valid until after Send returns without error. 4646// 4647// See GetLoggingConfiguration for more information on using the GetLoggingConfiguration 4648// API call, and error handling. 4649// 4650// This method is useful when you want to inject custom logic or configuration 4651// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4652// 4653// 4654// // Example sending a request using the GetLoggingConfigurationRequest method. 4655// req, resp := client.GetLoggingConfigurationRequest(params) 4656// 4657// err := req.Send() 4658// if err == nil { // resp is now filled 4659// fmt.Println(resp) 4660// } 4661// 4662// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetLoggingConfiguration 4663func (c *WAFRegional) GetLoggingConfigurationRequest(input *waf.GetLoggingConfigurationInput) (req *request.Request, output *waf.GetLoggingConfigurationOutput) { 4664 op := &request.Operation{ 4665 Name: opGetLoggingConfiguration, 4666 HTTPMethod: "POST", 4667 HTTPPath: "/", 4668 } 4669 4670 if input == nil { 4671 input = &waf.GetLoggingConfigurationInput{} 4672 } 4673 4674 output = &waf.GetLoggingConfigurationOutput{} 4675 req = c.newRequest(op, input, output) 4676 return 4677} 4678 4679// GetLoggingConfiguration API operation for AWS WAF Regional. 4680// 4681// 4682// This is AWS WAF Classic documentation. For more information, see AWS WAF 4683// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4684// in the developer guide. 4685// 4686// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4687// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4688// With the latest version, AWS WAF has a single set of endpoints for regional 4689// and global use. 4690// 4691// Returns the LoggingConfiguration for the specified web ACL. 4692// 4693// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4694// with awserr.Error's Code and Message methods to get detailed information about 4695// the error. 4696// 4697// See the AWS API reference guide for AWS WAF Regional's 4698// API operation GetLoggingConfiguration for usage and error information. 4699// 4700// Returned Error Types: 4701// * WAFInternalErrorException 4702// The operation failed because of a system problem, even though the request 4703// was valid. Retry your request. 4704// 4705// * WAFNonexistentItemException 4706// The operation failed because the referenced object doesn't exist. 4707// 4708// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetLoggingConfiguration 4709func (c *WAFRegional) GetLoggingConfiguration(input *waf.GetLoggingConfigurationInput) (*waf.GetLoggingConfigurationOutput, error) { 4710 req, out := c.GetLoggingConfigurationRequest(input) 4711 return out, req.Send() 4712} 4713 4714// GetLoggingConfigurationWithContext is the same as GetLoggingConfiguration with the addition of 4715// the ability to pass a context and additional request options. 4716// 4717// See GetLoggingConfiguration for details on how to use this API operation. 4718// 4719// The context must be non-nil and will be used for request cancellation. If 4720// the context is nil a panic will occur. In the future the SDK may create 4721// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4722// for more information on using Contexts. 4723func (c *WAFRegional) GetLoggingConfigurationWithContext(ctx aws.Context, input *waf.GetLoggingConfigurationInput, opts ...request.Option) (*waf.GetLoggingConfigurationOutput, error) { 4724 req, out := c.GetLoggingConfigurationRequest(input) 4725 req.SetContext(ctx) 4726 req.ApplyOptions(opts...) 4727 return out, req.Send() 4728} 4729 4730const opGetPermissionPolicy = "GetPermissionPolicy" 4731 4732// GetPermissionPolicyRequest generates a "aws/request.Request" representing the 4733// client's request for the GetPermissionPolicy operation. The "output" return 4734// value will be populated with the request's response once the request completes 4735// successfully. 4736// 4737// Use "Send" method on the returned Request to send the API call to the service. 4738// the "output" return value is not valid until after Send returns without error. 4739// 4740// See GetPermissionPolicy for more information on using the GetPermissionPolicy 4741// API call, and error handling. 4742// 4743// This method is useful when you want to inject custom logic or configuration 4744// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4745// 4746// 4747// // Example sending a request using the GetPermissionPolicyRequest method. 4748// req, resp := client.GetPermissionPolicyRequest(params) 4749// 4750// err := req.Send() 4751// if err == nil { // resp is now filled 4752// fmt.Println(resp) 4753// } 4754// 4755// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetPermissionPolicy 4756func (c *WAFRegional) GetPermissionPolicyRequest(input *waf.GetPermissionPolicyInput) (req *request.Request, output *waf.GetPermissionPolicyOutput) { 4757 op := &request.Operation{ 4758 Name: opGetPermissionPolicy, 4759 HTTPMethod: "POST", 4760 HTTPPath: "/", 4761 } 4762 4763 if input == nil { 4764 input = &waf.GetPermissionPolicyInput{} 4765 } 4766 4767 output = &waf.GetPermissionPolicyOutput{} 4768 req = c.newRequest(op, input, output) 4769 return 4770} 4771 4772// GetPermissionPolicy API operation for AWS WAF Regional. 4773// 4774// 4775// This is AWS WAF Classic documentation. For more information, see AWS WAF 4776// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4777// in the developer guide. 4778// 4779// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4780// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4781// With the latest version, AWS WAF has a single set of endpoints for regional 4782// and global use. 4783// 4784// Returns the IAM policy attached to the RuleGroup. 4785// 4786// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4787// with awserr.Error's Code and Message methods to get detailed information about 4788// the error. 4789// 4790// See the AWS API reference guide for AWS WAF Regional's 4791// API operation GetPermissionPolicy for usage and error information. 4792// 4793// Returned Error Types: 4794// * WAFInternalErrorException 4795// The operation failed because of a system problem, even though the request 4796// was valid. Retry your request. 4797// 4798// * WAFNonexistentItemException 4799// The operation failed because the referenced object doesn't exist. 4800// 4801// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetPermissionPolicy 4802func (c *WAFRegional) GetPermissionPolicy(input *waf.GetPermissionPolicyInput) (*waf.GetPermissionPolicyOutput, error) { 4803 req, out := c.GetPermissionPolicyRequest(input) 4804 return out, req.Send() 4805} 4806 4807// GetPermissionPolicyWithContext is the same as GetPermissionPolicy with the addition of 4808// the ability to pass a context and additional request options. 4809// 4810// See GetPermissionPolicy for details on how to use this API operation. 4811// 4812// The context must be non-nil and will be used for request cancellation. If 4813// the context is nil a panic will occur. In the future the SDK may create 4814// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4815// for more information on using Contexts. 4816func (c *WAFRegional) GetPermissionPolicyWithContext(ctx aws.Context, input *waf.GetPermissionPolicyInput, opts ...request.Option) (*waf.GetPermissionPolicyOutput, error) { 4817 req, out := c.GetPermissionPolicyRequest(input) 4818 req.SetContext(ctx) 4819 req.ApplyOptions(opts...) 4820 return out, req.Send() 4821} 4822 4823const opGetRateBasedRule = "GetRateBasedRule" 4824 4825// GetRateBasedRuleRequest generates a "aws/request.Request" representing the 4826// client's request for the GetRateBasedRule operation. The "output" return 4827// value will be populated with the request's response once the request completes 4828// successfully. 4829// 4830// Use "Send" method on the returned Request to send the API call to the service. 4831// the "output" return value is not valid until after Send returns without error. 4832// 4833// See GetRateBasedRule for more information on using the GetRateBasedRule 4834// API call, and error handling. 4835// 4836// This method is useful when you want to inject custom logic or configuration 4837// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4838// 4839// 4840// // Example sending a request using the GetRateBasedRuleRequest method. 4841// req, resp := client.GetRateBasedRuleRequest(params) 4842// 4843// err := req.Send() 4844// if err == nil { // resp is now filled 4845// fmt.Println(resp) 4846// } 4847// 4848// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRateBasedRule 4849func (c *WAFRegional) GetRateBasedRuleRequest(input *waf.GetRateBasedRuleInput) (req *request.Request, output *waf.GetRateBasedRuleOutput) { 4850 op := &request.Operation{ 4851 Name: opGetRateBasedRule, 4852 HTTPMethod: "POST", 4853 HTTPPath: "/", 4854 } 4855 4856 if input == nil { 4857 input = &waf.GetRateBasedRuleInput{} 4858 } 4859 4860 output = &waf.GetRateBasedRuleOutput{} 4861 req = c.newRequest(op, input, output) 4862 return 4863} 4864 4865// GetRateBasedRule API operation for AWS WAF Regional. 4866// 4867// 4868// This is AWS WAF Classic documentation. For more information, see AWS WAF 4869// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4870// in the developer guide. 4871// 4872// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4873// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4874// With the latest version, AWS WAF has a single set of endpoints for regional 4875// and global use. 4876// 4877// Returns the RateBasedRule that is specified by the RuleId that you included 4878// in the GetRateBasedRule request. 4879// 4880// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4881// with awserr.Error's Code and Message methods to get detailed information about 4882// the error. 4883// 4884// See the AWS API reference guide for AWS WAF Regional's 4885// API operation GetRateBasedRule for usage and error information. 4886// 4887// Returned Error Types: 4888// * WAFInternalErrorException 4889// The operation failed because of a system problem, even though the request 4890// was valid. Retry your request. 4891// 4892// * WAFInvalidAccountException 4893// The operation failed because you tried to create, update, or delete an object 4894// by using an invalid account identifier. 4895// 4896// * WAFNonexistentItemException 4897// The operation failed because the referenced object doesn't exist. 4898// 4899// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRateBasedRule 4900func (c *WAFRegional) GetRateBasedRule(input *waf.GetRateBasedRuleInput) (*waf.GetRateBasedRuleOutput, error) { 4901 req, out := c.GetRateBasedRuleRequest(input) 4902 return out, req.Send() 4903} 4904 4905// GetRateBasedRuleWithContext is the same as GetRateBasedRule with the addition of 4906// the ability to pass a context and additional request options. 4907// 4908// See GetRateBasedRule for details on how to use this API operation. 4909// 4910// The context must be non-nil and will be used for request cancellation. If 4911// the context is nil a panic will occur. In the future the SDK may create 4912// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 4913// for more information on using Contexts. 4914func (c *WAFRegional) GetRateBasedRuleWithContext(ctx aws.Context, input *waf.GetRateBasedRuleInput, opts ...request.Option) (*waf.GetRateBasedRuleOutput, error) { 4915 req, out := c.GetRateBasedRuleRequest(input) 4916 req.SetContext(ctx) 4917 req.ApplyOptions(opts...) 4918 return out, req.Send() 4919} 4920 4921const opGetRateBasedRuleManagedKeys = "GetRateBasedRuleManagedKeys" 4922 4923// GetRateBasedRuleManagedKeysRequest generates a "aws/request.Request" representing the 4924// client's request for the GetRateBasedRuleManagedKeys operation. The "output" return 4925// value will be populated with the request's response once the request completes 4926// successfully. 4927// 4928// Use "Send" method on the returned Request to send the API call to the service. 4929// the "output" return value is not valid until after Send returns without error. 4930// 4931// See GetRateBasedRuleManagedKeys for more information on using the GetRateBasedRuleManagedKeys 4932// API call, and error handling. 4933// 4934// This method is useful when you want to inject custom logic or configuration 4935// into the SDK's request lifecycle. Such as custom headers, or retry logic. 4936// 4937// 4938// // Example sending a request using the GetRateBasedRuleManagedKeysRequest method. 4939// req, resp := client.GetRateBasedRuleManagedKeysRequest(params) 4940// 4941// err := req.Send() 4942// if err == nil { // resp is now filled 4943// fmt.Println(resp) 4944// } 4945// 4946// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRateBasedRuleManagedKeys 4947func (c *WAFRegional) GetRateBasedRuleManagedKeysRequest(input *waf.GetRateBasedRuleManagedKeysInput) (req *request.Request, output *waf.GetRateBasedRuleManagedKeysOutput) { 4948 op := &request.Operation{ 4949 Name: opGetRateBasedRuleManagedKeys, 4950 HTTPMethod: "POST", 4951 HTTPPath: "/", 4952 } 4953 4954 if input == nil { 4955 input = &waf.GetRateBasedRuleManagedKeysInput{} 4956 } 4957 4958 output = &waf.GetRateBasedRuleManagedKeysOutput{} 4959 req = c.newRequest(op, input, output) 4960 return 4961} 4962 4963// GetRateBasedRuleManagedKeys API operation for AWS WAF Regional. 4964// 4965// 4966// This is AWS WAF Classic documentation. For more information, see AWS WAF 4967// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 4968// in the developer guide. 4969// 4970// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 4971// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 4972// With the latest version, AWS WAF has a single set of endpoints for regional 4973// and global use. 4974// 4975// Returns an array of IP addresses currently being blocked by the RateBasedRule 4976// that is specified by the RuleId. The maximum number of managed keys that 4977// will be blocked is 10,000. If more than 10,000 addresses exceed the rate 4978// limit, the 10,000 addresses with the highest rates will be blocked. 4979// 4980// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 4981// with awserr.Error's Code and Message methods to get detailed information about 4982// the error. 4983// 4984// See the AWS API reference guide for AWS WAF Regional's 4985// API operation GetRateBasedRuleManagedKeys for usage and error information. 4986// 4987// Returned Error Types: 4988// * WAFInternalErrorException 4989// The operation failed because of a system problem, even though the request 4990// was valid. Retry your request. 4991// 4992// * WAFInvalidAccountException 4993// The operation failed because you tried to create, update, or delete an object 4994// by using an invalid account identifier. 4995// 4996// * WAFNonexistentItemException 4997// The operation failed because the referenced object doesn't exist. 4998// 4999// * WAFInvalidParameterException 5000// The operation failed because AWS WAF didn't recognize a parameter in the 5001// request. For example: 5002// 5003// * You specified an invalid parameter name. 5004// 5005// * You specified an invalid value. 5006// 5007// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 5008// using an action other than INSERT or DELETE. 5009// 5010// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 5011// BLOCK, or COUNT. 5012// 5013// * You tried to create a RateBasedRule with a RateKey value other than 5014// IP. 5015// 5016// * You tried to update a WebACL with a WafAction Type other than ALLOW, 5017// BLOCK, or COUNT. 5018// 5019// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 5020// HEADER, METHOD, QUERY_STRING, URI, or BODY. 5021// 5022// * You tried to update a ByteMatchSet with a Field of HEADER but no value 5023// for Data. 5024// 5025// * Your request references an ARN that is malformed, or corresponds to 5026// a resource with which a web ACL cannot be associated. 5027// 5028// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRateBasedRuleManagedKeys 5029func (c *WAFRegional) GetRateBasedRuleManagedKeys(input *waf.GetRateBasedRuleManagedKeysInput) (*waf.GetRateBasedRuleManagedKeysOutput, error) { 5030 req, out := c.GetRateBasedRuleManagedKeysRequest(input) 5031 return out, req.Send() 5032} 5033 5034// GetRateBasedRuleManagedKeysWithContext is the same as GetRateBasedRuleManagedKeys with the addition of 5035// the ability to pass a context and additional request options. 5036// 5037// See GetRateBasedRuleManagedKeys for details on how to use this API operation. 5038// 5039// The context must be non-nil and will be used for request cancellation. If 5040// the context is nil a panic will occur. In the future the SDK may create 5041// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5042// for more information on using Contexts. 5043func (c *WAFRegional) GetRateBasedRuleManagedKeysWithContext(ctx aws.Context, input *waf.GetRateBasedRuleManagedKeysInput, opts ...request.Option) (*waf.GetRateBasedRuleManagedKeysOutput, error) { 5044 req, out := c.GetRateBasedRuleManagedKeysRequest(input) 5045 req.SetContext(ctx) 5046 req.ApplyOptions(opts...) 5047 return out, req.Send() 5048} 5049 5050const opGetRegexMatchSet = "GetRegexMatchSet" 5051 5052// GetRegexMatchSetRequest generates a "aws/request.Request" representing the 5053// client's request for the GetRegexMatchSet operation. The "output" return 5054// value will be populated with the request's response once the request completes 5055// successfully. 5056// 5057// Use "Send" method on the returned Request to send the API call to the service. 5058// the "output" return value is not valid until after Send returns without error. 5059// 5060// See GetRegexMatchSet for more information on using the GetRegexMatchSet 5061// API call, and error handling. 5062// 5063// This method is useful when you want to inject custom logic or configuration 5064// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5065// 5066// 5067// // Example sending a request using the GetRegexMatchSetRequest method. 5068// req, resp := client.GetRegexMatchSetRequest(params) 5069// 5070// err := req.Send() 5071// if err == nil { // resp is now filled 5072// fmt.Println(resp) 5073// } 5074// 5075// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRegexMatchSet 5076func (c *WAFRegional) GetRegexMatchSetRequest(input *waf.GetRegexMatchSetInput) (req *request.Request, output *waf.GetRegexMatchSetOutput) { 5077 op := &request.Operation{ 5078 Name: opGetRegexMatchSet, 5079 HTTPMethod: "POST", 5080 HTTPPath: "/", 5081 } 5082 5083 if input == nil { 5084 input = &waf.GetRegexMatchSetInput{} 5085 } 5086 5087 output = &waf.GetRegexMatchSetOutput{} 5088 req = c.newRequest(op, input, output) 5089 return 5090} 5091 5092// GetRegexMatchSet API operation for AWS WAF Regional. 5093// 5094// 5095// This is AWS WAF Classic documentation. For more information, see AWS WAF 5096// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 5097// in the developer guide. 5098// 5099// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 5100// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 5101// With the latest version, AWS WAF has a single set of endpoints for regional 5102// and global use. 5103// 5104// Returns the RegexMatchSet specified by RegexMatchSetId. 5105// 5106// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5107// with awserr.Error's Code and Message methods to get detailed information about 5108// the error. 5109// 5110// See the AWS API reference guide for AWS WAF Regional's 5111// API operation GetRegexMatchSet for usage and error information. 5112// 5113// Returned Error Types: 5114// * WAFInternalErrorException 5115// The operation failed because of a system problem, even though the request 5116// was valid. Retry your request. 5117// 5118// * WAFInvalidAccountException 5119// The operation failed because you tried to create, update, or delete an object 5120// by using an invalid account identifier. 5121// 5122// * WAFNonexistentItemException 5123// The operation failed because the referenced object doesn't exist. 5124// 5125// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRegexMatchSet 5126func (c *WAFRegional) GetRegexMatchSet(input *waf.GetRegexMatchSetInput) (*waf.GetRegexMatchSetOutput, error) { 5127 req, out := c.GetRegexMatchSetRequest(input) 5128 return out, req.Send() 5129} 5130 5131// GetRegexMatchSetWithContext is the same as GetRegexMatchSet with the addition of 5132// the ability to pass a context and additional request options. 5133// 5134// See GetRegexMatchSet for details on how to use this API operation. 5135// 5136// The context must be non-nil and will be used for request cancellation. If 5137// the context is nil a panic will occur. In the future the SDK may create 5138// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5139// for more information on using Contexts. 5140func (c *WAFRegional) GetRegexMatchSetWithContext(ctx aws.Context, input *waf.GetRegexMatchSetInput, opts ...request.Option) (*waf.GetRegexMatchSetOutput, error) { 5141 req, out := c.GetRegexMatchSetRequest(input) 5142 req.SetContext(ctx) 5143 req.ApplyOptions(opts...) 5144 return out, req.Send() 5145} 5146 5147const opGetRegexPatternSet = "GetRegexPatternSet" 5148 5149// GetRegexPatternSetRequest generates a "aws/request.Request" representing the 5150// client's request for the GetRegexPatternSet operation. The "output" return 5151// value will be populated with the request's response once the request completes 5152// successfully. 5153// 5154// Use "Send" method on the returned Request to send the API call to the service. 5155// the "output" return value is not valid until after Send returns without error. 5156// 5157// See GetRegexPatternSet for more information on using the GetRegexPatternSet 5158// API call, and error handling. 5159// 5160// This method is useful when you want to inject custom logic or configuration 5161// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5162// 5163// 5164// // Example sending a request using the GetRegexPatternSetRequest method. 5165// req, resp := client.GetRegexPatternSetRequest(params) 5166// 5167// err := req.Send() 5168// if err == nil { // resp is now filled 5169// fmt.Println(resp) 5170// } 5171// 5172// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRegexPatternSet 5173func (c *WAFRegional) GetRegexPatternSetRequest(input *waf.GetRegexPatternSetInput) (req *request.Request, output *waf.GetRegexPatternSetOutput) { 5174 op := &request.Operation{ 5175 Name: opGetRegexPatternSet, 5176 HTTPMethod: "POST", 5177 HTTPPath: "/", 5178 } 5179 5180 if input == nil { 5181 input = &waf.GetRegexPatternSetInput{} 5182 } 5183 5184 output = &waf.GetRegexPatternSetOutput{} 5185 req = c.newRequest(op, input, output) 5186 return 5187} 5188 5189// GetRegexPatternSet API operation for AWS WAF Regional. 5190// 5191// 5192// This is AWS WAF Classic documentation. For more information, see AWS WAF 5193// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 5194// in the developer guide. 5195// 5196// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 5197// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 5198// With the latest version, AWS WAF has a single set of endpoints for regional 5199// and global use. 5200// 5201// Returns the RegexPatternSet specified by RegexPatternSetId. 5202// 5203// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5204// with awserr.Error's Code and Message methods to get detailed information about 5205// the error. 5206// 5207// See the AWS API reference guide for AWS WAF Regional's 5208// API operation GetRegexPatternSet for usage and error information. 5209// 5210// Returned Error Types: 5211// * WAFInternalErrorException 5212// The operation failed because of a system problem, even though the request 5213// was valid. Retry your request. 5214// 5215// * WAFInvalidAccountException 5216// The operation failed because you tried to create, update, or delete an object 5217// by using an invalid account identifier. 5218// 5219// * WAFNonexistentItemException 5220// The operation failed because the referenced object doesn't exist. 5221// 5222// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRegexPatternSet 5223func (c *WAFRegional) GetRegexPatternSet(input *waf.GetRegexPatternSetInput) (*waf.GetRegexPatternSetOutput, error) { 5224 req, out := c.GetRegexPatternSetRequest(input) 5225 return out, req.Send() 5226} 5227 5228// GetRegexPatternSetWithContext is the same as GetRegexPatternSet with the addition of 5229// the ability to pass a context and additional request options. 5230// 5231// See GetRegexPatternSet for details on how to use this API operation. 5232// 5233// The context must be non-nil and will be used for request cancellation. If 5234// the context is nil a panic will occur. In the future the SDK may create 5235// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5236// for more information on using Contexts. 5237func (c *WAFRegional) GetRegexPatternSetWithContext(ctx aws.Context, input *waf.GetRegexPatternSetInput, opts ...request.Option) (*waf.GetRegexPatternSetOutput, error) { 5238 req, out := c.GetRegexPatternSetRequest(input) 5239 req.SetContext(ctx) 5240 req.ApplyOptions(opts...) 5241 return out, req.Send() 5242} 5243 5244const opGetRule = "GetRule" 5245 5246// GetRuleRequest generates a "aws/request.Request" representing the 5247// client's request for the GetRule operation. The "output" return 5248// value will be populated with the request's response once the request completes 5249// successfully. 5250// 5251// Use "Send" method on the returned Request to send the API call to the service. 5252// the "output" return value is not valid until after Send returns without error. 5253// 5254// See GetRule for more information on using the GetRule 5255// API call, and error handling. 5256// 5257// This method is useful when you want to inject custom logic or configuration 5258// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5259// 5260// 5261// // Example sending a request using the GetRuleRequest method. 5262// req, resp := client.GetRuleRequest(params) 5263// 5264// err := req.Send() 5265// if err == nil { // resp is now filled 5266// fmt.Println(resp) 5267// } 5268// 5269// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRule 5270func (c *WAFRegional) GetRuleRequest(input *waf.GetRuleInput) (req *request.Request, output *waf.GetRuleOutput) { 5271 op := &request.Operation{ 5272 Name: opGetRule, 5273 HTTPMethod: "POST", 5274 HTTPPath: "/", 5275 } 5276 5277 if input == nil { 5278 input = &waf.GetRuleInput{} 5279 } 5280 5281 output = &waf.GetRuleOutput{} 5282 req = c.newRequest(op, input, output) 5283 return 5284} 5285 5286// GetRule API operation for AWS WAF Regional. 5287// 5288// 5289// This is AWS WAF Classic documentation. For more information, see AWS WAF 5290// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 5291// in the developer guide. 5292// 5293// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 5294// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 5295// With the latest version, AWS WAF has a single set of endpoints for regional 5296// and global use. 5297// 5298// Returns the Rule that is specified by the RuleId that you included in the 5299// GetRule request. 5300// 5301// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5302// with awserr.Error's Code and Message methods to get detailed information about 5303// the error. 5304// 5305// See the AWS API reference guide for AWS WAF Regional's 5306// API operation GetRule for usage and error information. 5307// 5308// Returned Error Types: 5309// * WAFInternalErrorException 5310// The operation failed because of a system problem, even though the request 5311// was valid. Retry your request. 5312// 5313// * WAFInvalidAccountException 5314// The operation failed because you tried to create, update, or delete an object 5315// by using an invalid account identifier. 5316// 5317// * WAFNonexistentItemException 5318// The operation failed because the referenced object doesn't exist. 5319// 5320// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRule 5321func (c *WAFRegional) GetRule(input *waf.GetRuleInput) (*waf.GetRuleOutput, error) { 5322 req, out := c.GetRuleRequest(input) 5323 return out, req.Send() 5324} 5325 5326// GetRuleWithContext is the same as GetRule with the addition of 5327// the ability to pass a context and additional request options. 5328// 5329// See GetRule for details on how to use this API operation. 5330// 5331// The context must be non-nil and will be used for request cancellation. If 5332// the context is nil a panic will occur. In the future the SDK may create 5333// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5334// for more information on using Contexts. 5335func (c *WAFRegional) GetRuleWithContext(ctx aws.Context, input *waf.GetRuleInput, opts ...request.Option) (*waf.GetRuleOutput, error) { 5336 req, out := c.GetRuleRequest(input) 5337 req.SetContext(ctx) 5338 req.ApplyOptions(opts...) 5339 return out, req.Send() 5340} 5341 5342const opGetRuleGroup = "GetRuleGroup" 5343 5344// GetRuleGroupRequest generates a "aws/request.Request" representing the 5345// client's request for the GetRuleGroup operation. The "output" return 5346// value will be populated with the request's response once the request completes 5347// successfully. 5348// 5349// Use "Send" method on the returned Request to send the API call to the service. 5350// the "output" return value is not valid until after Send returns without error. 5351// 5352// See GetRuleGroup for more information on using the GetRuleGroup 5353// API call, and error handling. 5354// 5355// This method is useful when you want to inject custom logic or configuration 5356// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5357// 5358// 5359// // Example sending a request using the GetRuleGroupRequest method. 5360// req, resp := client.GetRuleGroupRequest(params) 5361// 5362// err := req.Send() 5363// if err == nil { // resp is now filled 5364// fmt.Println(resp) 5365// } 5366// 5367// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRuleGroup 5368func (c *WAFRegional) GetRuleGroupRequest(input *waf.GetRuleGroupInput) (req *request.Request, output *waf.GetRuleGroupOutput) { 5369 op := &request.Operation{ 5370 Name: opGetRuleGroup, 5371 HTTPMethod: "POST", 5372 HTTPPath: "/", 5373 } 5374 5375 if input == nil { 5376 input = &waf.GetRuleGroupInput{} 5377 } 5378 5379 output = &waf.GetRuleGroupOutput{} 5380 req = c.newRequest(op, input, output) 5381 return 5382} 5383 5384// GetRuleGroup API operation for AWS WAF Regional. 5385// 5386// 5387// This is AWS WAF Classic documentation. For more information, see AWS WAF 5388// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 5389// in the developer guide. 5390// 5391// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 5392// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 5393// With the latest version, AWS WAF has a single set of endpoints for regional 5394// and global use. 5395// 5396// Returns the RuleGroup that is specified by the RuleGroupId that you included 5397// in the GetRuleGroup request. 5398// 5399// To view the rules in a rule group, use ListActivatedRulesInRuleGroup. 5400// 5401// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5402// with awserr.Error's Code and Message methods to get detailed information about 5403// the error. 5404// 5405// See the AWS API reference guide for AWS WAF Regional's 5406// API operation GetRuleGroup for usage and error information. 5407// 5408// Returned Error Types: 5409// * WAFInternalErrorException 5410// The operation failed because of a system problem, even though the request 5411// was valid. Retry your request. 5412// 5413// * WAFNonexistentItemException 5414// The operation failed because the referenced object doesn't exist. 5415// 5416// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetRuleGroup 5417func (c *WAFRegional) GetRuleGroup(input *waf.GetRuleGroupInput) (*waf.GetRuleGroupOutput, error) { 5418 req, out := c.GetRuleGroupRequest(input) 5419 return out, req.Send() 5420} 5421 5422// GetRuleGroupWithContext is the same as GetRuleGroup with the addition of 5423// the ability to pass a context and additional request options. 5424// 5425// See GetRuleGroup for details on how to use this API operation. 5426// 5427// The context must be non-nil and will be used for request cancellation. If 5428// the context is nil a panic will occur. In the future the SDK may create 5429// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5430// for more information on using Contexts. 5431func (c *WAFRegional) GetRuleGroupWithContext(ctx aws.Context, input *waf.GetRuleGroupInput, opts ...request.Option) (*waf.GetRuleGroupOutput, error) { 5432 req, out := c.GetRuleGroupRequest(input) 5433 req.SetContext(ctx) 5434 req.ApplyOptions(opts...) 5435 return out, req.Send() 5436} 5437 5438const opGetSampledRequests = "GetSampledRequests" 5439 5440// GetSampledRequestsRequest generates a "aws/request.Request" representing the 5441// client's request for the GetSampledRequests operation. The "output" return 5442// value will be populated with the request's response once the request completes 5443// successfully. 5444// 5445// Use "Send" method on the returned Request to send the API call to the service. 5446// the "output" return value is not valid until after Send returns without error. 5447// 5448// See GetSampledRequests for more information on using the GetSampledRequests 5449// API call, and error handling. 5450// 5451// This method is useful when you want to inject custom logic or configuration 5452// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5453// 5454// 5455// // Example sending a request using the GetSampledRequestsRequest method. 5456// req, resp := client.GetSampledRequestsRequest(params) 5457// 5458// err := req.Send() 5459// if err == nil { // resp is now filled 5460// fmt.Println(resp) 5461// } 5462// 5463// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetSampledRequests 5464func (c *WAFRegional) GetSampledRequestsRequest(input *waf.GetSampledRequestsInput) (req *request.Request, output *waf.GetSampledRequestsOutput) { 5465 op := &request.Operation{ 5466 Name: opGetSampledRequests, 5467 HTTPMethod: "POST", 5468 HTTPPath: "/", 5469 } 5470 5471 if input == nil { 5472 input = &waf.GetSampledRequestsInput{} 5473 } 5474 5475 output = &waf.GetSampledRequestsOutput{} 5476 req = c.newRequest(op, input, output) 5477 return 5478} 5479 5480// GetSampledRequests API operation for AWS WAF Regional. 5481// 5482// 5483// This is AWS WAF Classic documentation. For more information, see AWS WAF 5484// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 5485// in the developer guide. 5486// 5487// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 5488// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 5489// With the latest version, AWS WAF has a single set of endpoints for regional 5490// and global use. 5491// 5492// Gets detailed information about a specified number of requests--a sample--that 5493// AWS WAF randomly selects from among the first 5,000 requests that your AWS 5494// resource received during a time range that you choose. You can specify a 5495// sample size of up to 500 requests, and you can specify any time range in 5496// the previous three hours. 5497// 5498// GetSampledRequests returns a time range, which is usually the time range 5499// that you specified. However, if your resource (such as a CloudFront distribution) 5500// received 5,000 requests before the specified time range elapsed, GetSampledRequests 5501// returns an updated time range. This new time range indicates the actual period 5502// during which AWS WAF selected the requests in the sample. 5503// 5504// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5505// with awserr.Error's Code and Message methods to get detailed information about 5506// the error. 5507// 5508// See the AWS API reference guide for AWS WAF Regional's 5509// API operation GetSampledRequests for usage and error information. 5510// 5511// Returned Error Types: 5512// * WAFNonexistentItemException 5513// The operation failed because the referenced object doesn't exist. 5514// 5515// * WAFInternalErrorException 5516// The operation failed because of a system problem, even though the request 5517// was valid. Retry your request. 5518// 5519// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetSampledRequests 5520func (c *WAFRegional) GetSampledRequests(input *waf.GetSampledRequestsInput) (*waf.GetSampledRequestsOutput, error) { 5521 req, out := c.GetSampledRequestsRequest(input) 5522 return out, req.Send() 5523} 5524 5525// GetSampledRequestsWithContext is the same as GetSampledRequests with the addition of 5526// the ability to pass a context and additional request options. 5527// 5528// See GetSampledRequests for details on how to use this API operation. 5529// 5530// The context must be non-nil and will be used for request cancellation. If 5531// the context is nil a panic will occur. In the future the SDK may create 5532// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5533// for more information on using Contexts. 5534func (c *WAFRegional) GetSampledRequestsWithContext(ctx aws.Context, input *waf.GetSampledRequestsInput, opts ...request.Option) (*waf.GetSampledRequestsOutput, error) { 5535 req, out := c.GetSampledRequestsRequest(input) 5536 req.SetContext(ctx) 5537 req.ApplyOptions(opts...) 5538 return out, req.Send() 5539} 5540 5541const opGetSizeConstraintSet = "GetSizeConstraintSet" 5542 5543// GetSizeConstraintSetRequest generates a "aws/request.Request" representing the 5544// client's request for the GetSizeConstraintSet operation. The "output" return 5545// value will be populated with the request's response once the request completes 5546// successfully. 5547// 5548// Use "Send" method on the returned Request to send the API call to the service. 5549// the "output" return value is not valid until after Send returns without error. 5550// 5551// See GetSizeConstraintSet for more information on using the GetSizeConstraintSet 5552// API call, and error handling. 5553// 5554// This method is useful when you want to inject custom logic or configuration 5555// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5556// 5557// 5558// // Example sending a request using the GetSizeConstraintSetRequest method. 5559// req, resp := client.GetSizeConstraintSetRequest(params) 5560// 5561// err := req.Send() 5562// if err == nil { // resp is now filled 5563// fmt.Println(resp) 5564// } 5565// 5566// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetSizeConstraintSet 5567func (c *WAFRegional) GetSizeConstraintSetRequest(input *waf.GetSizeConstraintSetInput) (req *request.Request, output *waf.GetSizeConstraintSetOutput) { 5568 op := &request.Operation{ 5569 Name: opGetSizeConstraintSet, 5570 HTTPMethod: "POST", 5571 HTTPPath: "/", 5572 } 5573 5574 if input == nil { 5575 input = &waf.GetSizeConstraintSetInput{} 5576 } 5577 5578 output = &waf.GetSizeConstraintSetOutput{} 5579 req = c.newRequest(op, input, output) 5580 return 5581} 5582 5583// GetSizeConstraintSet API operation for AWS WAF Regional. 5584// 5585// 5586// This is AWS WAF Classic documentation. For more information, see AWS WAF 5587// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 5588// in the developer guide. 5589// 5590// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 5591// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 5592// With the latest version, AWS WAF has a single set of endpoints for regional 5593// and global use. 5594// 5595// Returns the SizeConstraintSet specified by SizeConstraintSetId. 5596// 5597// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5598// with awserr.Error's Code and Message methods to get detailed information about 5599// the error. 5600// 5601// See the AWS API reference guide for AWS WAF Regional's 5602// API operation GetSizeConstraintSet for usage and error information. 5603// 5604// Returned Error Types: 5605// * WAFInternalErrorException 5606// The operation failed because of a system problem, even though the request 5607// was valid. Retry your request. 5608// 5609// * WAFInvalidAccountException 5610// The operation failed because you tried to create, update, or delete an object 5611// by using an invalid account identifier. 5612// 5613// * WAFNonexistentItemException 5614// The operation failed because the referenced object doesn't exist. 5615// 5616// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetSizeConstraintSet 5617func (c *WAFRegional) GetSizeConstraintSet(input *waf.GetSizeConstraintSetInput) (*waf.GetSizeConstraintSetOutput, error) { 5618 req, out := c.GetSizeConstraintSetRequest(input) 5619 return out, req.Send() 5620} 5621 5622// GetSizeConstraintSetWithContext is the same as GetSizeConstraintSet with the addition of 5623// the ability to pass a context and additional request options. 5624// 5625// See GetSizeConstraintSet for details on how to use this API operation. 5626// 5627// The context must be non-nil and will be used for request cancellation. If 5628// the context is nil a panic will occur. In the future the SDK may create 5629// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5630// for more information on using Contexts. 5631func (c *WAFRegional) GetSizeConstraintSetWithContext(ctx aws.Context, input *waf.GetSizeConstraintSetInput, opts ...request.Option) (*waf.GetSizeConstraintSetOutput, error) { 5632 req, out := c.GetSizeConstraintSetRequest(input) 5633 req.SetContext(ctx) 5634 req.ApplyOptions(opts...) 5635 return out, req.Send() 5636} 5637 5638const opGetSqlInjectionMatchSet = "GetSqlInjectionMatchSet" 5639 5640// GetSqlInjectionMatchSetRequest generates a "aws/request.Request" representing the 5641// client's request for the GetSqlInjectionMatchSet operation. The "output" return 5642// value will be populated with the request's response once the request completes 5643// successfully. 5644// 5645// Use "Send" method on the returned Request to send the API call to the service. 5646// the "output" return value is not valid until after Send returns without error. 5647// 5648// See GetSqlInjectionMatchSet for more information on using the GetSqlInjectionMatchSet 5649// API call, and error handling. 5650// 5651// This method is useful when you want to inject custom logic or configuration 5652// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5653// 5654// 5655// // Example sending a request using the GetSqlInjectionMatchSetRequest method. 5656// req, resp := client.GetSqlInjectionMatchSetRequest(params) 5657// 5658// err := req.Send() 5659// if err == nil { // resp is now filled 5660// fmt.Println(resp) 5661// } 5662// 5663// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetSqlInjectionMatchSet 5664func (c *WAFRegional) GetSqlInjectionMatchSetRequest(input *waf.GetSqlInjectionMatchSetInput) (req *request.Request, output *waf.GetSqlInjectionMatchSetOutput) { 5665 op := &request.Operation{ 5666 Name: opGetSqlInjectionMatchSet, 5667 HTTPMethod: "POST", 5668 HTTPPath: "/", 5669 } 5670 5671 if input == nil { 5672 input = &waf.GetSqlInjectionMatchSetInput{} 5673 } 5674 5675 output = &waf.GetSqlInjectionMatchSetOutput{} 5676 req = c.newRequest(op, input, output) 5677 return 5678} 5679 5680// GetSqlInjectionMatchSet API operation for AWS WAF Regional. 5681// 5682// 5683// This is AWS WAF Classic documentation. For more information, see AWS WAF 5684// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 5685// in the developer guide. 5686// 5687// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 5688// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 5689// With the latest version, AWS WAF has a single set of endpoints for regional 5690// and global use. 5691// 5692// Returns the SqlInjectionMatchSet that is specified by SqlInjectionMatchSetId. 5693// 5694// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5695// with awserr.Error's Code and Message methods to get detailed information about 5696// the error. 5697// 5698// See the AWS API reference guide for AWS WAF Regional's 5699// API operation GetSqlInjectionMatchSet for usage and error information. 5700// 5701// Returned Error Types: 5702// * WAFInternalErrorException 5703// The operation failed because of a system problem, even though the request 5704// was valid. Retry your request. 5705// 5706// * WAFInvalidAccountException 5707// The operation failed because you tried to create, update, or delete an object 5708// by using an invalid account identifier. 5709// 5710// * WAFNonexistentItemException 5711// The operation failed because the referenced object doesn't exist. 5712// 5713// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetSqlInjectionMatchSet 5714func (c *WAFRegional) GetSqlInjectionMatchSet(input *waf.GetSqlInjectionMatchSetInput) (*waf.GetSqlInjectionMatchSetOutput, error) { 5715 req, out := c.GetSqlInjectionMatchSetRequest(input) 5716 return out, req.Send() 5717} 5718 5719// GetSqlInjectionMatchSetWithContext is the same as GetSqlInjectionMatchSet with the addition of 5720// the ability to pass a context and additional request options. 5721// 5722// See GetSqlInjectionMatchSet for details on how to use this API operation. 5723// 5724// The context must be non-nil and will be used for request cancellation. If 5725// the context is nil a panic will occur. In the future the SDK may create 5726// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5727// for more information on using Contexts. 5728func (c *WAFRegional) GetSqlInjectionMatchSetWithContext(ctx aws.Context, input *waf.GetSqlInjectionMatchSetInput, opts ...request.Option) (*waf.GetSqlInjectionMatchSetOutput, error) { 5729 req, out := c.GetSqlInjectionMatchSetRequest(input) 5730 req.SetContext(ctx) 5731 req.ApplyOptions(opts...) 5732 return out, req.Send() 5733} 5734 5735const opGetWebACL = "GetWebACL" 5736 5737// GetWebACLRequest generates a "aws/request.Request" representing the 5738// client's request for the GetWebACL operation. The "output" return 5739// value will be populated with the request's response once the request completes 5740// successfully. 5741// 5742// Use "Send" method on the returned Request to send the API call to the service. 5743// the "output" return value is not valid until after Send returns without error. 5744// 5745// See GetWebACL for more information on using the GetWebACL 5746// API call, and error handling. 5747// 5748// This method is useful when you want to inject custom logic or configuration 5749// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5750// 5751// 5752// // Example sending a request using the GetWebACLRequest method. 5753// req, resp := client.GetWebACLRequest(params) 5754// 5755// err := req.Send() 5756// if err == nil { // resp is now filled 5757// fmt.Println(resp) 5758// } 5759// 5760// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetWebACL 5761func (c *WAFRegional) GetWebACLRequest(input *waf.GetWebACLInput) (req *request.Request, output *waf.GetWebACLOutput) { 5762 op := &request.Operation{ 5763 Name: opGetWebACL, 5764 HTTPMethod: "POST", 5765 HTTPPath: "/", 5766 } 5767 5768 if input == nil { 5769 input = &waf.GetWebACLInput{} 5770 } 5771 5772 output = &waf.GetWebACLOutput{} 5773 req = c.newRequest(op, input, output) 5774 return 5775} 5776 5777// GetWebACL API operation for AWS WAF Regional. 5778// 5779// 5780// This is AWS WAF Classic documentation. For more information, see AWS WAF 5781// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 5782// in the developer guide. 5783// 5784// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 5785// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 5786// With the latest version, AWS WAF has a single set of endpoints for regional 5787// and global use. 5788// 5789// Returns the WebACL that is specified by WebACLId. 5790// 5791// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5792// with awserr.Error's Code and Message methods to get detailed information about 5793// the error. 5794// 5795// See the AWS API reference guide for AWS WAF Regional's 5796// API operation GetWebACL for usage and error information. 5797// 5798// Returned Error Types: 5799// * WAFInternalErrorException 5800// The operation failed because of a system problem, even though the request 5801// was valid. Retry your request. 5802// 5803// * WAFInvalidAccountException 5804// The operation failed because you tried to create, update, or delete an object 5805// by using an invalid account identifier. 5806// 5807// * WAFNonexistentItemException 5808// The operation failed because the referenced object doesn't exist. 5809// 5810// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetWebACL 5811func (c *WAFRegional) GetWebACL(input *waf.GetWebACLInput) (*waf.GetWebACLOutput, error) { 5812 req, out := c.GetWebACLRequest(input) 5813 return out, req.Send() 5814} 5815 5816// GetWebACLWithContext is the same as GetWebACL with the addition of 5817// the ability to pass a context and additional request options. 5818// 5819// See GetWebACL for details on how to use this API operation. 5820// 5821// The context must be non-nil and will be used for request cancellation. If 5822// the context is nil a panic will occur. In the future the SDK may create 5823// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5824// for more information on using Contexts. 5825func (c *WAFRegional) GetWebACLWithContext(ctx aws.Context, input *waf.GetWebACLInput, opts ...request.Option) (*waf.GetWebACLOutput, error) { 5826 req, out := c.GetWebACLRequest(input) 5827 req.SetContext(ctx) 5828 req.ApplyOptions(opts...) 5829 return out, req.Send() 5830} 5831 5832const opGetWebACLForResource = "GetWebACLForResource" 5833 5834// GetWebACLForResourceRequest generates a "aws/request.Request" representing the 5835// client's request for the GetWebACLForResource operation. The "output" return 5836// value will be populated with the request's response once the request completes 5837// successfully. 5838// 5839// Use "Send" method on the returned Request to send the API call to the service. 5840// the "output" return value is not valid until after Send returns without error. 5841// 5842// See GetWebACLForResource for more information on using the GetWebACLForResource 5843// API call, and error handling. 5844// 5845// This method is useful when you want to inject custom logic or configuration 5846// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5847// 5848// 5849// // Example sending a request using the GetWebACLForResourceRequest method. 5850// req, resp := client.GetWebACLForResourceRequest(params) 5851// 5852// err := req.Send() 5853// if err == nil { // resp is now filled 5854// fmt.Println(resp) 5855// } 5856// 5857// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetWebACLForResource 5858func (c *WAFRegional) GetWebACLForResourceRequest(input *GetWebACLForResourceInput) (req *request.Request, output *GetWebACLForResourceOutput) { 5859 op := &request.Operation{ 5860 Name: opGetWebACLForResource, 5861 HTTPMethod: "POST", 5862 HTTPPath: "/", 5863 } 5864 5865 if input == nil { 5866 input = &GetWebACLForResourceInput{} 5867 } 5868 5869 output = &GetWebACLForResourceOutput{} 5870 req = c.newRequest(op, input, output) 5871 return 5872} 5873 5874// GetWebACLForResource API operation for AWS WAF Regional. 5875// 5876// 5877// This is AWS WAF Classic Regional documentation. For more information, see 5878// AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 5879// in the developer guide. 5880// 5881// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 5882// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 5883// With the latest version, AWS WAF has a single set of endpoints for regional 5884// and global use. 5885// 5886// Returns the web ACL for the specified resource, either an application load 5887// balancer or Amazon API Gateway stage. 5888// 5889// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 5890// with awserr.Error's Code and Message methods to get detailed information about 5891// the error. 5892// 5893// See the AWS API reference guide for AWS WAF Regional's 5894// API operation GetWebACLForResource for usage and error information. 5895// 5896// Returned Error Types: 5897// * WAFInternalErrorException 5898// The operation failed because of a system problem, even though the request 5899// was valid. Retry your request. 5900// 5901// * WAFInvalidAccountException 5902// The operation failed because you tried to create, update, or delete an object 5903// by using an invalid account identifier. 5904// 5905// * WAFNonexistentItemException 5906// The operation failed because the referenced object doesn't exist. 5907// 5908// * WAFInvalidParameterException 5909// The operation failed because AWS WAF didn't recognize a parameter in the 5910// request. For example: 5911// 5912// * You specified an invalid parameter name. 5913// 5914// * You specified an invalid value. 5915// 5916// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 5917// using an action other than INSERT or DELETE. 5918// 5919// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 5920// BLOCK, or COUNT. 5921// 5922// * You tried to create a RateBasedRule with a RateKey value other than 5923// IP. 5924// 5925// * You tried to update a WebACL with a WafAction Type other than ALLOW, 5926// BLOCK, or COUNT. 5927// 5928// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 5929// HEADER, METHOD, QUERY_STRING, URI, or BODY. 5930// 5931// * You tried to update a ByteMatchSet with a Field of HEADER but no value 5932// for Data. 5933// 5934// * Your request references an ARN that is malformed, or corresponds to 5935// a resource with which a web ACL cannot be associated. 5936// 5937// * WAFUnavailableEntityException 5938// The operation failed because the entity referenced is temporarily unavailable. 5939// Retry your request. 5940// 5941// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetWebACLForResource 5942func (c *WAFRegional) GetWebACLForResource(input *GetWebACLForResourceInput) (*GetWebACLForResourceOutput, error) { 5943 req, out := c.GetWebACLForResourceRequest(input) 5944 return out, req.Send() 5945} 5946 5947// GetWebACLForResourceWithContext is the same as GetWebACLForResource with the addition of 5948// the ability to pass a context and additional request options. 5949// 5950// See GetWebACLForResource for details on how to use this API operation. 5951// 5952// The context must be non-nil and will be used for request cancellation. If 5953// the context is nil a panic will occur. In the future the SDK may create 5954// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 5955// for more information on using Contexts. 5956func (c *WAFRegional) GetWebACLForResourceWithContext(ctx aws.Context, input *GetWebACLForResourceInput, opts ...request.Option) (*GetWebACLForResourceOutput, error) { 5957 req, out := c.GetWebACLForResourceRequest(input) 5958 req.SetContext(ctx) 5959 req.ApplyOptions(opts...) 5960 return out, req.Send() 5961} 5962 5963const opGetXssMatchSet = "GetXssMatchSet" 5964 5965// GetXssMatchSetRequest generates a "aws/request.Request" representing the 5966// client's request for the GetXssMatchSet operation. The "output" return 5967// value will be populated with the request's response once the request completes 5968// successfully. 5969// 5970// Use "Send" method on the returned Request to send the API call to the service. 5971// the "output" return value is not valid until after Send returns without error. 5972// 5973// See GetXssMatchSet for more information on using the GetXssMatchSet 5974// API call, and error handling. 5975// 5976// This method is useful when you want to inject custom logic or configuration 5977// into the SDK's request lifecycle. Such as custom headers, or retry logic. 5978// 5979// 5980// // Example sending a request using the GetXssMatchSetRequest method. 5981// req, resp := client.GetXssMatchSetRequest(params) 5982// 5983// err := req.Send() 5984// if err == nil { // resp is now filled 5985// fmt.Println(resp) 5986// } 5987// 5988// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetXssMatchSet 5989func (c *WAFRegional) GetXssMatchSetRequest(input *waf.GetXssMatchSetInput) (req *request.Request, output *waf.GetXssMatchSetOutput) { 5990 op := &request.Operation{ 5991 Name: opGetXssMatchSet, 5992 HTTPMethod: "POST", 5993 HTTPPath: "/", 5994 } 5995 5996 if input == nil { 5997 input = &waf.GetXssMatchSetInput{} 5998 } 5999 6000 output = &waf.GetXssMatchSetOutput{} 6001 req = c.newRequest(op, input, output) 6002 return 6003} 6004 6005// GetXssMatchSet API operation for AWS WAF Regional. 6006// 6007// 6008// This is AWS WAF Classic documentation. For more information, see AWS WAF 6009// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6010// in the developer guide. 6011// 6012// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6013// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6014// With the latest version, AWS WAF has a single set of endpoints for regional 6015// and global use. 6016// 6017// Returns the XssMatchSet that is specified by XssMatchSetId. 6018// 6019// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6020// with awserr.Error's Code and Message methods to get detailed information about 6021// the error. 6022// 6023// See the AWS API reference guide for AWS WAF Regional's 6024// API operation GetXssMatchSet for usage and error information. 6025// 6026// Returned Error Types: 6027// * WAFInternalErrorException 6028// The operation failed because of a system problem, even though the request 6029// was valid. Retry your request. 6030// 6031// * WAFInvalidAccountException 6032// The operation failed because you tried to create, update, or delete an object 6033// by using an invalid account identifier. 6034// 6035// * WAFNonexistentItemException 6036// The operation failed because the referenced object doesn't exist. 6037// 6038// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/GetXssMatchSet 6039func (c *WAFRegional) GetXssMatchSet(input *waf.GetXssMatchSetInput) (*waf.GetXssMatchSetOutput, error) { 6040 req, out := c.GetXssMatchSetRequest(input) 6041 return out, req.Send() 6042} 6043 6044// GetXssMatchSetWithContext is the same as GetXssMatchSet with the addition of 6045// the ability to pass a context and additional request options. 6046// 6047// See GetXssMatchSet for details on how to use this API operation. 6048// 6049// The context must be non-nil and will be used for request cancellation. If 6050// the context is nil a panic will occur. In the future the SDK may create 6051// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6052// for more information on using Contexts. 6053func (c *WAFRegional) GetXssMatchSetWithContext(ctx aws.Context, input *waf.GetXssMatchSetInput, opts ...request.Option) (*waf.GetXssMatchSetOutput, error) { 6054 req, out := c.GetXssMatchSetRequest(input) 6055 req.SetContext(ctx) 6056 req.ApplyOptions(opts...) 6057 return out, req.Send() 6058} 6059 6060const opListActivatedRulesInRuleGroup = "ListActivatedRulesInRuleGroup" 6061 6062// ListActivatedRulesInRuleGroupRequest generates a "aws/request.Request" representing the 6063// client's request for the ListActivatedRulesInRuleGroup operation. The "output" return 6064// value will be populated with the request's response once the request completes 6065// successfully. 6066// 6067// Use "Send" method on the returned Request to send the API call to the service. 6068// the "output" return value is not valid until after Send returns without error. 6069// 6070// See ListActivatedRulesInRuleGroup for more information on using the ListActivatedRulesInRuleGroup 6071// API call, and error handling. 6072// 6073// This method is useful when you want to inject custom logic or configuration 6074// into the SDK's request lifecycle. Such as custom headers, or retry logic. 6075// 6076// 6077// // Example sending a request using the ListActivatedRulesInRuleGroupRequest method. 6078// req, resp := client.ListActivatedRulesInRuleGroupRequest(params) 6079// 6080// err := req.Send() 6081// if err == nil { // resp is now filled 6082// fmt.Println(resp) 6083// } 6084// 6085// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListActivatedRulesInRuleGroup 6086func (c *WAFRegional) ListActivatedRulesInRuleGroupRequest(input *waf.ListActivatedRulesInRuleGroupInput) (req *request.Request, output *waf.ListActivatedRulesInRuleGroupOutput) { 6087 op := &request.Operation{ 6088 Name: opListActivatedRulesInRuleGroup, 6089 HTTPMethod: "POST", 6090 HTTPPath: "/", 6091 } 6092 6093 if input == nil { 6094 input = &waf.ListActivatedRulesInRuleGroupInput{} 6095 } 6096 6097 output = &waf.ListActivatedRulesInRuleGroupOutput{} 6098 req = c.newRequest(op, input, output) 6099 return 6100} 6101 6102// ListActivatedRulesInRuleGroup API operation for AWS WAF Regional. 6103// 6104// 6105// This is AWS WAF Classic documentation. For more information, see AWS WAF 6106// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6107// in the developer guide. 6108// 6109// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6110// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6111// With the latest version, AWS WAF has a single set of endpoints for regional 6112// and global use. 6113// 6114// Returns an array of ActivatedRule objects. 6115// 6116// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6117// with awserr.Error's Code and Message methods to get detailed information about 6118// the error. 6119// 6120// See the AWS API reference guide for AWS WAF Regional's 6121// API operation ListActivatedRulesInRuleGroup for usage and error information. 6122// 6123// Returned Error Types: 6124// * WAFInternalErrorException 6125// The operation failed because of a system problem, even though the request 6126// was valid. Retry your request. 6127// 6128// * WAFNonexistentItemException 6129// The operation failed because the referenced object doesn't exist. 6130// 6131// * WAFInvalidParameterException 6132// The operation failed because AWS WAF didn't recognize a parameter in the 6133// request. For example: 6134// 6135// * You specified an invalid parameter name. 6136// 6137// * You specified an invalid value. 6138// 6139// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 6140// using an action other than INSERT or DELETE. 6141// 6142// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 6143// BLOCK, or COUNT. 6144// 6145// * You tried to create a RateBasedRule with a RateKey value other than 6146// IP. 6147// 6148// * You tried to update a WebACL with a WafAction Type other than ALLOW, 6149// BLOCK, or COUNT. 6150// 6151// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 6152// HEADER, METHOD, QUERY_STRING, URI, or BODY. 6153// 6154// * You tried to update a ByteMatchSet with a Field of HEADER but no value 6155// for Data. 6156// 6157// * Your request references an ARN that is malformed, or corresponds to 6158// a resource with which a web ACL cannot be associated. 6159// 6160// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListActivatedRulesInRuleGroup 6161func (c *WAFRegional) ListActivatedRulesInRuleGroup(input *waf.ListActivatedRulesInRuleGroupInput) (*waf.ListActivatedRulesInRuleGroupOutput, error) { 6162 req, out := c.ListActivatedRulesInRuleGroupRequest(input) 6163 return out, req.Send() 6164} 6165 6166// ListActivatedRulesInRuleGroupWithContext is the same as ListActivatedRulesInRuleGroup with the addition of 6167// the ability to pass a context and additional request options. 6168// 6169// See ListActivatedRulesInRuleGroup for details on how to use this API operation. 6170// 6171// The context must be non-nil and will be used for request cancellation. If 6172// the context is nil a panic will occur. In the future the SDK may create 6173// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6174// for more information on using Contexts. 6175func (c *WAFRegional) ListActivatedRulesInRuleGroupWithContext(ctx aws.Context, input *waf.ListActivatedRulesInRuleGroupInput, opts ...request.Option) (*waf.ListActivatedRulesInRuleGroupOutput, error) { 6176 req, out := c.ListActivatedRulesInRuleGroupRequest(input) 6177 req.SetContext(ctx) 6178 req.ApplyOptions(opts...) 6179 return out, req.Send() 6180} 6181 6182const opListByteMatchSets = "ListByteMatchSets" 6183 6184// ListByteMatchSetsRequest generates a "aws/request.Request" representing the 6185// client's request for the ListByteMatchSets operation. The "output" return 6186// value will be populated with the request's response once the request completes 6187// successfully. 6188// 6189// Use "Send" method on the returned Request to send the API call to the service. 6190// the "output" return value is not valid until after Send returns without error. 6191// 6192// See ListByteMatchSets for more information on using the ListByteMatchSets 6193// API call, and error handling. 6194// 6195// This method is useful when you want to inject custom logic or configuration 6196// into the SDK's request lifecycle. Such as custom headers, or retry logic. 6197// 6198// 6199// // Example sending a request using the ListByteMatchSetsRequest method. 6200// req, resp := client.ListByteMatchSetsRequest(params) 6201// 6202// err := req.Send() 6203// if err == nil { // resp is now filled 6204// fmt.Println(resp) 6205// } 6206// 6207// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListByteMatchSets 6208func (c *WAFRegional) ListByteMatchSetsRequest(input *waf.ListByteMatchSetsInput) (req *request.Request, output *waf.ListByteMatchSetsOutput) { 6209 op := &request.Operation{ 6210 Name: opListByteMatchSets, 6211 HTTPMethod: "POST", 6212 HTTPPath: "/", 6213 } 6214 6215 if input == nil { 6216 input = &waf.ListByteMatchSetsInput{} 6217 } 6218 6219 output = &waf.ListByteMatchSetsOutput{} 6220 req = c.newRequest(op, input, output) 6221 return 6222} 6223 6224// ListByteMatchSets API operation for AWS WAF Regional. 6225// 6226// 6227// This is AWS WAF Classic documentation. For more information, see AWS WAF 6228// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6229// in the developer guide. 6230// 6231// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6232// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6233// With the latest version, AWS WAF has a single set of endpoints for regional 6234// and global use. 6235// 6236// Returns an array of ByteMatchSetSummary objects. 6237// 6238// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6239// with awserr.Error's Code and Message methods to get detailed information about 6240// the error. 6241// 6242// See the AWS API reference guide for AWS WAF Regional's 6243// API operation ListByteMatchSets for usage and error information. 6244// 6245// Returned Error Types: 6246// * WAFInternalErrorException 6247// The operation failed because of a system problem, even though the request 6248// was valid. Retry your request. 6249// 6250// * WAFInvalidAccountException 6251// The operation failed because you tried to create, update, or delete an object 6252// by using an invalid account identifier. 6253// 6254// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListByteMatchSets 6255func (c *WAFRegional) ListByteMatchSets(input *waf.ListByteMatchSetsInput) (*waf.ListByteMatchSetsOutput, error) { 6256 req, out := c.ListByteMatchSetsRequest(input) 6257 return out, req.Send() 6258} 6259 6260// ListByteMatchSetsWithContext is the same as ListByteMatchSets with the addition of 6261// the ability to pass a context and additional request options. 6262// 6263// See ListByteMatchSets for details on how to use this API operation. 6264// 6265// The context must be non-nil and will be used for request cancellation. If 6266// the context is nil a panic will occur. In the future the SDK may create 6267// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6268// for more information on using Contexts. 6269func (c *WAFRegional) ListByteMatchSetsWithContext(ctx aws.Context, input *waf.ListByteMatchSetsInput, opts ...request.Option) (*waf.ListByteMatchSetsOutput, error) { 6270 req, out := c.ListByteMatchSetsRequest(input) 6271 req.SetContext(ctx) 6272 req.ApplyOptions(opts...) 6273 return out, req.Send() 6274} 6275 6276const opListGeoMatchSets = "ListGeoMatchSets" 6277 6278// ListGeoMatchSetsRequest generates a "aws/request.Request" representing the 6279// client's request for the ListGeoMatchSets operation. The "output" return 6280// value will be populated with the request's response once the request completes 6281// successfully. 6282// 6283// Use "Send" method on the returned Request to send the API call to the service. 6284// the "output" return value is not valid until after Send returns without error. 6285// 6286// See ListGeoMatchSets for more information on using the ListGeoMatchSets 6287// API call, and error handling. 6288// 6289// This method is useful when you want to inject custom logic or configuration 6290// into the SDK's request lifecycle. Such as custom headers, or retry logic. 6291// 6292// 6293// // Example sending a request using the ListGeoMatchSetsRequest method. 6294// req, resp := client.ListGeoMatchSetsRequest(params) 6295// 6296// err := req.Send() 6297// if err == nil { // resp is now filled 6298// fmt.Println(resp) 6299// } 6300// 6301// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListGeoMatchSets 6302func (c *WAFRegional) ListGeoMatchSetsRequest(input *waf.ListGeoMatchSetsInput) (req *request.Request, output *waf.ListGeoMatchSetsOutput) { 6303 op := &request.Operation{ 6304 Name: opListGeoMatchSets, 6305 HTTPMethod: "POST", 6306 HTTPPath: "/", 6307 } 6308 6309 if input == nil { 6310 input = &waf.ListGeoMatchSetsInput{} 6311 } 6312 6313 output = &waf.ListGeoMatchSetsOutput{} 6314 req = c.newRequest(op, input, output) 6315 return 6316} 6317 6318// ListGeoMatchSets API operation for AWS WAF Regional. 6319// 6320// 6321// This is AWS WAF Classic documentation. For more information, see AWS WAF 6322// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6323// in the developer guide. 6324// 6325// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6326// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6327// With the latest version, AWS WAF has a single set of endpoints for regional 6328// and global use. 6329// 6330// Returns an array of GeoMatchSetSummary objects in the response. 6331// 6332// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6333// with awserr.Error's Code and Message methods to get detailed information about 6334// the error. 6335// 6336// See the AWS API reference guide for AWS WAF Regional's 6337// API operation ListGeoMatchSets for usage and error information. 6338// 6339// Returned Error Types: 6340// * WAFInternalErrorException 6341// The operation failed because of a system problem, even though the request 6342// was valid. Retry your request. 6343// 6344// * WAFInvalidAccountException 6345// The operation failed because you tried to create, update, or delete an object 6346// by using an invalid account identifier. 6347// 6348// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListGeoMatchSets 6349func (c *WAFRegional) ListGeoMatchSets(input *waf.ListGeoMatchSetsInput) (*waf.ListGeoMatchSetsOutput, error) { 6350 req, out := c.ListGeoMatchSetsRequest(input) 6351 return out, req.Send() 6352} 6353 6354// ListGeoMatchSetsWithContext is the same as ListGeoMatchSets with the addition of 6355// the ability to pass a context and additional request options. 6356// 6357// See ListGeoMatchSets for details on how to use this API operation. 6358// 6359// The context must be non-nil and will be used for request cancellation. If 6360// the context is nil a panic will occur. In the future the SDK may create 6361// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6362// for more information on using Contexts. 6363func (c *WAFRegional) ListGeoMatchSetsWithContext(ctx aws.Context, input *waf.ListGeoMatchSetsInput, opts ...request.Option) (*waf.ListGeoMatchSetsOutput, error) { 6364 req, out := c.ListGeoMatchSetsRequest(input) 6365 req.SetContext(ctx) 6366 req.ApplyOptions(opts...) 6367 return out, req.Send() 6368} 6369 6370const opListIPSets = "ListIPSets" 6371 6372// ListIPSetsRequest generates a "aws/request.Request" representing the 6373// client's request for the ListIPSets operation. The "output" return 6374// value will be populated with the request's response once the request completes 6375// successfully. 6376// 6377// Use "Send" method on the returned Request to send the API call to the service. 6378// the "output" return value is not valid until after Send returns without error. 6379// 6380// See ListIPSets for more information on using the ListIPSets 6381// API call, and error handling. 6382// 6383// This method is useful when you want to inject custom logic or configuration 6384// into the SDK's request lifecycle. Such as custom headers, or retry logic. 6385// 6386// 6387// // Example sending a request using the ListIPSetsRequest method. 6388// req, resp := client.ListIPSetsRequest(params) 6389// 6390// err := req.Send() 6391// if err == nil { // resp is now filled 6392// fmt.Println(resp) 6393// } 6394// 6395// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListIPSets 6396func (c *WAFRegional) ListIPSetsRequest(input *waf.ListIPSetsInput) (req *request.Request, output *waf.ListIPSetsOutput) { 6397 op := &request.Operation{ 6398 Name: opListIPSets, 6399 HTTPMethod: "POST", 6400 HTTPPath: "/", 6401 } 6402 6403 if input == nil { 6404 input = &waf.ListIPSetsInput{} 6405 } 6406 6407 output = &waf.ListIPSetsOutput{} 6408 req = c.newRequest(op, input, output) 6409 return 6410} 6411 6412// ListIPSets API operation for AWS WAF Regional. 6413// 6414// 6415// This is AWS WAF Classic documentation. For more information, see AWS WAF 6416// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6417// in the developer guide. 6418// 6419// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6420// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6421// With the latest version, AWS WAF has a single set of endpoints for regional 6422// and global use. 6423// 6424// Returns an array of IPSetSummary objects in the response. 6425// 6426// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6427// with awserr.Error's Code and Message methods to get detailed information about 6428// the error. 6429// 6430// See the AWS API reference guide for AWS WAF Regional's 6431// API operation ListIPSets for usage and error information. 6432// 6433// Returned Error Types: 6434// * WAFInternalErrorException 6435// The operation failed because of a system problem, even though the request 6436// was valid. Retry your request. 6437// 6438// * WAFInvalidAccountException 6439// The operation failed because you tried to create, update, or delete an object 6440// by using an invalid account identifier. 6441// 6442// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListIPSets 6443func (c *WAFRegional) ListIPSets(input *waf.ListIPSetsInput) (*waf.ListIPSetsOutput, error) { 6444 req, out := c.ListIPSetsRequest(input) 6445 return out, req.Send() 6446} 6447 6448// ListIPSetsWithContext is the same as ListIPSets with the addition of 6449// the ability to pass a context and additional request options. 6450// 6451// See ListIPSets for details on how to use this API operation. 6452// 6453// The context must be non-nil and will be used for request cancellation. If 6454// the context is nil a panic will occur. In the future the SDK may create 6455// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6456// for more information on using Contexts. 6457func (c *WAFRegional) ListIPSetsWithContext(ctx aws.Context, input *waf.ListIPSetsInput, opts ...request.Option) (*waf.ListIPSetsOutput, error) { 6458 req, out := c.ListIPSetsRequest(input) 6459 req.SetContext(ctx) 6460 req.ApplyOptions(opts...) 6461 return out, req.Send() 6462} 6463 6464const opListLoggingConfigurations = "ListLoggingConfigurations" 6465 6466// ListLoggingConfigurationsRequest generates a "aws/request.Request" representing the 6467// client's request for the ListLoggingConfigurations operation. The "output" return 6468// value will be populated with the request's response once the request completes 6469// successfully. 6470// 6471// Use "Send" method on the returned Request to send the API call to the service. 6472// the "output" return value is not valid until after Send returns without error. 6473// 6474// See ListLoggingConfigurations for more information on using the ListLoggingConfigurations 6475// API call, and error handling. 6476// 6477// This method is useful when you want to inject custom logic or configuration 6478// into the SDK's request lifecycle. Such as custom headers, or retry logic. 6479// 6480// 6481// // Example sending a request using the ListLoggingConfigurationsRequest method. 6482// req, resp := client.ListLoggingConfigurationsRequest(params) 6483// 6484// err := req.Send() 6485// if err == nil { // resp is now filled 6486// fmt.Println(resp) 6487// } 6488// 6489// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListLoggingConfigurations 6490func (c *WAFRegional) ListLoggingConfigurationsRequest(input *waf.ListLoggingConfigurationsInput) (req *request.Request, output *waf.ListLoggingConfigurationsOutput) { 6491 op := &request.Operation{ 6492 Name: opListLoggingConfigurations, 6493 HTTPMethod: "POST", 6494 HTTPPath: "/", 6495 } 6496 6497 if input == nil { 6498 input = &waf.ListLoggingConfigurationsInput{} 6499 } 6500 6501 output = &waf.ListLoggingConfigurationsOutput{} 6502 req = c.newRequest(op, input, output) 6503 return 6504} 6505 6506// ListLoggingConfigurations API operation for AWS WAF Regional. 6507// 6508// 6509// This is AWS WAF Classic documentation. For more information, see AWS WAF 6510// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6511// in the developer guide. 6512// 6513// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6514// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6515// With the latest version, AWS WAF has a single set of endpoints for regional 6516// and global use. 6517// 6518// Returns an array of LoggingConfiguration objects. 6519// 6520// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6521// with awserr.Error's Code and Message methods to get detailed information about 6522// the error. 6523// 6524// See the AWS API reference guide for AWS WAF Regional's 6525// API operation ListLoggingConfigurations for usage and error information. 6526// 6527// Returned Error Types: 6528// * WAFInternalErrorException 6529// The operation failed because of a system problem, even though the request 6530// was valid. Retry your request. 6531// 6532// * WAFNonexistentItemException 6533// The operation failed because the referenced object doesn't exist. 6534// 6535// * WAFInvalidParameterException 6536// The operation failed because AWS WAF didn't recognize a parameter in the 6537// request. For example: 6538// 6539// * You specified an invalid parameter name. 6540// 6541// * You specified an invalid value. 6542// 6543// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 6544// using an action other than INSERT or DELETE. 6545// 6546// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 6547// BLOCK, or COUNT. 6548// 6549// * You tried to create a RateBasedRule with a RateKey value other than 6550// IP. 6551// 6552// * You tried to update a WebACL with a WafAction Type other than ALLOW, 6553// BLOCK, or COUNT. 6554// 6555// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 6556// HEADER, METHOD, QUERY_STRING, URI, or BODY. 6557// 6558// * You tried to update a ByteMatchSet with a Field of HEADER but no value 6559// for Data. 6560// 6561// * Your request references an ARN that is malformed, or corresponds to 6562// a resource with which a web ACL cannot be associated. 6563// 6564// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListLoggingConfigurations 6565func (c *WAFRegional) ListLoggingConfigurations(input *waf.ListLoggingConfigurationsInput) (*waf.ListLoggingConfigurationsOutput, error) { 6566 req, out := c.ListLoggingConfigurationsRequest(input) 6567 return out, req.Send() 6568} 6569 6570// ListLoggingConfigurationsWithContext is the same as ListLoggingConfigurations with the addition of 6571// the ability to pass a context and additional request options. 6572// 6573// See ListLoggingConfigurations for details on how to use this API operation. 6574// 6575// The context must be non-nil and will be used for request cancellation. If 6576// the context is nil a panic will occur. In the future the SDK may create 6577// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6578// for more information on using Contexts. 6579func (c *WAFRegional) ListLoggingConfigurationsWithContext(ctx aws.Context, input *waf.ListLoggingConfigurationsInput, opts ...request.Option) (*waf.ListLoggingConfigurationsOutput, error) { 6580 req, out := c.ListLoggingConfigurationsRequest(input) 6581 req.SetContext(ctx) 6582 req.ApplyOptions(opts...) 6583 return out, req.Send() 6584} 6585 6586const opListRateBasedRules = "ListRateBasedRules" 6587 6588// ListRateBasedRulesRequest generates a "aws/request.Request" representing the 6589// client's request for the ListRateBasedRules operation. The "output" return 6590// value will be populated with the request's response once the request completes 6591// successfully. 6592// 6593// Use "Send" method on the returned Request to send the API call to the service. 6594// the "output" return value is not valid until after Send returns without error. 6595// 6596// See ListRateBasedRules for more information on using the ListRateBasedRules 6597// API call, and error handling. 6598// 6599// This method is useful when you want to inject custom logic or configuration 6600// into the SDK's request lifecycle. Such as custom headers, or retry logic. 6601// 6602// 6603// // Example sending a request using the ListRateBasedRulesRequest method. 6604// req, resp := client.ListRateBasedRulesRequest(params) 6605// 6606// err := req.Send() 6607// if err == nil { // resp is now filled 6608// fmt.Println(resp) 6609// } 6610// 6611// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRateBasedRules 6612func (c *WAFRegional) ListRateBasedRulesRequest(input *waf.ListRateBasedRulesInput) (req *request.Request, output *waf.ListRateBasedRulesOutput) { 6613 op := &request.Operation{ 6614 Name: opListRateBasedRules, 6615 HTTPMethod: "POST", 6616 HTTPPath: "/", 6617 } 6618 6619 if input == nil { 6620 input = &waf.ListRateBasedRulesInput{} 6621 } 6622 6623 output = &waf.ListRateBasedRulesOutput{} 6624 req = c.newRequest(op, input, output) 6625 return 6626} 6627 6628// ListRateBasedRules API operation for AWS WAF Regional. 6629// 6630// 6631// This is AWS WAF Classic documentation. For more information, see AWS WAF 6632// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6633// in the developer guide. 6634// 6635// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6636// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6637// With the latest version, AWS WAF has a single set of endpoints for regional 6638// and global use. 6639// 6640// Returns an array of RuleSummary objects. 6641// 6642// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6643// with awserr.Error's Code and Message methods to get detailed information about 6644// the error. 6645// 6646// See the AWS API reference guide for AWS WAF Regional's 6647// API operation ListRateBasedRules for usage and error information. 6648// 6649// Returned Error Types: 6650// * WAFInternalErrorException 6651// The operation failed because of a system problem, even though the request 6652// was valid. Retry your request. 6653// 6654// * WAFInvalidAccountException 6655// The operation failed because you tried to create, update, or delete an object 6656// by using an invalid account identifier. 6657// 6658// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRateBasedRules 6659func (c *WAFRegional) ListRateBasedRules(input *waf.ListRateBasedRulesInput) (*waf.ListRateBasedRulesOutput, error) { 6660 req, out := c.ListRateBasedRulesRequest(input) 6661 return out, req.Send() 6662} 6663 6664// ListRateBasedRulesWithContext is the same as ListRateBasedRules with the addition of 6665// the ability to pass a context and additional request options. 6666// 6667// See ListRateBasedRules for details on how to use this API operation. 6668// 6669// The context must be non-nil and will be used for request cancellation. If 6670// the context is nil a panic will occur. In the future the SDK may create 6671// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6672// for more information on using Contexts. 6673func (c *WAFRegional) ListRateBasedRulesWithContext(ctx aws.Context, input *waf.ListRateBasedRulesInput, opts ...request.Option) (*waf.ListRateBasedRulesOutput, error) { 6674 req, out := c.ListRateBasedRulesRequest(input) 6675 req.SetContext(ctx) 6676 req.ApplyOptions(opts...) 6677 return out, req.Send() 6678} 6679 6680const opListRegexMatchSets = "ListRegexMatchSets" 6681 6682// ListRegexMatchSetsRequest generates a "aws/request.Request" representing the 6683// client's request for the ListRegexMatchSets operation. The "output" return 6684// value will be populated with the request's response once the request completes 6685// successfully. 6686// 6687// Use "Send" method on the returned Request to send the API call to the service. 6688// the "output" return value is not valid until after Send returns without error. 6689// 6690// See ListRegexMatchSets for more information on using the ListRegexMatchSets 6691// API call, and error handling. 6692// 6693// This method is useful when you want to inject custom logic or configuration 6694// into the SDK's request lifecycle. Such as custom headers, or retry logic. 6695// 6696// 6697// // Example sending a request using the ListRegexMatchSetsRequest method. 6698// req, resp := client.ListRegexMatchSetsRequest(params) 6699// 6700// err := req.Send() 6701// if err == nil { // resp is now filled 6702// fmt.Println(resp) 6703// } 6704// 6705// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRegexMatchSets 6706func (c *WAFRegional) ListRegexMatchSetsRequest(input *waf.ListRegexMatchSetsInput) (req *request.Request, output *waf.ListRegexMatchSetsOutput) { 6707 op := &request.Operation{ 6708 Name: opListRegexMatchSets, 6709 HTTPMethod: "POST", 6710 HTTPPath: "/", 6711 } 6712 6713 if input == nil { 6714 input = &waf.ListRegexMatchSetsInput{} 6715 } 6716 6717 output = &waf.ListRegexMatchSetsOutput{} 6718 req = c.newRequest(op, input, output) 6719 return 6720} 6721 6722// ListRegexMatchSets API operation for AWS WAF Regional. 6723// 6724// 6725// This is AWS WAF Classic documentation. For more information, see AWS WAF 6726// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6727// in the developer guide. 6728// 6729// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6730// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6731// With the latest version, AWS WAF has a single set of endpoints for regional 6732// and global use. 6733// 6734// Returns an array of RegexMatchSetSummary objects. 6735// 6736// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6737// with awserr.Error's Code and Message methods to get detailed information about 6738// the error. 6739// 6740// See the AWS API reference guide for AWS WAF Regional's 6741// API operation ListRegexMatchSets for usage and error information. 6742// 6743// Returned Error Types: 6744// * WAFInternalErrorException 6745// The operation failed because of a system problem, even though the request 6746// was valid. Retry your request. 6747// 6748// * WAFInvalidAccountException 6749// The operation failed because you tried to create, update, or delete an object 6750// by using an invalid account identifier. 6751// 6752// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRegexMatchSets 6753func (c *WAFRegional) ListRegexMatchSets(input *waf.ListRegexMatchSetsInput) (*waf.ListRegexMatchSetsOutput, error) { 6754 req, out := c.ListRegexMatchSetsRequest(input) 6755 return out, req.Send() 6756} 6757 6758// ListRegexMatchSetsWithContext is the same as ListRegexMatchSets with the addition of 6759// the ability to pass a context and additional request options. 6760// 6761// See ListRegexMatchSets for details on how to use this API operation. 6762// 6763// The context must be non-nil and will be used for request cancellation. If 6764// the context is nil a panic will occur. In the future the SDK may create 6765// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6766// for more information on using Contexts. 6767func (c *WAFRegional) ListRegexMatchSetsWithContext(ctx aws.Context, input *waf.ListRegexMatchSetsInput, opts ...request.Option) (*waf.ListRegexMatchSetsOutput, error) { 6768 req, out := c.ListRegexMatchSetsRequest(input) 6769 req.SetContext(ctx) 6770 req.ApplyOptions(opts...) 6771 return out, req.Send() 6772} 6773 6774const opListRegexPatternSets = "ListRegexPatternSets" 6775 6776// ListRegexPatternSetsRequest generates a "aws/request.Request" representing the 6777// client's request for the ListRegexPatternSets operation. The "output" return 6778// value will be populated with the request's response once the request completes 6779// successfully. 6780// 6781// Use "Send" method on the returned Request to send the API call to the service. 6782// the "output" return value is not valid until after Send returns without error. 6783// 6784// See ListRegexPatternSets for more information on using the ListRegexPatternSets 6785// API call, and error handling. 6786// 6787// This method is useful when you want to inject custom logic or configuration 6788// into the SDK's request lifecycle. Such as custom headers, or retry logic. 6789// 6790// 6791// // Example sending a request using the ListRegexPatternSetsRequest method. 6792// req, resp := client.ListRegexPatternSetsRequest(params) 6793// 6794// err := req.Send() 6795// if err == nil { // resp is now filled 6796// fmt.Println(resp) 6797// } 6798// 6799// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRegexPatternSets 6800func (c *WAFRegional) ListRegexPatternSetsRequest(input *waf.ListRegexPatternSetsInput) (req *request.Request, output *waf.ListRegexPatternSetsOutput) { 6801 op := &request.Operation{ 6802 Name: opListRegexPatternSets, 6803 HTTPMethod: "POST", 6804 HTTPPath: "/", 6805 } 6806 6807 if input == nil { 6808 input = &waf.ListRegexPatternSetsInput{} 6809 } 6810 6811 output = &waf.ListRegexPatternSetsOutput{} 6812 req = c.newRequest(op, input, output) 6813 return 6814} 6815 6816// ListRegexPatternSets API operation for AWS WAF Regional. 6817// 6818// 6819// This is AWS WAF Classic documentation. For more information, see AWS WAF 6820// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6821// in the developer guide. 6822// 6823// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6824// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6825// With the latest version, AWS WAF has a single set of endpoints for regional 6826// and global use. 6827// 6828// Returns an array of RegexPatternSetSummary objects. 6829// 6830// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6831// with awserr.Error's Code and Message methods to get detailed information about 6832// the error. 6833// 6834// See the AWS API reference guide for AWS WAF Regional's 6835// API operation ListRegexPatternSets for usage and error information. 6836// 6837// Returned Error Types: 6838// * WAFInternalErrorException 6839// The operation failed because of a system problem, even though the request 6840// was valid. Retry your request. 6841// 6842// * WAFInvalidAccountException 6843// The operation failed because you tried to create, update, or delete an object 6844// by using an invalid account identifier. 6845// 6846// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRegexPatternSets 6847func (c *WAFRegional) ListRegexPatternSets(input *waf.ListRegexPatternSetsInput) (*waf.ListRegexPatternSetsOutput, error) { 6848 req, out := c.ListRegexPatternSetsRequest(input) 6849 return out, req.Send() 6850} 6851 6852// ListRegexPatternSetsWithContext is the same as ListRegexPatternSets with the addition of 6853// the ability to pass a context and additional request options. 6854// 6855// See ListRegexPatternSets for details on how to use this API operation. 6856// 6857// The context must be non-nil and will be used for request cancellation. If 6858// the context is nil a panic will occur. In the future the SDK may create 6859// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6860// for more information on using Contexts. 6861func (c *WAFRegional) ListRegexPatternSetsWithContext(ctx aws.Context, input *waf.ListRegexPatternSetsInput, opts ...request.Option) (*waf.ListRegexPatternSetsOutput, error) { 6862 req, out := c.ListRegexPatternSetsRequest(input) 6863 req.SetContext(ctx) 6864 req.ApplyOptions(opts...) 6865 return out, req.Send() 6866} 6867 6868const opListResourcesForWebACL = "ListResourcesForWebACL" 6869 6870// ListResourcesForWebACLRequest generates a "aws/request.Request" representing the 6871// client's request for the ListResourcesForWebACL operation. The "output" return 6872// value will be populated with the request's response once the request completes 6873// successfully. 6874// 6875// Use "Send" method on the returned Request to send the API call to the service. 6876// the "output" return value is not valid until after Send returns without error. 6877// 6878// See ListResourcesForWebACL for more information on using the ListResourcesForWebACL 6879// API call, and error handling. 6880// 6881// This method is useful when you want to inject custom logic or configuration 6882// into the SDK's request lifecycle. Such as custom headers, or retry logic. 6883// 6884// 6885// // Example sending a request using the ListResourcesForWebACLRequest method. 6886// req, resp := client.ListResourcesForWebACLRequest(params) 6887// 6888// err := req.Send() 6889// if err == nil { // resp is now filled 6890// fmt.Println(resp) 6891// } 6892// 6893// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListResourcesForWebACL 6894func (c *WAFRegional) ListResourcesForWebACLRequest(input *ListResourcesForWebACLInput) (req *request.Request, output *ListResourcesForWebACLOutput) { 6895 op := &request.Operation{ 6896 Name: opListResourcesForWebACL, 6897 HTTPMethod: "POST", 6898 HTTPPath: "/", 6899 } 6900 6901 if input == nil { 6902 input = &ListResourcesForWebACLInput{} 6903 } 6904 6905 output = &ListResourcesForWebACLOutput{} 6906 req = c.newRequest(op, input, output) 6907 return 6908} 6909 6910// ListResourcesForWebACL API operation for AWS WAF Regional. 6911// 6912// 6913// This is AWS WAF Classic Regional documentation. For more information, see 6914// AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 6915// in the developer guide. 6916// 6917// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 6918// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 6919// With the latest version, AWS WAF has a single set of endpoints for regional 6920// and global use. 6921// 6922// Returns an array of resources associated with the specified web ACL. 6923// 6924// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 6925// with awserr.Error's Code and Message methods to get detailed information about 6926// the error. 6927// 6928// See the AWS API reference guide for AWS WAF Regional's 6929// API operation ListResourcesForWebACL for usage and error information. 6930// 6931// Returned Error Types: 6932// * WAFInternalErrorException 6933// The operation failed because of a system problem, even though the request 6934// was valid. Retry your request. 6935// 6936// * WAFInvalidAccountException 6937// The operation failed because you tried to create, update, or delete an object 6938// by using an invalid account identifier. 6939// 6940// * WAFNonexistentItemException 6941// The operation failed because the referenced object doesn't exist. 6942// 6943// * WAFInvalidParameterException 6944// The operation failed because AWS WAF didn't recognize a parameter in the 6945// request. For example: 6946// 6947// * You specified an invalid parameter name. 6948// 6949// * You specified an invalid value. 6950// 6951// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 6952// using an action other than INSERT or DELETE. 6953// 6954// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 6955// BLOCK, or COUNT. 6956// 6957// * You tried to create a RateBasedRule with a RateKey value other than 6958// IP. 6959// 6960// * You tried to update a WebACL with a WafAction Type other than ALLOW, 6961// BLOCK, or COUNT. 6962// 6963// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 6964// HEADER, METHOD, QUERY_STRING, URI, or BODY. 6965// 6966// * You tried to update a ByteMatchSet with a Field of HEADER but no value 6967// for Data. 6968// 6969// * Your request references an ARN that is malformed, or corresponds to 6970// a resource with which a web ACL cannot be associated. 6971// 6972// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListResourcesForWebACL 6973func (c *WAFRegional) ListResourcesForWebACL(input *ListResourcesForWebACLInput) (*ListResourcesForWebACLOutput, error) { 6974 req, out := c.ListResourcesForWebACLRequest(input) 6975 return out, req.Send() 6976} 6977 6978// ListResourcesForWebACLWithContext is the same as ListResourcesForWebACL with the addition of 6979// the ability to pass a context and additional request options. 6980// 6981// See ListResourcesForWebACL for details on how to use this API operation. 6982// 6983// The context must be non-nil and will be used for request cancellation. If 6984// the context is nil a panic will occur. In the future the SDK may create 6985// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 6986// for more information on using Contexts. 6987func (c *WAFRegional) ListResourcesForWebACLWithContext(ctx aws.Context, input *ListResourcesForWebACLInput, opts ...request.Option) (*ListResourcesForWebACLOutput, error) { 6988 req, out := c.ListResourcesForWebACLRequest(input) 6989 req.SetContext(ctx) 6990 req.ApplyOptions(opts...) 6991 return out, req.Send() 6992} 6993 6994const opListRuleGroups = "ListRuleGroups" 6995 6996// ListRuleGroupsRequest generates a "aws/request.Request" representing the 6997// client's request for the ListRuleGroups operation. The "output" return 6998// value will be populated with the request's response once the request completes 6999// successfully. 7000// 7001// Use "Send" method on the returned Request to send the API call to the service. 7002// the "output" return value is not valid until after Send returns without error. 7003// 7004// See ListRuleGroups for more information on using the ListRuleGroups 7005// API call, and error handling. 7006// 7007// This method is useful when you want to inject custom logic or configuration 7008// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7009// 7010// 7011// // Example sending a request using the ListRuleGroupsRequest method. 7012// req, resp := client.ListRuleGroupsRequest(params) 7013// 7014// err := req.Send() 7015// if err == nil { // resp is now filled 7016// fmt.Println(resp) 7017// } 7018// 7019// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRuleGroups 7020func (c *WAFRegional) ListRuleGroupsRequest(input *waf.ListRuleGroupsInput) (req *request.Request, output *waf.ListRuleGroupsOutput) { 7021 op := &request.Operation{ 7022 Name: opListRuleGroups, 7023 HTTPMethod: "POST", 7024 HTTPPath: "/", 7025 } 7026 7027 if input == nil { 7028 input = &waf.ListRuleGroupsInput{} 7029 } 7030 7031 output = &waf.ListRuleGroupsOutput{} 7032 req = c.newRequest(op, input, output) 7033 return 7034} 7035 7036// ListRuleGroups API operation for AWS WAF Regional. 7037// 7038// 7039// This is AWS WAF Classic documentation. For more information, see AWS WAF 7040// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7041// in the developer guide. 7042// 7043// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7044// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7045// With the latest version, AWS WAF has a single set of endpoints for regional 7046// and global use. 7047// 7048// Returns an array of RuleGroup objects. 7049// 7050// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7051// with awserr.Error's Code and Message methods to get detailed information about 7052// the error. 7053// 7054// See the AWS API reference guide for AWS WAF Regional's 7055// API operation ListRuleGroups for usage and error information. 7056// 7057// Returned Error Types: 7058// * WAFInternalErrorException 7059// The operation failed because of a system problem, even though the request 7060// was valid. Retry your request. 7061// 7062// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRuleGroups 7063func (c *WAFRegional) ListRuleGroups(input *waf.ListRuleGroupsInput) (*waf.ListRuleGroupsOutput, error) { 7064 req, out := c.ListRuleGroupsRequest(input) 7065 return out, req.Send() 7066} 7067 7068// ListRuleGroupsWithContext is the same as ListRuleGroups with the addition of 7069// the ability to pass a context and additional request options. 7070// 7071// See ListRuleGroups for details on how to use this API operation. 7072// 7073// The context must be non-nil and will be used for request cancellation. If 7074// the context is nil a panic will occur. In the future the SDK may create 7075// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7076// for more information on using Contexts. 7077func (c *WAFRegional) ListRuleGroupsWithContext(ctx aws.Context, input *waf.ListRuleGroupsInput, opts ...request.Option) (*waf.ListRuleGroupsOutput, error) { 7078 req, out := c.ListRuleGroupsRequest(input) 7079 req.SetContext(ctx) 7080 req.ApplyOptions(opts...) 7081 return out, req.Send() 7082} 7083 7084const opListRules = "ListRules" 7085 7086// ListRulesRequest generates a "aws/request.Request" representing the 7087// client's request for the ListRules operation. The "output" return 7088// value will be populated with the request's response once the request completes 7089// successfully. 7090// 7091// Use "Send" method on the returned Request to send the API call to the service. 7092// the "output" return value is not valid until after Send returns without error. 7093// 7094// See ListRules for more information on using the ListRules 7095// API call, and error handling. 7096// 7097// This method is useful when you want to inject custom logic or configuration 7098// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7099// 7100// 7101// // Example sending a request using the ListRulesRequest method. 7102// req, resp := client.ListRulesRequest(params) 7103// 7104// err := req.Send() 7105// if err == nil { // resp is now filled 7106// fmt.Println(resp) 7107// } 7108// 7109// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRules 7110func (c *WAFRegional) ListRulesRequest(input *waf.ListRulesInput) (req *request.Request, output *waf.ListRulesOutput) { 7111 op := &request.Operation{ 7112 Name: opListRules, 7113 HTTPMethod: "POST", 7114 HTTPPath: "/", 7115 } 7116 7117 if input == nil { 7118 input = &waf.ListRulesInput{} 7119 } 7120 7121 output = &waf.ListRulesOutput{} 7122 req = c.newRequest(op, input, output) 7123 return 7124} 7125 7126// ListRules API operation for AWS WAF Regional. 7127// 7128// 7129// This is AWS WAF Classic documentation. For more information, see AWS WAF 7130// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7131// in the developer guide. 7132// 7133// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7134// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7135// With the latest version, AWS WAF has a single set of endpoints for regional 7136// and global use. 7137// 7138// Returns an array of RuleSummary objects. 7139// 7140// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7141// with awserr.Error's Code and Message methods to get detailed information about 7142// the error. 7143// 7144// See the AWS API reference guide for AWS WAF Regional's 7145// API operation ListRules for usage and error information. 7146// 7147// Returned Error Types: 7148// * WAFInternalErrorException 7149// The operation failed because of a system problem, even though the request 7150// was valid. Retry your request. 7151// 7152// * WAFInvalidAccountException 7153// The operation failed because you tried to create, update, or delete an object 7154// by using an invalid account identifier. 7155// 7156// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListRules 7157func (c *WAFRegional) ListRules(input *waf.ListRulesInput) (*waf.ListRulesOutput, error) { 7158 req, out := c.ListRulesRequest(input) 7159 return out, req.Send() 7160} 7161 7162// ListRulesWithContext is the same as ListRules with the addition of 7163// the ability to pass a context and additional request options. 7164// 7165// See ListRules for details on how to use this API operation. 7166// 7167// The context must be non-nil and will be used for request cancellation. If 7168// the context is nil a panic will occur. In the future the SDK may create 7169// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7170// for more information on using Contexts. 7171func (c *WAFRegional) ListRulesWithContext(ctx aws.Context, input *waf.ListRulesInput, opts ...request.Option) (*waf.ListRulesOutput, error) { 7172 req, out := c.ListRulesRequest(input) 7173 req.SetContext(ctx) 7174 req.ApplyOptions(opts...) 7175 return out, req.Send() 7176} 7177 7178const opListSizeConstraintSets = "ListSizeConstraintSets" 7179 7180// ListSizeConstraintSetsRequest generates a "aws/request.Request" representing the 7181// client's request for the ListSizeConstraintSets operation. The "output" return 7182// value will be populated with the request's response once the request completes 7183// successfully. 7184// 7185// Use "Send" method on the returned Request to send the API call to the service. 7186// the "output" return value is not valid until after Send returns without error. 7187// 7188// See ListSizeConstraintSets for more information on using the ListSizeConstraintSets 7189// API call, and error handling. 7190// 7191// This method is useful when you want to inject custom logic or configuration 7192// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7193// 7194// 7195// // Example sending a request using the ListSizeConstraintSetsRequest method. 7196// req, resp := client.ListSizeConstraintSetsRequest(params) 7197// 7198// err := req.Send() 7199// if err == nil { // resp is now filled 7200// fmt.Println(resp) 7201// } 7202// 7203// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListSizeConstraintSets 7204func (c *WAFRegional) ListSizeConstraintSetsRequest(input *waf.ListSizeConstraintSetsInput) (req *request.Request, output *waf.ListSizeConstraintSetsOutput) { 7205 op := &request.Operation{ 7206 Name: opListSizeConstraintSets, 7207 HTTPMethod: "POST", 7208 HTTPPath: "/", 7209 } 7210 7211 if input == nil { 7212 input = &waf.ListSizeConstraintSetsInput{} 7213 } 7214 7215 output = &waf.ListSizeConstraintSetsOutput{} 7216 req = c.newRequest(op, input, output) 7217 return 7218} 7219 7220// ListSizeConstraintSets API operation for AWS WAF Regional. 7221// 7222// 7223// This is AWS WAF Classic documentation. For more information, see AWS WAF 7224// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7225// in the developer guide. 7226// 7227// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7228// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7229// With the latest version, AWS WAF has a single set of endpoints for regional 7230// and global use. 7231// 7232// Returns an array of SizeConstraintSetSummary objects. 7233// 7234// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7235// with awserr.Error's Code and Message methods to get detailed information about 7236// the error. 7237// 7238// See the AWS API reference guide for AWS WAF Regional's 7239// API operation ListSizeConstraintSets for usage and error information. 7240// 7241// Returned Error Types: 7242// * WAFInternalErrorException 7243// The operation failed because of a system problem, even though the request 7244// was valid. Retry your request. 7245// 7246// * WAFInvalidAccountException 7247// The operation failed because you tried to create, update, or delete an object 7248// by using an invalid account identifier. 7249// 7250// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListSizeConstraintSets 7251func (c *WAFRegional) ListSizeConstraintSets(input *waf.ListSizeConstraintSetsInput) (*waf.ListSizeConstraintSetsOutput, error) { 7252 req, out := c.ListSizeConstraintSetsRequest(input) 7253 return out, req.Send() 7254} 7255 7256// ListSizeConstraintSetsWithContext is the same as ListSizeConstraintSets with the addition of 7257// the ability to pass a context and additional request options. 7258// 7259// See ListSizeConstraintSets for details on how to use this API operation. 7260// 7261// The context must be non-nil and will be used for request cancellation. If 7262// the context is nil a panic will occur. In the future the SDK may create 7263// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7264// for more information on using Contexts. 7265func (c *WAFRegional) ListSizeConstraintSetsWithContext(ctx aws.Context, input *waf.ListSizeConstraintSetsInput, opts ...request.Option) (*waf.ListSizeConstraintSetsOutput, error) { 7266 req, out := c.ListSizeConstraintSetsRequest(input) 7267 req.SetContext(ctx) 7268 req.ApplyOptions(opts...) 7269 return out, req.Send() 7270} 7271 7272const opListSqlInjectionMatchSets = "ListSqlInjectionMatchSets" 7273 7274// ListSqlInjectionMatchSetsRequest generates a "aws/request.Request" representing the 7275// client's request for the ListSqlInjectionMatchSets operation. The "output" return 7276// value will be populated with the request's response once the request completes 7277// successfully. 7278// 7279// Use "Send" method on the returned Request to send the API call to the service. 7280// the "output" return value is not valid until after Send returns without error. 7281// 7282// See ListSqlInjectionMatchSets for more information on using the ListSqlInjectionMatchSets 7283// API call, and error handling. 7284// 7285// This method is useful when you want to inject custom logic or configuration 7286// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7287// 7288// 7289// // Example sending a request using the ListSqlInjectionMatchSetsRequest method. 7290// req, resp := client.ListSqlInjectionMatchSetsRequest(params) 7291// 7292// err := req.Send() 7293// if err == nil { // resp is now filled 7294// fmt.Println(resp) 7295// } 7296// 7297// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListSqlInjectionMatchSets 7298func (c *WAFRegional) ListSqlInjectionMatchSetsRequest(input *waf.ListSqlInjectionMatchSetsInput) (req *request.Request, output *waf.ListSqlInjectionMatchSetsOutput) { 7299 op := &request.Operation{ 7300 Name: opListSqlInjectionMatchSets, 7301 HTTPMethod: "POST", 7302 HTTPPath: "/", 7303 } 7304 7305 if input == nil { 7306 input = &waf.ListSqlInjectionMatchSetsInput{} 7307 } 7308 7309 output = &waf.ListSqlInjectionMatchSetsOutput{} 7310 req = c.newRequest(op, input, output) 7311 return 7312} 7313 7314// ListSqlInjectionMatchSets API operation for AWS WAF Regional. 7315// 7316// 7317// This is AWS WAF Classic documentation. For more information, see AWS WAF 7318// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7319// in the developer guide. 7320// 7321// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7322// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7323// With the latest version, AWS WAF has a single set of endpoints for regional 7324// and global use. 7325// 7326// Returns an array of SqlInjectionMatchSet objects. 7327// 7328// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7329// with awserr.Error's Code and Message methods to get detailed information about 7330// the error. 7331// 7332// See the AWS API reference guide for AWS WAF Regional's 7333// API operation ListSqlInjectionMatchSets for usage and error information. 7334// 7335// Returned Error Types: 7336// * WAFInternalErrorException 7337// The operation failed because of a system problem, even though the request 7338// was valid. Retry your request. 7339// 7340// * WAFInvalidAccountException 7341// The operation failed because you tried to create, update, or delete an object 7342// by using an invalid account identifier. 7343// 7344// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListSqlInjectionMatchSets 7345func (c *WAFRegional) ListSqlInjectionMatchSets(input *waf.ListSqlInjectionMatchSetsInput) (*waf.ListSqlInjectionMatchSetsOutput, error) { 7346 req, out := c.ListSqlInjectionMatchSetsRequest(input) 7347 return out, req.Send() 7348} 7349 7350// ListSqlInjectionMatchSetsWithContext is the same as ListSqlInjectionMatchSets with the addition of 7351// the ability to pass a context and additional request options. 7352// 7353// See ListSqlInjectionMatchSets for details on how to use this API operation. 7354// 7355// The context must be non-nil and will be used for request cancellation. If 7356// the context is nil a panic will occur. In the future the SDK may create 7357// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7358// for more information on using Contexts. 7359func (c *WAFRegional) ListSqlInjectionMatchSetsWithContext(ctx aws.Context, input *waf.ListSqlInjectionMatchSetsInput, opts ...request.Option) (*waf.ListSqlInjectionMatchSetsOutput, error) { 7360 req, out := c.ListSqlInjectionMatchSetsRequest(input) 7361 req.SetContext(ctx) 7362 req.ApplyOptions(opts...) 7363 return out, req.Send() 7364} 7365 7366const opListSubscribedRuleGroups = "ListSubscribedRuleGroups" 7367 7368// ListSubscribedRuleGroupsRequest generates a "aws/request.Request" representing the 7369// client's request for the ListSubscribedRuleGroups operation. The "output" return 7370// value will be populated with the request's response once the request completes 7371// successfully. 7372// 7373// Use "Send" method on the returned Request to send the API call to the service. 7374// the "output" return value is not valid until after Send returns without error. 7375// 7376// See ListSubscribedRuleGroups for more information on using the ListSubscribedRuleGroups 7377// API call, and error handling. 7378// 7379// This method is useful when you want to inject custom logic or configuration 7380// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7381// 7382// 7383// // Example sending a request using the ListSubscribedRuleGroupsRequest method. 7384// req, resp := client.ListSubscribedRuleGroupsRequest(params) 7385// 7386// err := req.Send() 7387// if err == nil { // resp is now filled 7388// fmt.Println(resp) 7389// } 7390// 7391// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListSubscribedRuleGroups 7392func (c *WAFRegional) ListSubscribedRuleGroupsRequest(input *waf.ListSubscribedRuleGroupsInput) (req *request.Request, output *waf.ListSubscribedRuleGroupsOutput) { 7393 op := &request.Operation{ 7394 Name: opListSubscribedRuleGroups, 7395 HTTPMethod: "POST", 7396 HTTPPath: "/", 7397 } 7398 7399 if input == nil { 7400 input = &waf.ListSubscribedRuleGroupsInput{} 7401 } 7402 7403 output = &waf.ListSubscribedRuleGroupsOutput{} 7404 req = c.newRequest(op, input, output) 7405 return 7406} 7407 7408// ListSubscribedRuleGroups API operation for AWS WAF Regional. 7409// 7410// 7411// This is AWS WAF Classic documentation. For more information, see AWS WAF 7412// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7413// in the developer guide. 7414// 7415// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7416// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7417// With the latest version, AWS WAF has a single set of endpoints for regional 7418// and global use. 7419// 7420// Returns an array of RuleGroup objects that you are subscribed to. 7421// 7422// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7423// with awserr.Error's Code and Message methods to get detailed information about 7424// the error. 7425// 7426// See the AWS API reference guide for AWS WAF Regional's 7427// API operation ListSubscribedRuleGroups for usage and error information. 7428// 7429// Returned Error Types: 7430// * WAFNonexistentItemException 7431// The operation failed because the referenced object doesn't exist. 7432// 7433// * WAFInternalErrorException 7434// The operation failed because of a system problem, even though the request 7435// was valid. Retry your request. 7436// 7437// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListSubscribedRuleGroups 7438func (c *WAFRegional) ListSubscribedRuleGroups(input *waf.ListSubscribedRuleGroupsInput) (*waf.ListSubscribedRuleGroupsOutput, error) { 7439 req, out := c.ListSubscribedRuleGroupsRequest(input) 7440 return out, req.Send() 7441} 7442 7443// ListSubscribedRuleGroupsWithContext is the same as ListSubscribedRuleGroups with the addition of 7444// the ability to pass a context and additional request options. 7445// 7446// See ListSubscribedRuleGroups for details on how to use this API operation. 7447// 7448// The context must be non-nil and will be used for request cancellation. If 7449// the context is nil a panic will occur. In the future the SDK may create 7450// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7451// for more information on using Contexts. 7452func (c *WAFRegional) ListSubscribedRuleGroupsWithContext(ctx aws.Context, input *waf.ListSubscribedRuleGroupsInput, opts ...request.Option) (*waf.ListSubscribedRuleGroupsOutput, error) { 7453 req, out := c.ListSubscribedRuleGroupsRequest(input) 7454 req.SetContext(ctx) 7455 req.ApplyOptions(opts...) 7456 return out, req.Send() 7457} 7458 7459const opListTagsForResource = "ListTagsForResource" 7460 7461// ListTagsForResourceRequest generates a "aws/request.Request" representing the 7462// client's request for the ListTagsForResource operation. The "output" return 7463// value will be populated with the request's response once the request completes 7464// successfully. 7465// 7466// Use "Send" method on the returned Request to send the API call to the service. 7467// the "output" return value is not valid until after Send returns without error. 7468// 7469// See ListTagsForResource for more information on using the ListTagsForResource 7470// API call, and error handling. 7471// 7472// This method is useful when you want to inject custom logic or configuration 7473// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7474// 7475// 7476// // Example sending a request using the ListTagsForResourceRequest method. 7477// req, resp := client.ListTagsForResourceRequest(params) 7478// 7479// err := req.Send() 7480// if err == nil { // resp is now filled 7481// fmt.Println(resp) 7482// } 7483// 7484// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListTagsForResource 7485func (c *WAFRegional) ListTagsForResourceRequest(input *waf.ListTagsForResourceInput) (req *request.Request, output *waf.ListTagsForResourceOutput) { 7486 op := &request.Operation{ 7487 Name: opListTagsForResource, 7488 HTTPMethod: "POST", 7489 HTTPPath: "/", 7490 } 7491 7492 if input == nil { 7493 input = &waf.ListTagsForResourceInput{} 7494 } 7495 7496 output = &waf.ListTagsForResourceOutput{} 7497 req = c.newRequest(op, input, output) 7498 return 7499} 7500 7501// ListTagsForResource API operation for AWS WAF Regional. 7502// 7503// 7504// This is AWS WAF Classic documentation. For more information, see AWS WAF 7505// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7506// in the developer guide. 7507// 7508// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7509// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7510// With the latest version, AWS WAF has a single set of endpoints for regional 7511// and global use. 7512// 7513// Retrieves the tags associated with the specified AWS resource. Tags are key:value 7514// pairs that you can use to categorize and manage your resources, for purposes 7515// like billing. For example, you might set the tag key to "customer" and the 7516// value to the customer name or ID. You can specify one or more tags to add 7517// to each AWS resource, up to 50 tags for a resource. 7518// 7519// Tagging is only available through the API, SDKs, and CLI. You can't manage 7520// or view tags through the AWS WAF Classic console. You can tag the AWS resources 7521// that you manage through AWS WAF Classic: web ACLs, rule groups, and rules. 7522// 7523// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7524// with awserr.Error's Code and Message methods to get detailed information about 7525// the error. 7526// 7527// See the AWS API reference guide for AWS WAF Regional's 7528// API operation ListTagsForResource for usage and error information. 7529// 7530// Returned Error Types: 7531// * WAFInternalErrorException 7532// The operation failed because of a system problem, even though the request 7533// was valid. Retry your request. 7534// 7535// * WAFInvalidParameterException 7536// The operation failed because AWS WAF didn't recognize a parameter in the 7537// request. For example: 7538// 7539// * You specified an invalid parameter name. 7540// 7541// * You specified an invalid value. 7542// 7543// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 7544// using an action other than INSERT or DELETE. 7545// 7546// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 7547// BLOCK, or COUNT. 7548// 7549// * You tried to create a RateBasedRule with a RateKey value other than 7550// IP. 7551// 7552// * You tried to update a WebACL with a WafAction Type other than ALLOW, 7553// BLOCK, or COUNT. 7554// 7555// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 7556// HEADER, METHOD, QUERY_STRING, URI, or BODY. 7557// 7558// * You tried to update a ByteMatchSet with a Field of HEADER but no value 7559// for Data. 7560// 7561// * Your request references an ARN that is malformed, or corresponds to 7562// a resource with which a web ACL cannot be associated. 7563// 7564// * WAFNonexistentItemException 7565// The operation failed because the referenced object doesn't exist. 7566// 7567// * WAFBadRequestException 7568// 7569// * WAFTagOperationException 7570// 7571// * WAFTagOperationInternalErrorException 7572// 7573// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListTagsForResource 7574func (c *WAFRegional) ListTagsForResource(input *waf.ListTagsForResourceInput) (*waf.ListTagsForResourceOutput, error) { 7575 req, out := c.ListTagsForResourceRequest(input) 7576 return out, req.Send() 7577} 7578 7579// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 7580// the ability to pass a context and additional request options. 7581// 7582// See ListTagsForResource for details on how to use this API operation. 7583// 7584// The context must be non-nil and will be used for request cancellation. If 7585// the context is nil a panic will occur. In the future the SDK may create 7586// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7587// for more information on using Contexts. 7588func (c *WAFRegional) ListTagsForResourceWithContext(ctx aws.Context, input *waf.ListTagsForResourceInput, opts ...request.Option) (*waf.ListTagsForResourceOutput, error) { 7589 req, out := c.ListTagsForResourceRequest(input) 7590 req.SetContext(ctx) 7591 req.ApplyOptions(opts...) 7592 return out, req.Send() 7593} 7594 7595const opListWebACLs = "ListWebACLs" 7596 7597// ListWebACLsRequest generates a "aws/request.Request" representing the 7598// client's request for the ListWebACLs operation. The "output" return 7599// value will be populated with the request's response once the request completes 7600// successfully. 7601// 7602// Use "Send" method on the returned Request to send the API call to the service. 7603// the "output" return value is not valid until after Send returns without error. 7604// 7605// See ListWebACLs for more information on using the ListWebACLs 7606// API call, and error handling. 7607// 7608// This method is useful when you want to inject custom logic or configuration 7609// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7610// 7611// 7612// // Example sending a request using the ListWebACLsRequest method. 7613// req, resp := client.ListWebACLsRequest(params) 7614// 7615// err := req.Send() 7616// if err == nil { // resp is now filled 7617// fmt.Println(resp) 7618// } 7619// 7620// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListWebACLs 7621func (c *WAFRegional) ListWebACLsRequest(input *waf.ListWebACLsInput) (req *request.Request, output *waf.ListWebACLsOutput) { 7622 op := &request.Operation{ 7623 Name: opListWebACLs, 7624 HTTPMethod: "POST", 7625 HTTPPath: "/", 7626 } 7627 7628 if input == nil { 7629 input = &waf.ListWebACLsInput{} 7630 } 7631 7632 output = &waf.ListWebACLsOutput{} 7633 req = c.newRequest(op, input, output) 7634 return 7635} 7636 7637// ListWebACLs API operation for AWS WAF Regional. 7638// 7639// 7640// This is AWS WAF Classic documentation. For more information, see AWS WAF 7641// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7642// in the developer guide. 7643// 7644// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7645// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7646// With the latest version, AWS WAF has a single set of endpoints for regional 7647// and global use. 7648// 7649// Returns an array of WebACLSummary objects in the response. 7650// 7651// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7652// with awserr.Error's Code and Message methods to get detailed information about 7653// the error. 7654// 7655// See the AWS API reference guide for AWS WAF Regional's 7656// API operation ListWebACLs for usage and error information. 7657// 7658// Returned Error Types: 7659// * WAFInternalErrorException 7660// The operation failed because of a system problem, even though the request 7661// was valid. Retry your request. 7662// 7663// * WAFInvalidAccountException 7664// The operation failed because you tried to create, update, or delete an object 7665// by using an invalid account identifier. 7666// 7667// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListWebACLs 7668func (c *WAFRegional) ListWebACLs(input *waf.ListWebACLsInput) (*waf.ListWebACLsOutput, error) { 7669 req, out := c.ListWebACLsRequest(input) 7670 return out, req.Send() 7671} 7672 7673// ListWebACLsWithContext is the same as ListWebACLs with the addition of 7674// the ability to pass a context and additional request options. 7675// 7676// See ListWebACLs for details on how to use this API operation. 7677// 7678// The context must be non-nil and will be used for request cancellation. If 7679// the context is nil a panic will occur. In the future the SDK may create 7680// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7681// for more information on using Contexts. 7682func (c *WAFRegional) ListWebACLsWithContext(ctx aws.Context, input *waf.ListWebACLsInput, opts ...request.Option) (*waf.ListWebACLsOutput, error) { 7683 req, out := c.ListWebACLsRequest(input) 7684 req.SetContext(ctx) 7685 req.ApplyOptions(opts...) 7686 return out, req.Send() 7687} 7688 7689const opListXssMatchSets = "ListXssMatchSets" 7690 7691// ListXssMatchSetsRequest generates a "aws/request.Request" representing the 7692// client's request for the ListXssMatchSets operation. The "output" return 7693// value will be populated with the request's response once the request completes 7694// successfully. 7695// 7696// Use "Send" method on the returned Request to send the API call to the service. 7697// the "output" return value is not valid until after Send returns without error. 7698// 7699// See ListXssMatchSets for more information on using the ListXssMatchSets 7700// API call, and error handling. 7701// 7702// This method is useful when you want to inject custom logic or configuration 7703// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7704// 7705// 7706// // Example sending a request using the ListXssMatchSetsRequest method. 7707// req, resp := client.ListXssMatchSetsRequest(params) 7708// 7709// err := req.Send() 7710// if err == nil { // resp is now filled 7711// fmt.Println(resp) 7712// } 7713// 7714// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListXssMatchSets 7715func (c *WAFRegional) ListXssMatchSetsRequest(input *waf.ListXssMatchSetsInput) (req *request.Request, output *waf.ListXssMatchSetsOutput) { 7716 op := &request.Operation{ 7717 Name: opListXssMatchSets, 7718 HTTPMethod: "POST", 7719 HTTPPath: "/", 7720 } 7721 7722 if input == nil { 7723 input = &waf.ListXssMatchSetsInput{} 7724 } 7725 7726 output = &waf.ListXssMatchSetsOutput{} 7727 req = c.newRequest(op, input, output) 7728 return 7729} 7730 7731// ListXssMatchSets API operation for AWS WAF Regional. 7732// 7733// 7734// This is AWS WAF Classic documentation. For more information, see AWS WAF 7735// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7736// in the developer guide. 7737// 7738// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7739// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7740// With the latest version, AWS WAF has a single set of endpoints for regional 7741// and global use. 7742// 7743// Returns an array of XssMatchSet objects. 7744// 7745// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7746// with awserr.Error's Code and Message methods to get detailed information about 7747// the error. 7748// 7749// See the AWS API reference guide for AWS WAF Regional's 7750// API operation ListXssMatchSets for usage and error information. 7751// 7752// Returned Error Types: 7753// * WAFInternalErrorException 7754// The operation failed because of a system problem, even though the request 7755// was valid. Retry your request. 7756// 7757// * WAFInvalidAccountException 7758// The operation failed because you tried to create, update, or delete an object 7759// by using an invalid account identifier. 7760// 7761// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/ListXssMatchSets 7762func (c *WAFRegional) ListXssMatchSets(input *waf.ListXssMatchSetsInput) (*waf.ListXssMatchSetsOutput, error) { 7763 req, out := c.ListXssMatchSetsRequest(input) 7764 return out, req.Send() 7765} 7766 7767// ListXssMatchSetsWithContext is the same as ListXssMatchSets with the addition of 7768// the ability to pass a context and additional request options. 7769// 7770// See ListXssMatchSets for details on how to use this API operation. 7771// 7772// The context must be non-nil and will be used for request cancellation. If 7773// the context is nil a panic will occur. In the future the SDK may create 7774// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7775// for more information on using Contexts. 7776func (c *WAFRegional) ListXssMatchSetsWithContext(ctx aws.Context, input *waf.ListXssMatchSetsInput, opts ...request.Option) (*waf.ListXssMatchSetsOutput, error) { 7777 req, out := c.ListXssMatchSetsRequest(input) 7778 req.SetContext(ctx) 7779 req.ApplyOptions(opts...) 7780 return out, req.Send() 7781} 7782 7783const opPutLoggingConfiguration = "PutLoggingConfiguration" 7784 7785// PutLoggingConfigurationRequest generates a "aws/request.Request" representing the 7786// client's request for the PutLoggingConfiguration operation. The "output" return 7787// value will be populated with the request's response once the request completes 7788// successfully. 7789// 7790// Use "Send" method on the returned Request to send the API call to the service. 7791// the "output" return value is not valid until after Send returns without error. 7792// 7793// See PutLoggingConfiguration for more information on using the PutLoggingConfiguration 7794// API call, and error handling. 7795// 7796// This method is useful when you want to inject custom logic or configuration 7797// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7798// 7799// 7800// // Example sending a request using the PutLoggingConfigurationRequest method. 7801// req, resp := client.PutLoggingConfigurationRequest(params) 7802// 7803// err := req.Send() 7804// if err == nil { // resp is now filled 7805// fmt.Println(resp) 7806// } 7807// 7808// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/PutLoggingConfiguration 7809func (c *WAFRegional) PutLoggingConfigurationRequest(input *waf.PutLoggingConfigurationInput) (req *request.Request, output *waf.PutLoggingConfigurationOutput) { 7810 op := &request.Operation{ 7811 Name: opPutLoggingConfiguration, 7812 HTTPMethod: "POST", 7813 HTTPPath: "/", 7814 } 7815 7816 if input == nil { 7817 input = &waf.PutLoggingConfigurationInput{} 7818 } 7819 7820 output = &waf.PutLoggingConfigurationOutput{} 7821 req = c.newRequest(op, input, output) 7822 return 7823} 7824 7825// PutLoggingConfiguration API operation for AWS WAF Regional. 7826// 7827// 7828// This is AWS WAF Classic documentation. For more information, see AWS WAF 7829// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7830// in the developer guide. 7831// 7832// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7833// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7834// With the latest version, AWS WAF has a single set of endpoints for regional 7835// and global use. 7836// 7837// Associates a LoggingConfiguration with a specified web ACL. 7838// 7839// You can access information about all traffic that AWS WAF inspects using 7840// the following steps: 7841// 7842// Create an Amazon Kinesis Data Firehose. 7843// 7844// Create the data firehose with a PUT source and in the region that you are 7845// operating. However, if you are capturing logs for Amazon CloudFront, always 7846// create the firehose in US East (N. Virginia). 7847// 7848// Do not create the data firehose using a Kinesis stream as your source. 7849// 7850// Associate that firehose to your web ACL using a PutLoggingConfiguration request. 7851// 7852// When you successfully enable logging using a PutLoggingConfiguration request, 7853// AWS WAF will create a service linked role with the necessary permissions 7854// to write logs to the Amazon Kinesis Data Firehose. For more information, 7855// see Logging Web ACL Traffic Information (https://docs.aws.amazon.com/waf/latest/developerguide/logging.html) 7856// in the AWS WAF Developer Guide. 7857// 7858// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7859// with awserr.Error's Code and Message methods to get detailed information about 7860// the error. 7861// 7862// See the AWS API reference guide for AWS WAF Regional's 7863// API operation PutLoggingConfiguration for usage and error information. 7864// 7865// Returned Error Types: 7866// * WAFInternalErrorException 7867// The operation failed because of a system problem, even though the request 7868// was valid. Retry your request. 7869// 7870// * WAFNonexistentItemException 7871// The operation failed because the referenced object doesn't exist. 7872// 7873// * WAFStaleDataException 7874// The operation failed because you tried to create, update, or delete an object 7875// by using a change token that has already been used. 7876// 7877// * WAFServiceLinkedRoleErrorException 7878// AWS WAF is not able to access the service linked role. This can be caused 7879// by a previous PutLoggingConfiguration request, which can lock the service 7880// linked role for about 20 seconds. Please try your request again. The service 7881// linked role can also be locked by a previous DeleteServiceLinkedRole request, 7882// which can lock the role for 15 minutes or more. If you recently made a DeleteServiceLinkedRole, 7883// wait at least 15 minutes and try the request again. If you receive this same 7884// exception again, you will have to wait additional time until the role is 7885// unlocked. 7886// 7887// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/PutLoggingConfiguration 7888func (c *WAFRegional) PutLoggingConfiguration(input *waf.PutLoggingConfigurationInput) (*waf.PutLoggingConfigurationOutput, error) { 7889 req, out := c.PutLoggingConfigurationRequest(input) 7890 return out, req.Send() 7891} 7892 7893// PutLoggingConfigurationWithContext is the same as PutLoggingConfiguration with the addition of 7894// the ability to pass a context and additional request options. 7895// 7896// See PutLoggingConfiguration for details on how to use this API operation. 7897// 7898// The context must be non-nil and will be used for request cancellation. If 7899// the context is nil a panic will occur. In the future the SDK may create 7900// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 7901// for more information on using Contexts. 7902func (c *WAFRegional) PutLoggingConfigurationWithContext(ctx aws.Context, input *waf.PutLoggingConfigurationInput, opts ...request.Option) (*waf.PutLoggingConfigurationOutput, error) { 7903 req, out := c.PutLoggingConfigurationRequest(input) 7904 req.SetContext(ctx) 7905 req.ApplyOptions(opts...) 7906 return out, req.Send() 7907} 7908 7909const opPutPermissionPolicy = "PutPermissionPolicy" 7910 7911// PutPermissionPolicyRequest generates a "aws/request.Request" representing the 7912// client's request for the PutPermissionPolicy operation. The "output" return 7913// value will be populated with the request's response once the request completes 7914// successfully. 7915// 7916// Use "Send" method on the returned Request to send the API call to the service. 7917// the "output" return value is not valid until after Send returns without error. 7918// 7919// See PutPermissionPolicy for more information on using the PutPermissionPolicy 7920// API call, and error handling. 7921// 7922// This method is useful when you want to inject custom logic or configuration 7923// into the SDK's request lifecycle. Such as custom headers, or retry logic. 7924// 7925// 7926// // Example sending a request using the PutPermissionPolicyRequest method. 7927// req, resp := client.PutPermissionPolicyRequest(params) 7928// 7929// err := req.Send() 7930// if err == nil { // resp is now filled 7931// fmt.Println(resp) 7932// } 7933// 7934// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/PutPermissionPolicy 7935func (c *WAFRegional) PutPermissionPolicyRequest(input *waf.PutPermissionPolicyInput) (req *request.Request, output *waf.PutPermissionPolicyOutput) { 7936 op := &request.Operation{ 7937 Name: opPutPermissionPolicy, 7938 HTTPMethod: "POST", 7939 HTTPPath: "/", 7940 } 7941 7942 if input == nil { 7943 input = &waf.PutPermissionPolicyInput{} 7944 } 7945 7946 output = &waf.PutPermissionPolicyOutput{} 7947 req = c.newRequest(op, input, output) 7948 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 7949 return 7950} 7951 7952// PutPermissionPolicy API operation for AWS WAF Regional. 7953// 7954// 7955// This is AWS WAF Classic documentation. For more information, see AWS WAF 7956// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 7957// in the developer guide. 7958// 7959// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 7960// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 7961// With the latest version, AWS WAF has a single set of endpoints for regional 7962// and global use. 7963// 7964// Attaches an IAM policy to the specified resource. The only supported use 7965// for this action is to share a RuleGroup across accounts. 7966// 7967// The PutPermissionPolicy is subject to the following restrictions: 7968// 7969// * You can attach only one policy with each PutPermissionPolicy request. 7970// 7971// * The policy must include an Effect, Action and Principal. 7972// 7973// * Effect must specify Allow. 7974// 7975// * The Action in the policy must be waf:UpdateWebACL, waf-regional:UpdateWebACL, 7976// waf:GetRuleGroup and waf-regional:GetRuleGroup . Any extra or wildcard 7977// actions in the policy will be rejected. 7978// 7979// * The policy cannot include a Resource parameter. 7980// 7981// * The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup 7982// must exist in the same region. 7983// 7984// * The user making the request must be the owner of the RuleGroup. 7985// 7986// * Your policy must be composed using IAM Policy version 2012-10-17. 7987// 7988// For more information, see IAM Policies (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html). 7989// 7990// An example of a valid policy parameter is shown in the Examples section below. 7991// 7992// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 7993// with awserr.Error's Code and Message methods to get detailed information about 7994// the error. 7995// 7996// See the AWS API reference guide for AWS WAF Regional's 7997// API operation PutPermissionPolicy for usage and error information. 7998// 7999// Returned Error Types: 8000// * WAFInternalErrorException 8001// The operation failed because of a system problem, even though the request 8002// was valid. Retry your request. 8003// 8004// * WAFStaleDataException 8005// The operation failed because you tried to create, update, or delete an object 8006// by using a change token that has already been used. 8007// 8008// * WAFNonexistentItemException 8009// The operation failed because the referenced object doesn't exist. 8010// 8011// * WAFInvalidPermissionPolicyException 8012// The operation failed because the specified policy is not in the proper format. 8013// 8014// The policy is subject to the following restrictions: 8015// 8016// * You can attach only one policy with each PutPermissionPolicy request. 8017// 8018// * The policy must include an Effect, Action and Principal. 8019// 8020// * Effect must specify Allow. 8021// 8022// * The Action in the policy must be waf:UpdateWebACL, waf-regional:UpdateWebACL, 8023// waf:GetRuleGroup and waf-regional:GetRuleGroup . Any extra or wildcard 8024// actions in the policy will be rejected. 8025// 8026// * The policy cannot include a Resource parameter. 8027// 8028// * The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup 8029// must exist in the same region. 8030// 8031// * The user making the request must be the owner of the RuleGroup. 8032// 8033// * Your policy must be composed using IAM Policy version 2012-10-17. 8034// 8035// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/PutPermissionPolicy 8036func (c *WAFRegional) PutPermissionPolicy(input *waf.PutPermissionPolicyInput) (*waf.PutPermissionPolicyOutput, error) { 8037 req, out := c.PutPermissionPolicyRequest(input) 8038 return out, req.Send() 8039} 8040 8041// PutPermissionPolicyWithContext is the same as PutPermissionPolicy with the addition of 8042// the ability to pass a context and additional request options. 8043// 8044// See PutPermissionPolicy for details on how to use this API operation. 8045// 8046// The context must be non-nil and will be used for request cancellation. If 8047// the context is nil a panic will occur. In the future the SDK may create 8048// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8049// for more information on using Contexts. 8050func (c *WAFRegional) PutPermissionPolicyWithContext(ctx aws.Context, input *waf.PutPermissionPolicyInput, opts ...request.Option) (*waf.PutPermissionPolicyOutput, error) { 8051 req, out := c.PutPermissionPolicyRequest(input) 8052 req.SetContext(ctx) 8053 req.ApplyOptions(opts...) 8054 return out, req.Send() 8055} 8056 8057const opTagResource = "TagResource" 8058 8059// TagResourceRequest generates a "aws/request.Request" representing the 8060// client's request for the TagResource operation. The "output" return 8061// value will be populated with the request's response once the request completes 8062// successfully. 8063// 8064// Use "Send" method on the returned Request to send the API call to the service. 8065// the "output" return value is not valid until after Send returns without error. 8066// 8067// See TagResource for more information on using the TagResource 8068// API call, and error handling. 8069// 8070// This method is useful when you want to inject custom logic or configuration 8071// into the SDK's request lifecycle. Such as custom headers, or retry logic. 8072// 8073// 8074// // Example sending a request using the TagResourceRequest method. 8075// req, resp := client.TagResourceRequest(params) 8076// 8077// err := req.Send() 8078// if err == nil { // resp is now filled 8079// fmt.Println(resp) 8080// } 8081// 8082// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/TagResource 8083func (c *WAFRegional) TagResourceRequest(input *waf.TagResourceInput) (req *request.Request, output *waf.TagResourceOutput) { 8084 op := &request.Operation{ 8085 Name: opTagResource, 8086 HTTPMethod: "POST", 8087 HTTPPath: "/", 8088 } 8089 8090 if input == nil { 8091 input = &waf.TagResourceInput{} 8092 } 8093 8094 output = &waf.TagResourceOutput{} 8095 req = c.newRequest(op, input, output) 8096 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 8097 return 8098} 8099 8100// TagResource API operation for AWS WAF Regional. 8101// 8102// 8103// This is AWS WAF Classic documentation. For more information, see AWS WAF 8104// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 8105// in the developer guide. 8106// 8107// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 8108// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 8109// With the latest version, AWS WAF has a single set of endpoints for regional 8110// and global use. 8111// 8112// Associates tags with the specified AWS resource. Tags are key:value pairs 8113// that you can use to categorize and manage your resources, for purposes like 8114// billing. For example, you might set the tag key to "customer" and the value 8115// to the customer name or ID. You can specify one or more tags to add to each 8116// AWS resource, up to 50 tags for a resource. 8117// 8118// Tagging is only available through the API, SDKs, and CLI. You can't manage 8119// or view tags through the AWS WAF Classic console. You can use this action 8120// to tag the AWS resources that you manage through AWS WAF Classic: web ACLs, 8121// rule groups, and rules. 8122// 8123// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8124// with awserr.Error's Code and Message methods to get detailed information about 8125// the error. 8126// 8127// See the AWS API reference guide for AWS WAF Regional's 8128// API operation TagResource for usage and error information. 8129// 8130// Returned Error Types: 8131// * WAFInternalErrorException 8132// The operation failed because of a system problem, even though the request 8133// was valid. Retry your request. 8134// 8135// * WAFInvalidParameterException 8136// The operation failed because AWS WAF didn't recognize a parameter in the 8137// request. For example: 8138// 8139// * You specified an invalid parameter name. 8140// 8141// * You specified an invalid value. 8142// 8143// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 8144// using an action other than INSERT or DELETE. 8145// 8146// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 8147// BLOCK, or COUNT. 8148// 8149// * You tried to create a RateBasedRule with a RateKey value other than 8150// IP. 8151// 8152// * You tried to update a WebACL with a WafAction Type other than ALLOW, 8153// BLOCK, or COUNT. 8154// 8155// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 8156// HEADER, METHOD, QUERY_STRING, URI, or BODY. 8157// 8158// * You tried to update a ByteMatchSet with a Field of HEADER but no value 8159// for Data. 8160// 8161// * Your request references an ARN that is malformed, or corresponds to 8162// a resource with which a web ACL cannot be associated. 8163// 8164// * WAFLimitsExceededException 8165// The operation exceeds a resource limit, for example, the maximum number of 8166// WebACL objects that you can create for an AWS account. For more information, 8167// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 8168// in the AWS WAF Developer Guide. 8169// 8170// * WAFNonexistentItemException 8171// The operation failed because the referenced object doesn't exist. 8172// 8173// * WAFBadRequestException 8174// 8175// * WAFTagOperationException 8176// 8177// * WAFTagOperationInternalErrorException 8178// 8179// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/TagResource 8180func (c *WAFRegional) TagResource(input *waf.TagResourceInput) (*waf.TagResourceOutput, error) { 8181 req, out := c.TagResourceRequest(input) 8182 return out, req.Send() 8183} 8184 8185// TagResourceWithContext is the same as TagResource with the addition of 8186// the ability to pass a context and additional request options. 8187// 8188// See TagResource for details on how to use this API operation. 8189// 8190// The context must be non-nil and will be used for request cancellation. If 8191// the context is nil a panic will occur. In the future the SDK may create 8192// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8193// for more information on using Contexts. 8194func (c *WAFRegional) TagResourceWithContext(ctx aws.Context, input *waf.TagResourceInput, opts ...request.Option) (*waf.TagResourceOutput, error) { 8195 req, out := c.TagResourceRequest(input) 8196 req.SetContext(ctx) 8197 req.ApplyOptions(opts...) 8198 return out, req.Send() 8199} 8200 8201const opUntagResource = "UntagResource" 8202 8203// UntagResourceRequest generates a "aws/request.Request" representing the 8204// client's request for the UntagResource operation. The "output" return 8205// value will be populated with the request's response once the request completes 8206// successfully. 8207// 8208// Use "Send" method on the returned Request to send the API call to the service. 8209// the "output" return value is not valid until after Send returns without error. 8210// 8211// See UntagResource for more information on using the UntagResource 8212// API call, and error handling. 8213// 8214// This method is useful when you want to inject custom logic or configuration 8215// into the SDK's request lifecycle. Such as custom headers, or retry logic. 8216// 8217// 8218// // Example sending a request using the UntagResourceRequest method. 8219// req, resp := client.UntagResourceRequest(params) 8220// 8221// err := req.Send() 8222// if err == nil { // resp is now filled 8223// fmt.Println(resp) 8224// } 8225// 8226// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UntagResource 8227func (c *WAFRegional) UntagResourceRequest(input *waf.UntagResourceInput) (req *request.Request, output *waf.UntagResourceOutput) { 8228 op := &request.Operation{ 8229 Name: opUntagResource, 8230 HTTPMethod: "POST", 8231 HTTPPath: "/", 8232 } 8233 8234 if input == nil { 8235 input = &waf.UntagResourceInput{} 8236 } 8237 8238 output = &waf.UntagResourceOutput{} 8239 req = c.newRequest(op, input, output) 8240 req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 8241 return 8242} 8243 8244// UntagResource API operation for AWS WAF Regional. 8245// 8246// 8247// This is AWS WAF Classic documentation. For more information, see AWS WAF 8248// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 8249// in the developer guide. 8250// 8251// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 8252// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 8253// With the latest version, AWS WAF has a single set of endpoints for regional 8254// and global use. 8255// 8256// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8257// with awserr.Error's Code and Message methods to get detailed information about 8258// the error. 8259// 8260// See the AWS API reference guide for AWS WAF Regional's 8261// API operation UntagResource for usage and error information. 8262// 8263// Returned Error Types: 8264// * WAFInternalErrorException 8265// The operation failed because of a system problem, even though the request 8266// was valid. Retry your request. 8267// 8268// * WAFInvalidParameterException 8269// The operation failed because AWS WAF didn't recognize a parameter in the 8270// request. For example: 8271// 8272// * You specified an invalid parameter name. 8273// 8274// * You specified an invalid value. 8275// 8276// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 8277// using an action other than INSERT or DELETE. 8278// 8279// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 8280// BLOCK, or COUNT. 8281// 8282// * You tried to create a RateBasedRule with a RateKey value other than 8283// IP. 8284// 8285// * You tried to update a WebACL with a WafAction Type other than ALLOW, 8286// BLOCK, or COUNT. 8287// 8288// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 8289// HEADER, METHOD, QUERY_STRING, URI, or BODY. 8290// 8291// * You tried to update a ByteMatchSet with a Field of HEADER but no value 8292// for Data. 8293// 8294// * Your request references an ARN that is malformed, or corresponds to 8295// a resource with which a web ACL cannot be associated. 8296// 8297// * WAFNonexistentItemException 8298// The operation failed because the referenced object doesn't exist. 8299// 8300// * WAFBadRequestException 8301// 8302// * WAFTagOperationException 8303// 8304// * WAFTagOperationInternalErrorException 8305// 8306// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UntagResource 8307func (c *WAFRegional) UntagResource(input *waf.UntagResourceInput) (*waf.UntagResourceOutput, error) { 8308 req, out := c.UntagResourceRequest(input) 8309 return out, req.Send() 8310} 8311 8312// UntagResourceWithContext is the same as UntagResource with the addition of 8313// the ability to pass a context and additional request options. 8314// 8315// See UntagResource for details on how to use this API operation. 8316// 8317// The context must be non-nil and will be used for request cancellation. If 8318// the context is nil a panic will occur. In the future the SDK may create 8319// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8320// for more information on using Contexts. 8321func (c *WAFRegional) UntagResourceWithContext(ctx aws.Context, input *waf.UntagResourceInput, opts ...request.Option) (*waf.UntagResourceOutput, error) { 8322 req, out := c.UntagResourceRequest(input) 8323 req.SetContext(ctx) 8324 req.ApplyOptions(opts...) 8325 return out, req.Send() 8326} 8327 8328const opUpdateByteMatchSet = "UpdateByteMatchSet" 8329 8330// UpdateByteMatchSetRequest generates a "aws/request.Request" representing the 8331// client's request for the UpdateByteMatchSet operation. The "output" return 8332// value will be populated with the request's response once the request completes 8333// successfully. 8334// 8335// Use "Send" method on the returned Request to send the API call to the service. 8336// the "output" return value is not valid until after Send returns without error. 8337// 8338// See UpdateByteMatchSet for more information on using the UpdateByteMatchSet 8339// API call, and error handling. 8340// 8341// This method is useful when you want to inject custom logic or configuration 8342// into the SDK's request lifecycle. Such as custom headers, or retry logic. 8343// 8344// 8345// // Example sending a request using the UpdateByteMatchSetRequest method. 8346// req, resp := client.UpdateByteMatchSetRequest(params) 8347// 8348// err := req.Send() 8349// if err == nil { // resp is now filled 8350// fmt.Println(resp) 8351// } 8352// 8353// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateByteMatchSet 8354func (c *WAFRegional) UpdateByteMatchSetRequest(input *waf.UpdateByteMatchSetInput) (req *request.Request, output *waf.UpdateByteMatchSetOutput) { 8355 op := &request.Operation{ 8356 Name: opUpdateByteMatchSet, 8357 HTTPMethod: "POST", 8358 HTTPPath: "/", 8359 } 8360 8361 if input == nil { 8362 input = &waf.UpdateByteMatchSetInput{} 8363 } 8364 8365 output = &waf.UpdateByteMatchSetOutput{} 8366 req = c.newRequest(op, input, output) 8367 return 8368} 8369 8370// UpdateByteMatchSet API operation for AWS WAF Regional. 8371// 8372// 8373// This is AWS WAF Classic documentation. For more information, see AWS WAF 8374// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 8375// in the developer guide. 8376// 8377// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 8378// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 8379// With the latest version, AWS WAF has a single set of endpoints for regional 8380// and global use. 8381// 8382// Inserts or deletes ByteMatchTuple objects (filters) in a ByteMatchSet. For 8383// each ByteMatchTuple object, you specify the following values: 8384// 8385// * Whether to insert or delete the object from the array. If you want to 8386// change a ByteMatchSetUpdate object, you delete the existing object and 8387// add a new one. 8388// 8389// * The part of a web request that you want AWS WAF to inspect, such as 8390// a query string or the value of the User-Agent header. 8391// 8392// * The bytes (typically a string that corresponds with ASCII characters) 8393// that you want AWS WAF to look for. For more information, including how 8394// you specify the values for the AWS WAF API and the AWS CLI or SDKs, see 8395// TargetString in the ByteMatchTuple data type. 8396// 8397// * Where to look, such as at the beginning or the end of a query string. 8398// 8399// * Whether to perform any conversions on the request, such as converting 8400// it to lowercase, before inspecting it for the specified string. 8401// 8402// For example, you can add a ByteMatchSetUpdate object that matches web requests 8403// in which User-Agent headers contain the string BadBot. You can then configure 8404// AWS WAF to block those requests. 8405// 8406// To create and configure a ByteMatchSet, perform the following steps: 8407// 8408// Create a ByteMatchSet. For more information, see CreateByteMatchSet. 8409// 8410// Use GetChangeToken to get the change token that you provide in the ChangeToken 8411// parameter of an UpdateByteMatchSet request. 8412// 8413// Submit an UpdateByteMatchSet request to specify the part of the request that 8414// you want AWS WAF to inspect (for example, the header or the URI) and the 8415// value that you want AWS WAF to watch for. 8416// 8417// For more information about how to use the AWS WAF API to allow or block HTTP 8418// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 8419// 8420// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8421// with awserr.Error's Code and Message methods to get detailed information about 8422// the error. 8423// 8424// See the AWS API reference guide for AWS WAF Regional's 8425// API operation UpdateByteMatchSet for usage and error information. 8426// 8427// Returned Error Types: 8428// * WAFInternalErrorException 8429// The operation failed because of a system problem, even though the request 8430// was valid. Retry your request. 8431// 8432// * WAFInvalidAccountException 8433// The operation failed because you tried to create, update, or delete an object 8434// by using an invalid account identifier. 8435// 8436// * WAFInvalidOperationException 8437// The operation failed because there was nothing to do. For example: 8438// 8439// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 8440// specified WebACL. 8441// 8442// * You tried to remove an IP address from an IPSet, but the IP address 8443// isn't in the specified IPSet. 8444// 8445// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 8446// isn't in the specified WebACL. 8447// 8448// * You tried to add a Rule to a WebACL, but the Rule already exists in 8449// the specified WebACL. 8450// 8451// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 8452// already exists in the specified WebACL. 8453// 8454// * WAFInvalidParameterException 8455// The operation failed because AWS WAF didn't recognize a parameter in the 8456// request. For example: 8457// 8458// * You specified an invalid parameter name. 8459// 8460// * You specified an invalid value. 8461// 8462// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 8463// using an action other than INSERT or DELETE. 8464// 8465// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 8466// BLOCK, or COUNT. 8467// 8468// * You tried to create a RateBasedRule with a RateKey value other than 8469// IP. 8470// 8471// * You tried to update a WebACL with a WafAction Type other than ALLOW, 8472// BLOCK, or COUNT. 8473// 8474// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 8475// HEADER, METHOD, QUERY_STRING, URI, or BODY. 8476// 8477// * You tried to update a ByteMatchSet with a Field of HEADER but no value 8478// for Data. 8479// 8480// * Your request references an ARN that is malformed, or corresponds to 8481// a resource with which a web ACL cannot be associated. 8482// 8483// * WAFNonexistentContainerException 8484// The operation failed because you tried to add an object to or delete an object 8485// from another object that doesn't exist. For example: 8486// 8487// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 8488// exist. 8489// 8490// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 8491// that doesn't exist. 8492// 8493// * You tried to add an IP address to or delete an IP address from an IPSet 8494// that doesn't exist. 8495// 8496// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 8497// a ByteMatchSet that doesn't exist. 8498// 8499// * WAFNonexistentItemException 8500// The operation failed because the referenced object doesn't exist. 8501// 8502// * WAFStaleDataException 8503// The operation failed because you tried to create, update, or delete an object 8504// by using a change token that has already been used. 8505// 8506// * WAFLimitsExceededException 8507// The operation exceeds a resource limit, for example, the maximum number of 8508// WebACL objects that you can create for an AWS account. For more information, 8509// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 8510// in the AWS WAF Developer Guide. 8511// 8512// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateByteMatchSet 8513func (c *WAFRegional) UpdateByteMatchSet(input *waf.UpdateByteMatchSetInput) (*waf.UpdateByteMatchSetOutput, error) { 8514 req, out := c.UpdateByteMatchSetRequest(input) 8515 return out, req.Send() 8516} 8517 8518// UpdateByteMatchSetWithContext is the same as UpdateByteMatchSet with the addition of 8519// the ability to pass a context and additional request options. 8520// 8521// See UpdateByteMatchSet for details on how to use this API operation. 8522// 8523// The context must be non-nil and will be used for request cancellation. If 8524// the context is nil a panic will occur. In the future the SDK may create 8525// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8526// for more information on using Contexts. 8527func (c *WAFRegional) UpdateByteMatchSetWithContext(ctx aws.Context, input *waf.UpdateByteMatchSetInput, opts ...request.Option) (*waf.UpdateByteMatchSetOutput, error) { 8528 req, out := c.UpdateByteMatchSetRequest(input) 8529 req.SetContext(ctx) 8530 req.ApplyOptions(opts...) 8531 return out, req.Send() 8532} 8533 8534const opUpdateGeoMatchSet = "UpdateGeoMatchSet" 8535 8536// UpdateGeoMatchSetRequest generates a "aws/request.Request" representing the 8537// client's request for the UpdateGeoMatchSet operation. The "output" return 8538// value will be populated with the request's response once the request completes 8539// successfully. 8540// 8541// Use "Send" method on the returned Request to send the API call to the service. 8542// the "output" return value is not valid until after Send returns without error. 8543// 8544// See UpdateGeoMatchSet for more information on using the UpdateGeoMatchSet 8545// API call, and error handling. 8546// 8547// This method is useful when you want to inject custom logic or configuration 8548// into the SDK's request lifecycle. Such as custom headers, or retry logic. 8549// 8550// 8551// // Example sending a request using the UpdateGeoMatchSetRequest method. 8552// req, resp := client.UpdateGeoMatchSetRequest(params) 8553// 8554// err := req.Send() 8555// if err == nil { // resp is now filled 8556// fmt.Println(resp) 8557// } 8558// 8559// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateGeoMatchSet 8560func (c *WAFRegional) UpdateGeoMatchSetRequest(input *waf.UpdateGeoMatchSetInput) (req *request.Request, output *waf.UpdateGeoMatchSetOutput) { 8561 op := &request.Operation{ 8562 Name: opUpdateGeoMatchSet, 8563 HTTPMethod: "POST", 8564 HTTPPath: "/", 8565 } 8566 8567 if input == nil { 8568 input = &waf.UpdateGeoMatchSetInput{} 8569 } 8570 8571 output = &waf.UpdateGeoMatchSetOutput{} 8572 req = c.newRequest(op, input, output) 8573 return 8574} 8575 8576// UpdateGeoMatchSet API operation for AWS WAF Regional. 8577// 8578// 8579// This is AWS WAF Classic documentation. For more information, see AWS WAF 8580// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 8581// in the developer guide. 8582// 8583// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 8584// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 8585// With the latest version, AWS WAF has a single set of endpoints for regional 8586// and global use. 8587// 8588// Inserts or deletes GeoMatchConstraint objects in an GeoMatchSet. For each 8589// GeoMatchConstraint object, you specify the following values: 8590// 8591// * Whether to insert or delete the object from the array. If you want to 8592// change an GeoMatchConstraint object, you delete the existing object and 8593// add a new one. 8594// 8595// * The Type. The only valid value for Type is Country. 8596// 8597// * The Value, which is a two character code for the country to add to the 8598// GeoMatchConstraint object. Valid codes are listed in GeoMatchConstraint$Value. 8599// 8600// To create and configure an GeoMatchSet, perform the following steps: 8601// 8602// Submit a CreateGeoMatchSet request. 8603// 8604// Use GetChangeToken to get the change token that you provide in the ChangeToken 8605// parameter of an UpdateGeoMatchSet request. 8606// 8607// Submit an UpdateGeoMatchSet request to specify the country that you want 8608// AWS WAF to watch for. 8609// 8610// When you update an GeoMatchSet, you specify the country that you want to 8611// add and/or the country that you want to delete. If you want to change a country, 8612// you delete the existing country and add the new one. 8613// 8614// For more information about how to use the AWS WAF API to allow or block HTTP 8615// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 8616// 8617// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8618// with awserr.Error's Code and Message methods to get detailed information about 8619// the error. 8620// 8621// See the AWS API reference guide for AWS WAF Regional's 8622// API operation UpdateGeoMatchSet for usage and error information. 8623// 8624// Returned Error Types: 8625// * WAFStaleDataException 8626// The operation failed because you tried to create, update, or delete an object 8627// by using a change token that has already been used. 8628// 8629// * WAFInternalErrorException 8630// The operation failed because of a system problem, even though the request 8631// was valid. Retry your request. 8632// 8633// * WAFInvalidAccountException 8634// The operation failed because you tried to create, update, or delete an object 8635// by using an invalid account identifier. 8636// 8637// * WAFInvalidOperationException 8638// The operation failed because there was nothing to do. For example: 8639// 8640// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 8641// specified WebACL. 8642// 8643// * You tried to remove an IP address from an IPSet, but the IP address 8644// isn't in the specified IPSet. 8645// 8646// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 8647// isn't in the specified WebACL. 8648// 8649// * You tried to add a Rule to a WebACL, but the Rule already exists in 8650// the specified WebACL. 8651// 8652// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 8653// already exists in the specified WebACL. 8654// 8655// * WAFInvalidParameterException 8656// The operation failed because AWS WAF didn't recognize a parameter in the 8657// request. For example: 8658// 8659// * You specified an invalid parameter name. 8660// 8661// * You specified an invalid value. 8662// 8663// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 8664// using an action other than INSERT or DELETE. 8665// 8666// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 8667// BLOCK, or COUNT. 8668// 8669// * You tried to create a RateBasedRule with a RateKey value other than 8670// IP. 8671// 8672// * You tried to update a WebACL with a WafAction Type other than ALLOW, 8673// BLOCK, or COUNT. 8674// 8675// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 8676// HEADER, METHOD, QUERY_STRING, URI, or BODY. 8677// 8678// * You tried to update a ByteMatchSet with a Field of HEADER but no value 8679// for Data. 8680// 8681// * Your request references an ARN that is malformed, or corresponds to 8682// a resource with which a web ACL cannot be associated. 8683// 8684// * WAFNonexistentContainerException 8685// The operation failed because you tried to add an object to or delete an object 8686// from another object that doesn't exist. For example: 8687// 8688// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 8689// exist. 8690// 8691// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 8692// that doesn't exist. 8693// 8694// * You tried to add an IP address to or delete an IP address from an IPSet 8695// that doesn't exist. 8696// 8697// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 8698// a ByteMatchSet that doesn't exist. 8699// 8700// * WAFNonexistentItemException 8701// The operation failed because the referenced object doesn't exist. 8702// 8703// * WAFReferencedItemException 8704// The operation failed because you tried to delete an object that is still 8705// in use. For example: 8706// 8707// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 8708// 8709// * You tried to delete a Rule that is still referenced by a WebACL. 8710// 8711// * WAFLimitsExceededException 8712// The operation exceeds a resource limit, for example, the maximum number of 8713// WebACL objects that you can create for an AWS account. For more information, 8714// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 8715// in the AWS WAF Developer Guide. 8716// 8717// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateGeoMatchSet 8718func (c *WAFRegional) UpdateGeoMatchSet(input *waf.UpdateGeoMatchSetInput) (*waf.UpdateGeoMatchSetOutput, error) { 8719 req, out := c.UpdateGeoMatchSetRequest(input) 8720 return out, req.Send() 8721} 8722 8723// UpdateGeoMatchSetWithContext is the same as UpdateGeoMatchSet with the addition of 8724// the ability to pass a context and additional request options. 8725// 8726// See UpdateGeoMatchSet for details on how to use this API operation. 8727// 8728// The context must be non-nil and will be used for request cancellation. If 8729// the context is nil a panic will occur. In the future the SDK may create 8730// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8731// for more information on using Contexts. 8732func (c *WAFRegional) UpdateGeoMatchSetWithContext(ctx aws.Context, input *waf.UpdateGeoMatchSetInput, opts ...request.Option) (*waf.UpdateGeoMatchSetOutput, error) { 8733 req, out := c.UpdateGeoMatchSetRequest(input) 8734 req.SetContext(ctx) 8735 req.ApplyOptions(opts...) 8736 return out, req.Send() 8737} 8738 8739const opUpdateIPSet = "UpdateIPSet" 8740 8741// UpdateIPSetRequest generates a "aws/request.Request" representing the 8742// client's request for the UpdateIPSet operation. The "output" return 8743// value will be populated with the request's response once the request completes 8744// successfully. 8745// 8746// Use "Send" method on the returned Request to send the API call to the service. 8747// the "output" return value is not valid until after Send returns without error. 8748// 8749// See UpdateIPSet for more information on using the UpdateIPSet 8750// API call, and error handling. 8751// 8752// This method is useful when you want to inject custom logic or configuration 8753// into the SDK's request lifecycle. Such as custom headers, or retry logic. 8754// 8755// 8756// // Example sending a request using the UpdateIPSetRequest method. 8757// req, resp := client.UpdateIPSetRequest(params) 8758// 8759// err := req.Send() 8760// if err == nil { // resp is now filled 8761// fmt.Println(resp) 8762// } 8763// 8764// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateIPSet 8765func (c *WAFRegional) UpdateIPSetRequest(input *waf.UpdateIPSetInput) (req *request.Request, output *waf.UpdateIPSetOutput) { 8766 op := &request.Operation{ 8767 Name: opUpdateIPSet, 8768 HTTPMethod: "POST", 8769 HTTPPath: "/", 8770 } 8771 8772 if input == nil { 8773 input = &waf.UpdateIPSetInput{} 8774 } 8775 8776 output = &waf.UpdateIPSetOutput{} 8777 req = c.newRequest(op, input, output) 8778 return 8779} 8780 8781// UpdateIPSet API operation for AWS WAF Regional. 8782// 8783// 8784// This is AWS WAF Classic documentation. For more information, see AWS WAF 8785// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 8786// in the developer guide. 8787// 8788// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 8789// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 8790// With the latest version, AWS WAF has a single set of endpoints for regional 8791// and global use. 8792// 8793// Inserts or deletes IPSetDescriptor objects in an IPSet. For each IPSetDescriptor 8794// object, you specify the following values: 8795// 8796// * Whether to insert or delete the object from the array. If you want to 8797// change an IPSetDescriptor object, you delete the existing object and add 8798// a new one. 8799// 8800// * The IP address version, IPv4 or IPv6. 8801// 8802// * The IP address in CIDR notation, for example, 192.0.2.0/24 (for the 8803// range of IP addresses from 192.0.2.0 to 192.0.2.255) or 192.0.2.44/32 8804// (for the individual IP address 192.0.2.44). 8805// 8806// AWS WAF supports IPv4 address ranges: /8 and any range between /16 through 8807// /32. AWS WAF supports IPv6 address ranges: /24, /32, /48, /56, /64, and /128. 8808// For more information about CIDR notation, see the Wikipedia entry Classless 8809// Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). 8810// 8811// IPv6 addresses can be represented using any of the following formats: 8812// 8813// * 1111:0000:0000:0000:0000:0000:0000:0111/128 8814// 8815// * 1111:0:0:0:0:0:0:0111/128 8816// 8817// * 1111::0111/128 8818// 8819// * 1111::111/128 8820// 8821// You use an IPSet to specify which web requests you want to allow or block 8822// based on the IP addresses that the requests originated from. For example, 8823// if you're receiving a lot of requests from one or a small number of IP addresses 8824// and you want to block the requests, you can create an IPSet that specifies 8825// those IP addresses, and then configure AWS WAF to block the requests. 8826// 8827// To create and configure an IPSet, perform the following steps: 8828// 8829// Submit a CreateIPSet request. 8830// 8831// Use GetChangeToken to get the change token that you provide in the ChangeToken 8832// parameter of an UpdateIPSet request. 8833// 8834// Submit an UpdateIPSet request to specify the IP addresses that you want AWS 8835// WAF to watch for. 8836// 8837// When you update an IPSet, you specify the IP addresses that you want to add 8838// and/or the IP addresses that you want to delete. If you want to change an 8839// IP address, you delete the existing IP address and add the new one. 8840// 8841// You can insert a maximum of 1000 addresses in a single request. 8842// 8843// For more information about how to use the AWS WAF API to allow or block HTTP 8844// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 8845// 8846// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 8847// with awserr.Error's Code and Message methods to get detailed information about 8848// the error. 8849// 8850// See the AWS API reference guide for AWS WAF Regional's 8851// API operation UpdateIPSet for usage and error information. 8852// 8853// Returned Error Types: 8854// * WAFStaleDataException 8855// The operation failed because you tried to create, update, or delete an object 8856// by using a change token that has already been used. 8857// 8858// * WAFInternalErrorException 8859// The operation failed because of a system problem, even though the request 8860// was valid. Retry your request. 8861// 8862// * WAFInvalidAccountException 8863// The operation failed because you tried to create, update, or delete an object 8864// by using an invalid account identifier. 8865// 8866// * WAFInvalidOperationException 8867// The operation failed because there was nothing to do. For example: 8868// 8869// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 8870// specified WebACL. 8871// 8872// * You tried to remove an IP address from an IPSet, but the IP address 8873// isn't in the specified IPSet. 8874// 8875// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 8876// isn't in the specified WebACL. 8877// 8878// * You tried to add a Rule to a WebACL, but the Rule already exists in 8879// the specified WebACL. 8880// 8881// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 8882// already exists in the specified WebACL. 8883// 8884// * WAFInvalidParameterException 8885// The operation failed because AWS WAF didn't recognize a parameter in the 8886// request. For example: 8887// 8888// * You specified an invalid parameter name. 8889// 8890// * You specified an invalid value. 8891// 8892// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 8893// using an action other than INSERT or DELETE. 8894// 8895// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 8896// BLOCK, or COUNT. 8897// 8898// * You tried to create a RateBasedRule with a RateKey value other than 8899// IP. 8900// 8901// * You tried to update a WebACL with a WafAction Type other than ALLOW, 8902// BLOCK, or COUNT. 8903// 8904// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 8905// HEADER, METHOD, QUERY_STRING, URI, or BODY. 8906// 8907// * You tried to update a ByteMatchSet with a Field of HEADER but no value 8908// for Data. 8909// 8910// * Your request references an ARN that is malformed, or corresponds to 8911// a resource with which a web ACL cannot be associated. 8912// 8913// * WAFNonexistentContainerException 8914// The operation failed because you tried to add an object to or delete an object 8915// from another object that doesn't exist. For example: 8916// 8917// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 8918// exist. 8919// 8920// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 8921// that doesn't exist. 8922// 8923// * You tried to add an IP address to or delete an IP address from an IPSet 8924// that doesn't exist. 8925// 8926// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 8927// a ByteMatchSet that doesn't exist. 8928// 8929// * WAFNonexistentItemException 8930// The operation failed because the referenced object doesn't exist. 8931// 8932// * WAFReferencedItemException 8933// The operation failed because you tried to delete an object that is still 8934// in use. For example: 8935// 8936// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 8937// 8938// * You tried to delete a Rule that is still referenced by a WebACL. 8939// 8940// * WAFLimitsExceededException 8941// The operation exceeds a resource limit, for example, the maximum number of 8942// WebACL objects that you can create for an AWS account. For more information, 8943// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 8944// in the AWS WAF Developer Guide. 8945// 8946// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateIPSet 8947func (c *WAFRegional) UpdateIPSet(input *waf.UpdateIPSetInput) (*waf.UpdateIPSetOutput, error) { 8948 req, out := c.UpdateIPSetRequest(input) 8949 return out, req.Send() 8950} 8951 8952// UpdateIPSetWithContext is the same as UpdateIPSet with the addition of 8953// the ability to pass a context and additional request options. 8954// 8955// See UpdateIPSet for details on how to use this API operation. 8956// 8957// The context must be non-nil and will be used for request cancellation. If 8958// the context is nil a panic will occur. In the future the SDK may create 8959// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 8960// for more information on using Contexts. 8961func (c *WAFRegional) UpdateIPSetWithContext(ctx aws.Context, input *waf.UpdateIPSetInput, opts ...request.Option) (*waf.UpdateIPSetOutput, error) { 8962 req, out := c.UpdateIPSetRequest(input) 8963 req.SetContext(ctx) 8964 req.ApplyOptions(opts...) 8965 return out, req.Send() 8966} 8967 8968const opUpdateRateBasedRule = "UpdateRateBasedRule" 8969 8970// UpdateRateBasedRuleRequest generates a "aws/request.Request" representing the 8971// client's request for the UpdateRateBasedRule operation. The "output" return 8972// value will be populated with the request's response once the request completes 8973// successfully. 8974// 8975// Use "Send" method on the returned Request to send the API call to the service. 8976// the "output" return value is not valid until after Send returns without error. 8977// 8978// See UpdateRateBasedRule for more information on using the UpdateRateBasedRule 8979// API call, and error handling. 8980// 8981// This method is useful when you want to inject custom logic or configuration 8982// into the SDK's request lifecycle. Such as custom headers, or retry logic. 8983// 8984// 8985// // Example sending a request using the UpdateRateBasedRuleRequest method. 8986// req, resp := client.UpdateRateBasedRuleRequest(params) 8987// 8988// err := req.Send() 8989// if err == nil { // resp is now filled 8990// fmt.Println(resp) 8991// } 8992// 8993// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRateBasedRule 8994func (c *WAFRegional) UpdateRateBasedRuleRequest(input *waf.UpdateRateBasedRuleInput) (req *request.Request, output *waf.UpdateRateBasedRuleOutput) { 8995 op := &request.Operation{ 8996 Name: opUpdateRateBasedRule, 8997 HTTPMethod: "POST", 8998 HTTPPath: "/", 8999 } 9000 9001 if input == nil { 9002 input = &waf.UpdateRateBasedRuleInput{} 9003 } 9004 9005 output = &waf.UpdateRateBasedRuleOutput{} 9006 req = c.newRequest(op, input, output) 9007 return 9008} 9009 9010// UpdateRateBasedRule API operation for AWS WAF Regional. 9011// 9012// 9013// This is AWS WAF Classic documentation. For more information, see AWS WAF 9014// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 9015// in the developer guide. 9016// 9017// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 9018// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 9019// With the latest version, AWS WAF has a single set of endpoints for regional 9020// and global use. 9021// 9022// Inserts or deletes Predicate objects in a rule and updates the RateLimit 9023// in the rule. 9024// 9025// Each Predicate object identifies a predicate, such as a ByteMatchSet or an 9026// IPSet, that specifies the web requests that you want to block or count. The 9027// RateLimit specifies the number of requests every five minutes that triggers 9028// the rule. 9029// 9030// If you add more than one predicate to a RateBasedRule, a request must match 9031// all the predicates and exceed the RateLimit to be counted or blocked. For 9032// example, suppose you add the following to a RateBasedRule: 9033// 9034// * An IPSet that matches the IP address 192.0.2.44/32 9035// 9036// * A ByteMatchSet that matches BadBot in the User-Agent header 9037// 9038// Further, you specify a RateLimit of 1,000. 9039// 9040// You then add the RateBasedRule to a WebACL and specify that you want to block 9041// requests that satisfy the rule. For a request to be blocked, it must come 9042// from the IP address 192.0.2.44 and the User-Agent header in the request must 9043// contain the value BadBot. Further, requests that match these two conditions 9044// much be received at a rate of more than 1,000 every five minutes. If the 9045// rate drops below this limit, AWS WAF no longer blocks the requests. 9046// 9047// As a second example, suppose you want to limit requests to a particular page 9048// on your site. To do this, you could add the following to a RateBasedRule: 9049// 9050// * A ByteMatchSet with FieldToMatch of URI 9051// 9052// * A PositionalConstraint of STARTS_WITH 9053// 9054// * A TargetString of login 9055// 9056// Further, you specify a RateLimit of 1,000. 9057// 9058// By adding this RateBasedRule to a WebACL, you could limit requests to your 9059// login page without affecting the rest of your site. 9060// 9061// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9062// with awserr.Error's Code and Message methods to get detailed information about 9063// the error. 9064// 9065// See the AWS API reference guide for AWS WAF Regional's 9066// API operation UpdateRateBasedRule for usage and error information. 9067// 9068// Returned Error Types: 9069// * WAFStaleDataException 9070// The operation failed because you tried to create, update, or delete an object 9071// by using a change token that has already been used. 9072// 9073// * WAFInternalErrorException 9074// The operation failed because of a system problem, even though the request 9075// was valid. Retry your request. 9076// 9077// * WAFInvalidAccountException 9078// The operation failed because you tried to create, update, or delete an object 9079// by using an invalid account identifier. 9080// 9081// * WAFInvalidOperationException 9082// The operation failed because there was nothing to do. For example: 9083// 9084// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 9085// specified WebACL. 9086// 9087// * You tried to remove an IP address from an IPSet, but the IP address 9088// isn't in the specified IPSet. 9089// 9090// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 9091// isn't in the specified WebACL. 9092// 9093// * You tried to add a Rule to a WebACL, but the Rule already exists in 9094// the specified WebACL. 9095// 9096// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 9097// already exists in the specified WebACL. 9098// 9099// * WAFInvalidParameterException 9100// The operation failed because AWS WAF didn't recognize a parameter in the 9101// request. For example: 9102// 9103// * You specified an invalid parameter name. 9104// 9105// * You specified an invalid value. 9106// 9107// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 9108// using an action other than INSERT or DELETE. 9109// 9110// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 9111// BLOCK, or COUNT. 9112// 9113// * You tried to create a RateBasedRule with a RateKey value other than 9114// IP. 9115// 9116// * You tried to update a WebACL with a WafAction Type other than ALLOW, 9117// BLOCK, or COUNT. 9118// 9119// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 9120// HEADER, METHOD, QUERY_STRING, URI, or BODY. 9121// 9122// * You tried to update a ByteMatchSet with a Field of HEADER but no value 9123// for Data. 9124// 9125// * Your request references an ARN that is malformed, or corresponds to 9126// a resource with which a web ACL cannot be associated. 9127// 9128// * WAFNonexistentContainerException 9129// The operation failed because you tried to add an object to or delete an object 9130// from another object that doesn't exist. For example: 9131// 9132// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 9133// exist. 9134// 9135// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 9136// that doesn't exist. 9137// 9138// * You tried to add an IP address to or delete an IP address from an IPSet 9139// that doesn't exist. 9140// 9141// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 9142// a ByteMatchSet that doesn't exist. 9143// 9144// * WAFNonexistentItemException 9145// The operation failed because the referenced object doesn't exist. 9146// 9147// * WAFReferencedItemException 9148// The operation failed because you tried to delete an object that is still 9149// in use. For example: 9150// 9151// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 9152// 9153// * You tried to delete a Rule that is still referenced by a WebACL. 9154// 9155// * WAFLimitsExceededException 9156// The operation exceeds a resource limit, for example, the maximum number of 9157// WebACL objects that you can create for an AWS account. For more information, 9158// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 9159// in the AWS WAF Developer Guide. 9160// 9161// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRateBasedRule 9162func (c *WAFRegional) UpdateRateBasedRule(input *waf.UpdateRateBasedRuleInput) (*waf.UpdateRateBasedRuleOutput, error) { 9163 req, out := c.UpdateRateBasedRuleRequest(input) 9164 return out, req.Send() 9165} 9166 9167// UpdateRateBasedRuleWithContext is the same as UpdateRateBasedRule with the addition of 9168// the ability to pass a context and additional request options. 9169// 9170// See UpdateRateBasedRule for details on how to use this API operation. 9171// 9172// The context must be non-nil and will be used for request cancellation. If 9173// the context is nil a panic will occur. In the future the SDK may create 9174// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9175// for more information on using Contexts. 9176func (c *WAFRegional) UpdateRateBasedRuleWithContext(ctx aws.Context, input *waf.UpdateRateBasedRuleInput, opts ...request.Option) (*waf.UpdateRateBasedRuleOutput, error) { 9177 req, out := c.UpdateRateBasedRuleRequest(input) 9178 req.SetContext(ctx) 9179 req.ApplyOptions(opts...) 9180 return out, req.Send() 9181} 9182 9183const opUpdateRegexMatchSet = "UpdateRegexMatchSet" 9184 9185// UpdateRegexMatchSetRequest generates a "aws/request.Request" representing the 9186// client's request for the UpdateRegexMatchSet operation. The "output" return 9187// value will be populated with the request's response once the request completes 9188// successfully. 9189// 9190// Use "Send" method on the returned Request to send the API call to the service. 9191// the "output" return value is not valid until after Send returns without error. 9192// 9193// See UpdateRegexMatchSet for more information on using the UpdateRegexMatchSet 9194// API call, and error handling. 9195// 9196// This method is useful when you want to inject custom logic or configuration 9197// into the SDK's request lifecycle. Such as custom headers, or retry logic. 9198// 9199// 9200// // Example sending a request using the UpdateRegexMatchSetRequest method. 9201// req, resp := client.UpdateRegexMatchSetRequest(params) 9202// 9203// err := req.Send() 9204// if err == nil { // resp is now filled 9205// fmt.Println(resp) 9206// } 9207// 9208// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRegexMatchSet 9209func (c *WAFRegional) UpdateRegexMatchSetRequest(input *waf.UpdateRegexMatchSetInput) (req *request.Request, output *waf.UpdateRegexMatchSetOutput) { 9210 op := &request.Operation{ 9211 Name: opUpdateRegexMatchSet, 9212 HTTPMethod: "POST", 9213 HTTPPath: "/", 9214 } 9215 9216 if input == nil { 9217 input = &waf.UpdateRegexMatchSetInput{} 9218 } 9219 9220 output = &waf.UpdateRegexMatchSetOutput{} 9221 req = c.newRequest(op, input, output) 9222 return 9223} 9224 9225// UpdateRegexMatchSet API operation for AWS WAF Regional. 9226// 9227// 9228// This is AWS WAF Classic documentation. For more information, see AWS WAF 9229// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 9230// in the developer guide. 9231// 9232// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 9233// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 9234// With the latest version, AWS WAF has a single set of endpoints for regional 9235// and global use. 9236// 9237// Inserts or deletes RegexMatchTuple objects (filters) in a RegexMatchSet. 9238// For each RegexMatchSetUpdate object, you specify the following values: 9239// 9240// * Whether to insert or delete the object from the array. If you want to 9241// change a RegexMatchSetUpdate object, you delete the existing object and 9242// add a new one. 9243// 9244// * The part of a web request that you want AWS WAF to inspectupdate, such 9245// as a query string or the value of the User-Agent header. 9246// 9247// * The identifier of the pattern (a regular expression) that you want AWS 9248// WAF to look for. For more information, see RegexPatternSet. 9249// 9250// * Whether to perform any conversions on the request, such as converting 9251// it to lowercase, before inspecting it for the specified string. 9252// 9253// For example, you can create a RegexPatternSet that matches any requests with 9254// User-Agent headers that contain the string B[a@]dB[o0]t. You can then configure 9255// AWS WAF to reject those requests. 9256// 9257// To create and configure a RegexMatchSet, perform the following steps: 9258// 9259// Create a RegexMatchSet. For more information, see CreateRegexMatchSet. 9260// 9261// Use GetChangeToken to get the change token that you provide in the ChangeToken 9262// parameter of an UpdateRegexMatchSet request. 9263// 9264// Submit an UpdateRegexMatchSet request to specify the part of the request 9265// that you want AWS WAF to inspect (for example, the header or the URI) and 9266// the identifier of the RegexPatternSet that contain the regular expression 9267// patters you want AWS WAF to watch for. 9268// 9269// For more information about how to use the AWS WAF API to allow or block HTTP 9270// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 9271// 9272// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9273// with awserr.Error's Code and Message methods to get detailed information about 9274// the error. 9275// 9276// See the AWS API reference guide for AWS WAF Regional's 9277// API operation UpdateRegexMatchSet for usage and error information. 9278// 9279// Returned Error Types: 9280// * WAFStaleDataException 9281// The operation failed because you tried to create, update, or delete an object 9282// by using a change token that has already been used. 9283// 9284// * WAFInternalErrorException 9285// The operation failed because of a system problem, even though the request 9286// was valid. Retry your request. 9287// 9288// * WAFDisallowedNameException 9289// The name specified is invalid. 9290// 9291// * WAFLimitsExceededException 9292// The operation exceeds a resource limit, for example, the maximum number of 9293// WebACL objects that you can create for an AWS account. For more information, 9294// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 9295// in the AWS WAF Developer Guide. 9296// 9297// * WAFNonexistentItemException 9298// The operation failed because the referenced object doesn't exist. 9299// 9300// * WAFNonexistentContainerException 9301// The operation failed because you tried to add an object to or delete an object 9302// from another object that doesn't exist. For example: 9303// 9304// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 9305// exist. 9306// 9307// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 9308// that doesn't exist. 9309// 9310// * You tried to add an IP address to or delete an IP address from an IPSet 9311// that doesn't exist. 9312// 9313// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 9314// a ByteMatchSet that doesn't exist. 9315// 9316// * WAFInvalidOperationException 9317// The operation failed because there was nothing to do. For example: 9318// 9319// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 9320// specified WebACL. 9321// 9322// * You tried to remove an IP address from an IPSet, but the IP address 9323// isn't in the specified IPSet. 9324// 9325// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 9326// isn't in the specified WebACL. 9327// 9328// * You tried to add a Rule to a WebACL, but the Rule already exists in 9329// the specified WebACL. 9330// 9331// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 9332// already exists in the specified WebACL. 9333// 9334// * WAFInvalidAccountException 9335// The operation failed because you tried to create, update, or delete an object 9336// by using an invalid account identifier. 9337// 9338// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRegexMatchSet 9339func (c *WAFRegional) UpdateRegexMatchSet(input *waf.UpdateRegexMatchSetInput) (*waf.UpdateRegexMatchSetOutput, error) { 9340 req, out := c.UpdateRegexMatchSetRequest(input) 9341 return out, req.Send() 9342} 9343 9344// UpdateRegexMatchSetWithContext is the same as UpdateRegexMatchSet with the addition of 9345// the ability to pass a context and additional request options. 9346// 9347// See UpdateRegexMatchSet for details on how to use this API operation. 9348// 9349// The context must be non-nil and will be used for request cancellation. If 9350// the context is nil a panic will occur. In the future the SDK may create 9351// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9352// for more information on using Contexts. 9353func (c *WAFRegional) UpdateRegexMatchSetWithContext(ctx aws.Context, input *waf.UpdateRegexMatchSetInput, opts ...request.Option) (*waf.UpdateRegexMatchSetOutput, error) { 9354 req, out := c.UpdateRegexMatchSetRequest(input) 9355 req.SetContext(ctx) 9356 req.ApplyOptions(opts...) 9357 return out, req.Send() 9358} 9359 9360const opUpdateRegexPatternSet = "UpdateRegexPatternSet" 9361 9362// UpdateRegexPatternSetRequest generates a "aws/request.Request" representing the 9363// client's request for the UpdateRegexPatternSet operation. The "output" return 9364// value will be populated with the request's response once the request completes 9365// successfully. 9366// 9367// Use "Send" method on the returned Request to send the API call to the service. 9368// the "output" return value is not valid until after Send returns without error. 9369// 9370// See UpdateRegexPatternSet for more information on using the UpdateRegexPatternSet 9371// API call, and error handling. 9372// 9373// This method is useful when you want to inject custom logic or configuration 9374// into the SDK's request lifecycle. Such as custom headers, or retry logic. 9375// 9376// 9377// // Example sending a request using the UpdateRegexPatternSetRequest method. 9378// req, resp := client.UpdateRegexPatternSetRequest(params) 9379// 9380// err := req.Send() 9381// if err == nil { // resp is now filled 9382// fmt.Println(resp) 9383// } 9384// 9385// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRegexPatternSet 9386func (c *WAFRegional) UpdateRegexPatternSetRequest(input *waf.UpdateRegexPatternSetInput) (req *request.Request, output *waf.UpdateRegexPatternSetOutput) { 9387 op := &request.Operation{ 9388 Name: opUpdateRegexPatternSet, 9389 HTTPMethod: "POST", 9390 HTTPPath: "/", 9391 } 9392 9393 if input == nil { 9394 input = &waf.UpdateRegexPatternSetInput{} 9395 } 9396 9397 output = &waf.UpdateRegexPatternSetOutput{} 9398 req = c.newRequest(op, input, output) 9399 return 9400} 9401 9402// UpdateRegexPatternSet API operation for AWS WAF Regional. 9403// 9404// 9405// This is AWS WAF Classic documentation. For more information, see AWS WAF 9406// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 9407// in the developer guide. 9408// 9409// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 9410// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 9411// With the latest version, AWS WAF has a single set of endpoints for regional 9412// and global use. 9413// 9414// Inserts or deletes RegexPatternString objects in a RegexPatternSet. For each 9415// RegexPatternString object, you specify the following values: 9416// 9417// * Whether to insert or delete the RegexPatternString. 9418// 9419// * The regular expression pattern that you want to insert or delete. For 9420// more information, see RegexPatternSet. 9421// 9422// For example, you can create a RegexPatternString such as B[a@]dB[o0]t. AWS 9423// WAF will match this RegexPatternString to: 9424// 9425// * BadBot 9426// 9427// * BadB0t 9428// 9429// * B@dBot 9430// 9431// * B@dB0t 9432// 9433// To create and configure a RegexPatternSet, perform the following steps: 9434// 9435// Create a RegexPatternSet. For more information, see CreateRegexPatternSet. 9436// 9437// Use GetChangeToken to get the change token that you provide in the ChangeToken 9438// parameter of an UpdateRegexPatternSet request. 9439// 9440// Submit an UpdateRegexPatternSet request to specify the regular expression 9441// pattern that you want AWS WAF to watch for. 9442// 9443// For more information about how to use the AWS WAF API to allow or block HTTP 9444// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 9445// 9446// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9447// with awserr.Error's Code and Message methods to get detailed information about 9448// the error. 9449// 9450// See the AWS API reference guide for AWS WAF Regional's 9451// API operation UpdateRegexPatternSet for usage and error information. 9452// 9453// Returned Error Types: 9454// * WAFStaleDataException 9455// The operation failed because you tried to create, update, or delete an object 9456// by using a change token that has already been used. 9457// 9458// * WAFInternalErrorException 9459// The operation failed because of a system problem, even though the request 9460// was valid. Retry your request. 9461// 9462// * WAFLimitsExceededException 9463// The operation exceeds a resource limit, for example, the maximum number of 9464// WebACL objects that you can create for an AWS account. For more information, 9465// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 9466// in the AWS WAF Developer Guide. 9467// 9468// * WAFNonexistentItemException 9469// The operation failed because the referenced object doesn't exist. 9470// 9471// * WAFNonexistentContainerException 9472// The operation failed because you tried to add an object to or delete an object 9473// from another object that doesn't exist. For example: 9474// 9475// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 9476// exist. 9477// 9478// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 9479// that doesn't exist. 9480// 9481// * You tried to add an IP address to or delete an IP address from an IPSet 9482// that doesn't exist. 9483// 9484// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 9485// a ByteMatchSet that doesn't exist. 9486// 9487// * WAFInvalidOperationException 9488// The operation failed because there was nothing to do. For example: 9489// 9490// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 9491// specified WebACL. 9492// 9493// * You tried to remove an IP address from an IPSet, but the IP address 9494// isn't in the specified IPSet. 9495// 9496// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 9497// isn't in the specified WebACL. 9498// 9499// * You tried to add a Rule to a WebACL, but the Rule already exists in 9500// the specified WebACL. 9501// 9502// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 9503// already exists in the specified WebACL. 9504// 9505// * WAFInvalidAccountException 9506// The operation failed because you tried to create, update, or delete an object 9507// by using an invalid account identifier. 9508// 9509// * WAFInvalidRegexPatternException 9510// The regular expression (regex) you specified in RegexPatternString is invalid. 9511// 9512// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRegexPatternSet 9513func (c *WAFRegional) UpdateRegexPatternSet(input *waf.UpdateRegexPatternSetInput) (*waf.UpdateRegexPatternSetOutput, error) { 9514 req, out := c.UpdateRegexPatternSetRequest(input) 9515 return out, req.Send() 9516} 9517 9518// UpdateRegexPatternSetWithContext is the same as UpdateRegexPatternSet with the addition of 9519// the ability to pass a context and additional request options. 9520// 9521// See UpdateRegexPatternSet for details on how to use this API operation. 9522// 9523// The context must be non-nil and will be used for request cancellation. If 9524// the context is nil a panic will occur. In the future the SDK may create 9525// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9526// for more information on using Contexts. 9527func (c *WAFRegional) UpdateRegexPatternSetWithContext(ctx aws.Context, input *waf.UpdateRegexPatternSetInput, opts ...request.Option) (*waf.UpdateRegexPatternSetOutput, error) { 9528 req, out := c.UpdateRegexPatternSetRequest(input) 9529 req.SetContext(ctx) 9530 req.ApplyOptions(opts...) 9531 return out, req.Send() 9532} 9533 9534const opUpdateRule = "UpdateRule" 9535 9536// UpdateRuleRequest generates a "aws/request.Request" representing the 9537// client's request for the UpdateRule operation. The "output" return 9538// value will be populated with the request's response once the request completes 9539// successfully. 9540// 9541// Use "Send" method on the returned Request to send the API call to the service. 9542// the "output" return value is not valid until after Send returns without error. 9543// 9544// See UpdateRule for more information on using the UpdateRule 9545// API call, and error handling. 9546// 9547// This method is useful when you want to inject custom logic or configuration 9548// into the SDK's request lifecycle. Such as custom headers, or retry logic. 9549// 9550// 9551// // Example sending a request using the UpdateRuleRequest method. 9552// req, resp := client.UpdateRuleRequest(params) 9553// 9554// err := req.Send() 9555// if err == nil { // resp is now filled 9556// fmt.Println(resp) 9557// } 9558// 9559// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRule 9560func (c *WAFRegional) UpdateRuleRequest(input *waf.UpdateRuleInput) (req *request.Request, output *waf.UpdateRuleOutput) { 9561 op := &request.Operation{ 9562 Name: opUpdateRule, 9563 HTTPMethod: "POST", 9564 HTTPPath: "/", 9565 } 9566 9567 if input == nil { 9568 input = &waf.UpdateRuleInput{} 9569 } 9570 9571 output = &waf.UpdateRuleOutput{} 9572 req = c.newRequest(op, input, output) 9573 return 9574} 9575 9576// UpdateRule API operation for AWS WAF Regional. 9577// 9578// 9579// This is AWS WAF Classic documentation. For more information, see AWS WAF 9580// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 9581// in the developer guide. 9582// 9583// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 9584// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 9585// With the latest version, AWS WAF has a single set of endpoints for regional 9586// and global use. 9587// 9588// Inserts or deletes Predicate objects in a Rule. Each Predicate object identifies 9589// a predicate, such as a ByteMatchSet or an IPSet, that specifies the web requests 9590// that you want to allow, block, or count. If you add more than one predicate 9591// to a Rule, a request must match all of the specifications to be allowed, 9592// blocked, or counted. For example, suppose that you add the following to a 9593// Rule: 9594// 9595// * A ByteMatchSet that matches the value BadBot in the User-Agent header 9596// 9597// * An IPSet that matches the IP address 192.0.2.44 9598// 9599// You then add the Rule to a WebACL and specify that you want to block requests 9600// that satisfy the Rule. For a request to be blocked, the User-Agent header 9601// in the request must contain the value BadBot and the request must originate 9602// from the IP address 192.0.2.44. 9603// 9604// To create and configure a Rule, perform the following steps: 9605// 9606// Create and update the predicates that you want to include in the Rule. 9607// 9608// Create the Rule. See CreateRule. 9609// 9610// Use GetChangeToken to get the change token that you provide in the ChangeToken 9611// parameter of an UpdateRule request. 9612// 9613// Submit an UpdateRule request to add predicates to the Rule. 9614// 9615// Create and update a WebACL that contains the Rule. See CreateWebACL. 9616// 9617// If you want to replace one ByteMatchSet or IPSet with another, you delete 9618// the existing one and add the new one. 9619// 9620// For more information about how to use the AWS WAF API to allow or block HTTP 9621// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 9622// 9623// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9624// with awserr.Error's Code and Message methods to get detailed information about 9625// the error. 9626// 9627// See the AWS API reference guide for AWS WAF Regional's 9628// API operation UpdateRule for usage and error information. 9629// 9630// Returned Error Types: 9631// * WAFStaleDataException 9632// The operation failed because you tried to create, update, or delete an object 9633// by using a change token that has already been used. 9634// 9635// * WAFInternalErrorException 9636// The operation failed because of a system problem, even though the request 9637// was valid. Retry your request. 9638// 9639// * WAFInvalidAccountException 9640// The operation failed because you tried to create, update, or delete an object 9641// by using an invalid account identifier. 9642// 9643// * WAFInvalidOperationException 9644// The operation failed because there was nothing to do. For example: 9645// 9646// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 9647// specified WebACL. 9648// 9649// * You tried to remove an IP address from an IPSet, but the IP address 9650// isn't in the specified IPSet. 9651// 9652// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 9653// isn't in the specified WebACL. 9654// 9655// * You tried to add a Rule to a WebACL, but the Rule already exists in 9656// the specified WebACL. 9657// 9658// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 9659// already exists in the specified WebACL. 9660// 9661// * WAFInvalidParameterException 9662// The operation failed because AWS WAF didn't recognize a parameter in the 9663// request. For example: 9664// 9665// * You specified an invalid parameter name. 9666// 9667// * You specified an invalid value. 9668// 9669// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 9670// using an action other than INSERT or DELETE. 9671// 9672// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 9673// BLOCK, or COUNT. 9674// 9675// * You tried to create a RateBasedRule with a RateKey value other than 9676// IP. 9677// 9678// * You tried to update a WebACL with a WafAction Type other than ALLOW, 9679// BLOCK, or COUNT. 9680// 9681// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 9682// HEADER, METHOD, QUERY_STRING, URI, or BODY. 9683// 9684// * You tried to update a ByteMatchSet with a Field of HEADER but no value 9685// for Data. 9686// 9687// * Your request references an ARN that is malformed, or corresponds to 9688// a resource with which a web ACL cannot be associated. 9689// 9690// * WAFNonexistentContainerException 9691// The operation failed because you tried to add an object to or delete an object 9692// from another object that doesn't exist. For example: 9693// 9694// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 9695// exist. 9696// 9697// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 9698// that doesn't exist. 9699// 9700// * You tried to add an IP address to or delete an IP address from an IPSet 9701// that doesn't exist. 9702// 9703// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 9704// a ByteMatchSet that doesn't exist. 9705// 9706// * WAFNonexistentItemException 9707// The operation failed because the referenced object doesn't exist. 9708// 9709// * WAFReferencedItemException 9710// The operation failed because you tried to delete an object that is still 9711// in use. For example: 9712// 9713// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 9714// 9715// * You tried to delete a Rule that is still referenced by a WebACL. 9716// 9717// * WAFLimitsExceededException 9718// The operation exceeds a resource limit, for example, the maximum number of 9719// WebACL objects that you can create for an AWS account. For more information, 9720// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 9721// in the AWS WAF Developer Guide. 9722// 9723// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRule 9724func (c *WAFRegional) UpdateRule(input *waf.UpdateRuleInput) (*waf.UpdateRuleOutput, error) { 9725 req, out := c.UpdateRuleRequest(input) 9726 return out, req.Send() 9727} 9728 9729// UpdateRuleWithContext is the same as UpdateRule with the addition of 9730// the ability to pass a context and additional request options. 9731// 9732// See UpdateRule for details on how to use this API operation. 9733// 9734// The context must be non-nil and will be used for request cancellation. If 9735// the context is nil a panic will occur. In the future the SDK may create 9736// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9737// for more information on using Contexts. 9738func (c *WAFRegional) UpdateRuleWithContext(ctx aws.Context, input *waf.UpdateRuleInput, opts ...request.Option) (*waf.UpdateRuleOutput, error) { 9739 req, out := c.UpdateRuleRequest(input) 9740 req.SetContext(ctx) 9741 req.ApplyOptions(opts...) 9742 return out, req.Send() 9743} 9744 9745const opUpdateRuleGroup = "UpdateRuleGroup" 9746 9747// UpdateRuleGroupRequest generates a "aws/request.Request" representing the 9748// client's request for the UpdateRuleGroup operation. The "output" return 9749// value will be populated with the request's response once the request completes 9750// successfully. 9751// 9752// Use "Send" method on the returned Request to send the API call to the service. 9753// the "output" return value is not valid until after Send returns without error. 9754// 9755// See UpdateRuleGroup for more information on using the UpdateRuleGroup 9756// API call, and error handling. 9757// 9758// This method is useful when you want to inject custom logic or configuration 9759// into the SDK's request lifecycle. Such as custom headers, or retry logic. 9760// 9761// 9762// // Example sending a request using the UpdateRuleGroupRequest method. 9763// req, resp := client.UpdateRuleGroupRequest(params) 9764// 9765// err := req.Send() 9766// if err == nil { // resp is now filled 9767// fmt.Println(resp) 9768// } 9769// 9770// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRuleGroup 9771func (c *WAFRegional) UpdateRuleGroupRequest(input *waf.UpdateRuleGroupInput) (req *request.Request, output *waf.UpdateRuleGroupOutput) { 9772 op := &request.Operation{ 9773 Name: opUpdateRuleGroup, 9774 HTTPMethod: "POST", 9775 HTTPPath: "/", 9776 } 9777 9778 if input == nil { 9779 input = &waf.UpdateRuleGroupInput{} 9780 } 9781 9782 output = &waf.UpdateRuleGroupOutput{} 9783 req = c.newRequest(op, input, output) 9784 return 9785} 9786 9787// UpdateRuleGroup API operation for AWS WAF Regional. 9788// 9789// 9790// This is AWS WAF Classic documentation. For more information, see AWS WAF 9791// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 9792// in the developer guide. 9793// 9794// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 9795// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 9796// With the latest version, AWS WAF has a single set of endpoints for regional 9797// and global use. 9798// 9799// Inserts or deletes ActivatedRule objects in a RuleGroup. 9800// 9801// You can only insert REGULAR rules into a rule group. 9802// 9803// You can have a maximum of ten rules per rule group. 9804// 9805// To create and configure a RuleGroup, perform the following steps: 9806// 9807// Create and update the Rules that you want to include in the RuleGroup. See 9808// CreateRule. 9809// 9810// Use GetChangeToken to get the change token that you provide in the ChangeToken 9811// parameter of an UpdateRuleGroup request. 9812// 9813// Submit an UpdateRuleGroup request to add Rules to the RuleGroup. 9814// 9815// Create and update a WebACL that contains the RuleGroup. See CreateWebACL. 9816// 9817// If you want to replace one Rule with another, you delete the existing one 9818// and add the new one. 9819// 9820// For more information about how to use the AWS WAF API to allow or block HTTP 9821// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 9822// 9823// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 9824// with awserr.Error's Code and Message methods to get detailed information about 9825// the error. 9826// 9827// See the AWS API reference guide for AWS WAF Regional's 9828// API operation UpdateRuleGroup for usage and error information. 9829// 9830// Returned Error Types: 9831// * WAFStaleDataException 9832// The operation failed because you tried to create, update, or delete an object 9833// by using a change token that has already been used. 9834// 9835// * WAFInternalErrorException 9836// The operation failed because of a system problem, even though the request 9837// was valid. Retry your request. 9838// 9839// * WAFNonexistentContainerException 9840// The operation failed because you tried to add an object to or delete an object 9841// from another object that doesn't exist. For example: 9842// 9843// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 9844// exist. 9845// 9846// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 9847// that doesn't exist. 9848// 9849// * You tried to add an IP address to or delete an IP address from an IPSet 9850// that doesn't exist. 9851// 9852// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 9853// a ByteMatchSet that doesn't exist. 9854// 9855// * WAFNonexistentItemException 9856// The operation failed because the referenced object doesn't exist. 9857// 9858// * WAFInvalidOperationException 9859// The operation failed because there was nothing to do. For example: 9860// 9861// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 9862// specified WebACL. 9863// 9864// * You tried to remove an IP address from an IPSet, but the IP address 9865// isn't in the specified IPSet. 9866// 9867// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 9868// isn't in the specified WebACL. 9869// 9870// * You tried to add a Rule to a WebACL, but the Rule already exists in 9871// the specified WebACL. 9872// 9873// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 9874// already exists in the specified WebACL. 9875// 9876// * WAFLimitsExceededException 9877// The operation exceeds a resource limit, for example, the maximum number of 9878// WebACL objects that you can create for an AWS account. For more information, 9879// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 9880// in the AWS WAF Developer Guide. 9881// 9882// * WAFInvalidParameterException 9883// The operation failed because AWS WAF didn't recognize a parameter in the 9884// request. For example: 9885// 9886// * You specified an invalid parameter name. 9887// 9888// * You specified an invalid value. 9889// 9890// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 9891// using an action other than INSERT or DELETE. 9892// 9893// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 9894// BLOCK, or COUNT. 9895// 9896// * You tried to create a RateBasedRule with a RateKey value other than 9897// IP. 9898// 9899// * You tried to update a WebACL with a WafAction Type other than ALLOW, 9900// BLOCK, or COUNT. 9901// 9902// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 9903// HEADER, METHOD, QUERY_STRING, URI, or BODY. 9904// 9905// * You tried to update a ByteMatchSet with a Field of HEADER but no value 9906// for Data. 9907// 9908// * Your request references an ARN that is malformed, or corresponds to 9909// a resource with which a web ACL cannot be associated. 9910// 9911// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateRuleGroup 9912func (c *WAFRegional) UpdateRuleGroup(input *waf.UpdateRuleGroupInput) (*waf.UpdateRuleGroupOutput, error) { 9913 req, out := c.UpdateRuleGroupRequest(input) 9914 return out, req.Send() 9915} 9916 9917// UpdateRuleGroupWithContext is the same as UpdateRuleGroup with the addition of 9918// the ability to pass a context and additional request options. 9919// 9920// See UpdateRuleGroup for details on how to use this API operation. 9921// 9922// The context must be non-nil and will be used for request cancellation. If 9923// the context is nil a panic will occur. In the future the SDK may create 9924// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 9925// for more information on using Contexts. 9926func (c *WAFRegional) UpdateRuleGroupWithContext(ctx aws.Context, input *waf.UpdateRuleGroupInput, opts ...request.Option) (*waf.UpdateRuleGroupOutput, error) { 9927 req, out := c.UpdateRuleGroupRequest(input) 9928 req.SetContext(ctx) 9929 req.ApplyOptions(opts...) 9930 return out, req.Send() 9931} 9932 9933const opUpdateSizeConstraintSet = "UpdateSizeConstraintSet" 9934 9935// UpdateSizeConstraintSetRequest generates a "aws/request.Request" representing the 9936// client's request for the UpdateSizeConstraintSet operation. The "output" return 9937// value will be populated with the request's response once the request completes 9938// successfully. 9939// 9940// Use "Send" method on the returned Request to send the API call to the service. 9941// the "output" return value is not valid until after Send returns without error. 9942// 9943// See UpdateSizeConstraintSet for more information on using the UpdateSizeConstraintSet 9944// API call, and error handling. 9945// 9946// This method is useful when you want to inject custom logic or configuration 9947// into the SDK's request lifecycle. Such as custom headers, or retry logic. 9948// 9949// 9950// // Example sending a request using the UpdateSizeConstraintSetRequest method. 9951// req, resp := client.UpdateSizeConstraintSetRequest(params) 9952// 9953// err := req.Send() 9954// if err == nil { // resp is now filled 9955// fmt.Println(resp) 9956// } 9957// 9958// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateSizeConstraintSet 9959func (c *WAFRegional) UpdateSizeConstraintSetRequest(input *waf.UpdateSizeConstraintSetInput) (req *request.Request, output *waf.UpdateSizeConstraintSetOutput) { 9960 op := &request.Operation{ 9961 Name: opUpdateSizeConstraintSet, 9962 HTTPMethod: "POST", 9963 HTTPPath: "/", 9964 } 9965 9966 if input == nil { 9967 input = &waf.UpdateSizeConstraintSetInput{} 9968 } 9969 9970 output = &waf.UpdateSizeConstraintSetOutput{} 9971 req = c.newRequest(op, input, output) 9972 return 9973} 9974 9975// UpdateSizeConstraintSet API operation for AWS WAF Regional. 9976// 9977// 9978// This is AWS WAF Classic documentation. For more information, see AWS WAF 9979// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 9980// in the developer guide. 9981// 9982// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 9983// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 9984// With the latest version, AWS WAF has a single set of endpoints for regional 9985// and global use. 9986// 9987// Inserts or deletes SizeConstraint objects (filters) in a SizeConstraintSet. 9988// For each SizeConstraint object, you specify the following values: 9989// 9990// * Whether to insert or delete the object from the array. If you want to 9991// change a SizeConstraintSetUpdate object, you delete the existing object 9992// and add a new one. 9993// 9994// * The part of a web request that you want AWS WAF to evaluate, such as 9995// the length of a query string or the length of the User-Agent header. 9996// 9997// * Whether to perform any transformations on the request, such as converting 9998// it to lowercase, before checking its length. Note that transformations 9999// of the request body are not supported because the AWS resource forwards 10000// only the first 8192 bytes of your request to AWS WAF. You can only specify 10001// a single type of TextTransformation. 10002// 10003// * A ComparisonOperator used for evaluating the selected part of the request 10004// against the specified Size, such as equals, greater than, less than, and 10005// so on. 10006// 10007// * The length, in bytes, that you want AWS WAF to watch for in selected 10008// part of the request. The length is computed after applying the transformation. 10009// 10010// For example, you can add a SizeConstraintSetUpdate object that matches web 10011// requests in which the length of the User-Agent header is greater than 100 10012// bytes. You can then configure AWS WAF to block those requests. 10013// 10014// To create and configure a SizeConstraintSet, perform the following steps: 10015// 10016// Create a SizeConstraintSet. For more information, see CreateSizeConstraintSet. 10017// 10018// Use GetChangeToken to get the change token that you provide in the ChangeToken 10019// parameter of an UpdateSizeConstraintSet request. 10020// 10021// Submit an UpdateSizeConstraintSet request to specify the part of the request 10022// that you want AWS WAF to inspect (for example, the header or the URI) and 10023// the value that you want AWS WAF to watch for. 10024// 10025// For more information about how to use the AWS WAF API to allow or block HTTP 10026// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 10027// 10028// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10029// with awserr.Error's Code and Message methods to get detailed information about 10030// the error. 10031// 10032// See the AWS API reference guide for AWS WAF Regional's 10033// API operation UpdateSizeConstraintSet for usage and error information. 10034// 10035// Returned Error Types: 10036// * WAFStaleDataException 10037// The operation failed because you tried to create, update, or delete an object 10038// by using a change token that has already been used. 10039// 10040// * WAFInternalErrorException 10041// The operation failed because of a system problem, even though the request 10042// was valid. Retry your request. 10043// 10044// * WAFInvalidAccountException 10045// The operation failed because you tried to create, update, or delete an object 10046// by using an invalid account identifier. 10047// 10048// * WAFInvalidOperationException 10049// The operation failed because there was nothing to do. For example: 10050// 10051// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 10052// specified WebACL. 10053// 10054// * You tried to remove an IP address from an IPSet, but the IP address 10055// isn't in the specified IPSet. 10056// 10057// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 10058// isn't in the specified WebACL. 10059// 10060// * You tried to add a Rule to a WebACL, but the Rule already exists in 10061// the specified WebACL. 10062// 10063// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 10064// already exists in the specified WebACL. 10065// 10066// * WAFInvalidParameterException 10067// The operation failed because AWS WAF didn't recognize a parameter in the 10068// request. For example: 10069// 10070// * You specified an invalid parameter name. 10071// 10072// * You specified an invalid value. 10073// 10074// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 10075// using an action other than INSERT or DELETE. 10076// 10077// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 10078// BLOCK, or COUNT. 10079// 10080// * You tried to create a RateBasedRule with a RateKey value other than 10081// IP. 10082// 10083// * You tried to update a WebACL with a WafAction Type other than ALLOW, 10084// BLOCK, or COUNT. 10085// 10086// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 10087// HEADER, METHOD, QUERY_STRING, URI, or BODY. 10088// 10089// * You tried to update a ByteMatchSet with a Field of HEADER but no value 10090// for Data. 10091// 10092// * Your request references an ARN that is malformed, or corresponds to 10093// a resource with which a web ACL cannot be associated. 10094// 10095// * WAFNonexistentContainerException 10096// The operation failed because you tried to add an object to or delete an object 10097// from another object that doesn't exist. For example: 10098// 10099// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 10100// exist. 10101// 10102// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 10103// that doesn't exist. 10104// 10105// * You tried to add an IP address to or delete an IP address from an IPSet 10106// that doesn't exist. 10107// 10108// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 10109// a ByteMatchSet that doesn't exist. 10110// 10111// * WAFNonexistentItemException 10112// The operation failed because the referenced object doesn't exist. 10113// 10114// * WAFReferencedItemException 10115// The operation failed because you tried to delete an object that is still 10116// in use. For example: 10117// 10118// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 10119// 10120// * You tried to delete a Rule that is still referenced by a WebACL. 10121// 10122// * WAFLimitsExceededException 10123// The operation exceeds a resource limit, for example, the maximum number of 10124// WebACL objects that you can create for an AWS account. For more information, 10125// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 10126// in the AWS WAF Developer Guide. 10127// 10128// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateSizeConstraintSet 10129func (c *WAFRegional) UpdateSizeConstraintSet(input *waf.UpdateSizeConstraintSetInput) (*waf.UpdateSizeConstraintSetOutput, error) { 10130 req, out := c.UpdateSizeConstraintSetRequest(input) 10131 return out, req.Send() 10132} 10133 10134// UpdateSizeConstraintSetWithContext is the same as UpdateSizeConstraintSet with the addition of 10135// the ability to pass a context and additional request options. 10136// 10137// See UpdateSizeConstraintSet for details on how to use this API operation. 10138// 10139// The context must be non-nil and will be used for request cancellation. If 10140// the context is nil a panic will occur. In the future the SDK may create 10141// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10142// for more information on using Contexts. 10143func (c *WAFRegional) UpdateSizeConstraintSetWithContext(ctx aws.Context, input *waf.UpdateSizeConstraintSetInput, opts ...request.Option) (*waf.UpdateSizeConstraintSetOutput, error) { 10144 req, out := c.UpdateSizeConstraintSetRequest(input) 10145 req.SetContext(ctx) 10146 req.ApplyOptions(opts...) 10147 return out, req.Send() 10148} 10149 10150const opUpdateSqlInjectionMatchSet = "UpdateSqlInjectionMatchSet" 10151 10152// UpdateSqlInjectionMatchSetRequest generates a "aws/request.Request" representing the 10153// client's request for the UpdateSqlInjectionMatchSet operation. The "output" return 10154// value will be populated with the request's response once the request completes 10155// successfully. 10156// 10157// Use "Send" method on the returned Request to send the API call to the service. 10158// the "output" return value is not valid until after Send returns without error. 10159// 10160// See UpdateSqlInjectionMatchSet for more information on using the UpdateSqlInjectionMatchSet 10161// API call, and error handling. 10162// 10163// This method is useful when you want to inject custom logic or configuration 10164// into the SDK's request lifecycle. Such as custom headers, or retry logic. 10165// 10166// 10167// // Example sending a request using the UpdateSqlInjectionMatchSetRequest method. 10168// req, resp := client.UpdateSqlInjectionMatchSetRequest(params) 10169// 10170// err := req.Send() 10171// if err == nil { // resp is now filled 10172// fmt.Println(resp) 10173// } 10174// 10175// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateSqlInjectionMatchSet 10176func (c *WAFRegional) UpdateSqlInjectionMatchSetRequest(input *waf.UpdateSqlInjectionMatchSetInput) (req *request.Request, output *waf.UpdateSqlInjectionMatchSetOutput) { 10177 op := &request.Operation{ 10178 Name: opUpdateSqlInjectionMatchSet, 10179 HTTPMethod: "POST", 10180 HTTPPath: "/", 10181 } 10182 10183 if input == nil { 10184 input = &waf.UpdateSqlInjectionMatchSetInput{} 10185 } 10186 10187 output = &waf.UpdateSqlInjectionMatchSetOutput{} 10188 req = c.newRequest(op, input, output) 10189 return 10190} 10191 10192// UpdateSqlInjectionMatchSet API operation for AWS WAF Regional. 10193// 10194// 10195// This is AWS WAF Classic documentation. For more information, see AWS WAF 10196// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 10197// in the developer guide. 10198// 10199// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 10200// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 10201// With the latest version, AWS WAF has a single set of endpoints for regional 10202// and global use. 10203// 10204// Inserts or deletes SqlInjectionMatchTuple objects (filters) in a SqlInjectionMatchSet. 10205// For each SqlInjectionMatchTuple object, you specify the following values: 10206// 10207// * Action: Whether to insert the object into or delete the object from 10208// the array. To change a SqlInjectionMatchTuple, you delete the existing 10209// object and add a new one. 10210// 10211// * FieldToMatch: The part of web requests that you want AWS WAF to inspect 10212// and, if you want AWS WAF to inspect a header or custom query parameter, 10213// the name of the header or parameter. 10214// 10215// * TextTransformation: Which text transformation, if any, to perform on 10216// the web request before inspecting the request for snippets of malicious 10217// SQL code. You can only specify a single type of TextTransformation. 10218// 10219// You use SqlInjectionMatchSet objects to specify which CloudFront requests 10220// that you want to allow, block, or count. For example, if you're receiving 10221// requests that contain snippets of SQL code in the query string and you want 10222// to block the requests, you can create a SqlInjectionMatchSet with the applicable 10223// settings, and then configure AWS WAF to block the requests. 10224// 10225// To create and configure a SqlInjectionMatchSet, perform the following steps: 10226// 10227// Submit a CreateSqlInjectionMatchSet request. 10228// 10229// Use GetChangeToken to get the change token that you provide in the ChangeToken 10230// parameter of an UpdateIPSet request. 10231// 10232// Submit an UpdateSqlInjectionMatchSet request to specify the parts of web 10233// requests that you want AWS WAF to inspect for snippets of SQL code. 10234// 10235// For more information about how to use the AWS WAF API to allow or block HTTP 10236// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 10237// 10238// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10239// with awserr.Error's Code and Message methods to get detailed information about 10240// the error. 10241// 10242// See the AWS API reference guide for AWS WAF Regional's 10243// API operation UpdateSqlInjectionMatchSet for usage and error information. 10244// 10245// Returned Error Types: 10246// * WAFInternalErrorException 10247// The operation failed because of a system problem, even though the request 10248// was valid. Retry your request. 10249// 10250// * WAFInvalidAccountException 10251// The operation failed because you tried to create, update, or delete an object 10252// by using an invalid account identifier. 10253// 10254// * WAFInvalidOperationException 10255// The operation failed because there was nothing to do. For example: 10256// 10257// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 10258// specified WebACL. 10259// 10260// * You tried to remove an IP address from an IPSet, but the IP address 10261// isn't in the specified IPSet. 10262// 10263// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 10264// isn't in the specified WebACL. 10265// 10266// * You tried to add a Rule to a WebACL, but the Rule already exists in 10267// the specified WebACL. 10268// 10269// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 10270// already exists in the specified WebACL. 10271// 10272// * WAFInvalidParameterException 10273// The operation failed because AWS WAF didn't recognize a parameter in the 10274// request. For example: 10275// 10276// * You specified an invalid parameter name. 10277// 10278// * You specified an invalid value. 10279// 10280// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 10281// using an action other than INSERT or DELETE. 10282// 10283// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 10284// BLOCK, or COUNT. 10285// 10286// * You tried to create a RateBasedRule with a RateKey value other than 10287// IP. 10288// 10289// * You tried to update a WebACL with a WafAction Type other than ALLOW, 10290// BLOCK, or COUNT. 10291// 10292// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 10293// HEADER, METHOD, QUERY_STRING, URI, or BODY. 10294// 10295// * You tried to update a ByteMatchSet with a Field of HEADER but no value 10296// for Data. 10297// 10298// * Your request references an ARN that is malformed, or corresponds to 10299// a resource with which a web ACL cannot be associated. 10300// 10301// * WAFNonexistentContainerException 10302// The operation failed because you tried to add an object to or delete an object 10303// from another object that doesn't exist. For example: 10304// 10305// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 10306// exist. 10307// 10308// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 10309// that doesn't exist. 10310// 10311// * You tried to add an IP address to or delete an IP address from an IPSet 10312// that doesn't exist. 10313// 10314// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 10315// a ByteMatchSet that doesn't exist. 10316// 10317// * WAFNonexistentItemException 10318// The operation failed because the referenced object doesn't exist. 10319// 10320// * WAFStaleDataException 10321// The operation failed because you tried to create, update, or delete an object 10322// by using a change token that has already been used. 10323// 10324// * WAFLimitsExceededException 10325// The operation exceeds a resource limit, for example, the maximum number of 10326// WebACL objects that you can create for an AWS account. For more information, 10327// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 10328// in the AWS WAF Developer Guide. 10329// 10330// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateSqlInjectionMatchSet 10331func (c *WAFRegional) UpdateSqlInjectionMatchSet(input *waf.UpdateSqlInjectionMatchSetInput) (*waf.UpdateSqlInjectionMatchSetOutput, error) { 10332 req, out := c.UpdateSqlInjectionMatchSetRequest(input) 10333 return out, req.Send() 10334} 10335 10336// UpdateSqlInjectionMatchSetWithContext is the same as UpdateSqlInjectionMatchSet with the addition of 10337// the ability to pass a context and additional request options. 10338// 10339// See UpdateSqlInjectionMatchSet for details on how to use this API operation. 10340// 10341// The context must be non-nil and will be used for request cancellation. If 10342// the context is nil a panic will occur. In the future the SDK may create 10343// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10344// for more information on using Contexts. 10345func (c *WAFRegional) UpdateSqlInjectionMatchSetWithContext(ctx aws.Context, input *waf.UpdateSqlInjectionMatchSetInput, opts ...request.Option) (*waf.UpdateSqlInjectionMatchSetOutput, error) { 10346 req, out := c.UpdateSqlInjectionMatchSetRequest(input) 10347 req.SetContext(ctx) 10348 req.ApplyOptions(opts...) 10349 return out, req.Send() 10350} 10351 10352const opUpdateWebACL = "UpdateWebACL" 10353 10354// UpdateWebACLRequest generates a "aws/request.Request" representing the 10355// client's request for the UpdateWebACL operation. The "output" return 10356// value will be populated with the request's response once the request completes 10357// successfully. 10358// 10359// Use "Send" method on the returned Request to send the API call to the service. 10360// the "output" return value is not valid until after Send returns without error. 10361// 10362// See UpdateWebACL for more information on using the UpdateWebACL 10363// API call, and error handling. 10364// 10365// This method is useful when you want to inject custom logic or configuration 10366// into the SDK's request lifecycle. Such as custom headers, or retry logic. 10367// 10368// 10369// // Example sending a request using the UpdateWebACLRequest method. 10370// req, resp := client.UpdateWebACLRequest(params) 10371// 10372// err := req.Send() 10373// if err == nil { // resp is now filled 10374// fmt.Println(resp) 10375// } 10376// 10377// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateWebACL 10378func (c *WAFRegional) UpdateWebACLRequest(input *waf.UpdateWebACLInput) (req *request.Request, output *waf.UpdateWebACLOutput) { 10379 op := &request.Operation{ 10380 Name: opUpdateWebACL, 10381 HTTPMethod: "POST", 10382 HTTPPath: "/", 10383 } 10384 10385 if input == nil { 10386 input = &waf.UpdateWebACLInput{} 10387 } 10388 10389 output = &waf.UpdateWebACLOutput{} 10390 req = c.newRequest(op, input, output) 10391 return 10392} 10393 10394// UpdateWebACL API operation for AWS WAF Regional. 10395// 10396// 10397// This is AWS WAF Classic documentation. For more information, see AWS WAF 10398// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 10399// in the developer guide. 10400// 10401// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 10402// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 10403// With the latest version, AWS WAF has a single set of endpoints for regional 10404// and global use. 10405// 10406// Inserts or deletes ActivatedRule objects in a WebACL. Each Rule identifies 10407// web requests that you want to allow, block, or count. When you update a WebACL, 10408// you specify the following values: 10409// 10410// * A default action for the WebACL, either ALLOW or BLOCK. AWS WAF performs 10411// the default action if a request doesn't match the criteria in any of the 10412// Rules in a WebACL. 10413// 10414// * The Rules that you want to add or delete. If you want to replace one 10415// Rule with another, you delete the existing Rule and add the new one. 10416// 10417// * For each Rule, whether you want AWS WAF to allow requests, block requests, 10418// or count requests that match the conditions in the Rule. 10419// 10420// * The order in which you want AWS WAF to evaluate the Rules in a WebACL. 10421// If you add more than one Rule to a WebACL, AWS WAF evaluates each request 10422// against the Rules in order based on the value of Priority. (The Rule that 10423// has the lowest value for Priority is evaluated first.) When a web request 10424// matches all the predicates (such as ByteMatchSets and IPSets) in a Rule, 10425// AWS WAF immediately takes the corresponding action, allow or block, and 10426// doesn't evaluate the request against the remaining Rules in the WebACL, 10427// if any. 10428// 10429// To create and configure a WebACL, perform the following steps: 10430// 10431// Create and update the predicates that you want to include in Rules. For more 10432// information, see CreateByteMatchSet, UpdateByteMatchSet, CreateIPSet, UpdateIPSet, 10433// CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet. 10434// 10435// Create and update the Rules that you want to include in the WebACL. For more 10436// information, see CreateRule and UpdateRule. 10437// 10438// Create a WebACL. See CreateWebACL. 10439// 10440// Use GetChangeToken to get the change token that you provide in the ChangeToken 10441// parameter of an UpdateWebACL request. 10442// 10443// Submit an UpdateWebACL request to specify the Rules that you want to include 10444// in the WebACL, to specify the default action, and to associate the WebACL 10445// with a CloudFront distribution. 10446// 10447// The ActivatedRule can be a rule group. If you specify a rule group as your 10448// ActivatedRule , you can exclude specific rules from that rule group. 10449// 10450// If you already have a rule group associated with a web ACL and want to submit 10451// an UpdateWebACL request to exclude certain rules from that rule group, you 10452// must first remove the rule group from the web ACL, the re-insert it again, 10453// specifying the excluded rules. For details, see ActivatedRule$ExcludedRules . 10454// 10455// Be aware that if you try to add a RATE_BASED rule to a web ACL without setting 10456// the rule type when first creating the rule, the UpdateWebACL request will 10457// fail because the request tries to add a REGULAR rule (the default rule type) 10458// with the specified ID, which does not exist. 10459// 10460// For more information about how to use the AWS WAF API to allow or block HTTP 10461// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 10462// 10463// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10464// with awserr.Error's Code and Message methods to get detailed information about 10465// the error. 10466// 10467// See the AWS API reference guide for AWS WAF Regional's 10468// API operation UpdateWebACL for usage and error information. 10469// 10470// Returned Error Types: 10471// * WAFStaleDataException 10472// The operation failed because you tried to create, update, or delete an object 10473// by using a change token that has already been used. 10474// 10475// * WAFInternalErrorException 10476// The operation failed because of a system problem, even though the request 10477// was valid. Retry your request. 10478// 10479// * WAFInvalidAccountException 10480// The operation failed because you tried to create, update, or delete an object 10481// by using an invalid account identifier. 10482// 10483// * WAFInvalidOperationException 10484// The operation failed because there was nothing to do. For example: 10485// 10486// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 10487// specified WebACL. 10488// 10489// * You tried to remove an IP address from an IPSet, but the IP address 10490// isn't in the specified IPSet. 10491// 10492// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 10493// isn't in the specified WebACL. 10494// 10495// * You tried to add a Rule to a WebACL, but the Rule already exists in 10496// the specified WebACL. 10497// 10498// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 10499// already exists in the specified WebACL. 10500// 10501// * WAFInvalidParameterException 10502// The operation failed because AWS WAF didn't recognize a parameter in the 10503// request. For example: 10504// 10505// * You specified an invalid parameter name. 10506// 10507// * You specified an invalid value. 10508// 10509// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 10510// using an action other than INSERT or DELETE. 10511// 10512// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 10513// BLOCK, or COUNT. 10514// 10515// * You tried to create a RateBasedRule with a RateKey value other than 10516// IP. 10517// 10518// * You tried to update a WebACL with a WafAction Type other than ALLOW, 10519// BLOCK, or COUNT. 10520// 10521// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 10522// HEADER, METHOD, QUERY_STRING, URI, or BODY. 10523// 10524// * You tried to update a ByteMatchSet with a Field of HEADER but no value 10525// for Data. 10526// 10527// * Your request references an ARN that is malformed, or corresponds to 10528// a resource with which a web ACL cannot be associated. 10529// 10530// * WAFNonexistentContainerException 10531// The operation failed because you tried to add an object to or delete an object 10532// from another object that doesn't exist. For example: 10533// 10534// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 10535// exist. 10536// 10537// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 10538// that doesn't exist. 10539// 10540// * You tried to add an IP address to or delete an IP address from an IPSet 10541// that doesn't exist. 10542// 10543// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 10544// a ByteMatchSet that doesn't exist. 10545// 10546// * WAFNonexistentItemException 10547// The operation failed because the referenced object doesn't exist. 10548// 10549// * WAFReferencedItemException 10550// The operation failed because you tried to delete an object that is still 10551// in use. For example: 10552// 10553// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 10554// 10555// * You tried to delete a Rule that is still referenced by a WebACL. 10556// 10557// * WAFLimitsExceededException 10558// The operation exceeds a resource limit, for example, the maximum number of 10559// WebACL objects that you can create for an AWS account. For more information, 10560// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 10561// in the AWS WAF Developer Guide. 10562// 10563// * WAFSubscriptionNotFoundException 10564// The specified subscription does not exist. 10565// 10566// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateWebACL 10567func (c *WAFRegional) UpdateWebACL(input *waf.UpdateWebACLInput) (*waf.UpdateWebACLOutput, error) { 10568 req, out := c.UpdateWebACLRequest(input) 10569 return out, req.Send() 10570} 10571 10572// UpdateWebACLWithContext is the same as UpdateWebACL with the addition of 10573// the ability to pass a context and additional request options. 10574// 10575// See UpdateWebACL for details on how to use this API operation. 10576// 10577// The context must be non-nil and will be used for request cancellation. If 10578// the context is nil a panic will occur. In the future the SDK may create 10579// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10580// for more information on using Contexts. 10581func (c *WAFRegional) UpdateWebACLWithContext(ctx aws.Context, input *waf.UpdateWebACLInput, opts ...request.Option) (*waf.UpdateWebACLOutput, error) { 10582 req, out := c.UpdateWebACLRequest(input) 10583 req.SetContext(ctx) 10584 req.ApplyOptions(opts...) 10585 return out, req.Send() 10586} 10587 10588const opUpdateXssMatchSet = "UpdateXssMatchSet" 10589 10590// UpdateXssMatchSetRequest generates a "aws/request.Request" representing the 10591// client's request for the UpdateXssMatchSet operation. The "output" return 10592// value will be populated with the request's response once the request completes 10593// successfully. 10594// 10595// Use "Send" method on the returned Request to send the API call to the service. 10596// the "output" return value is not valid until after Send returns without error. 10597// 10598// See UpdateXssMatchSet for more information on using the UpdateXssMatchSet 10599// API call, and error handling. 10600// 10601// This method is useful when you want to inject custom logic or configuration 10602// into the SDK's request lifecycle. Such as custom headers, or retry logic. 10603// 10604// 10605// // Example sending a request using the UpdateXssMatchSetRequest method. 10606// req, resp := client.UpdateXssMatchSetRequest(params) 10607// 10608// err := req.Send() 10609// if err == nil { // resp is now filled 10610// fmt.Println(resp) 10611// } 10612// 10613// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateXssMatchSet 10614func (c *WAFRegional) UpdateXssMatchSetRequest(input *waf.UpdateXssMatchSetInput) (req *request.Request, output *waf.UpdateXssMatchSetOutput) { 10615 op := &request.Operation{ 10616 Name: opUpdateXssMatchSet, 10617 HTTPMethod: "POST", 10618 HTTPPath: "/", 10619 } 10620 10621 if input == nil { 10622 input = &waf.UpdateXssMatchSetInput{} 10623 } 10624 10625 output = &waf.UpdateXssMatchSetOutput{} 10626 req = c.newRequest(op, input, output) 10627 return 10628} 10629 10630// UpdateXssMatchSet API operation for AWS WAF Regional. 10631// 10632// 10633// This is AWS WAF Classic documentation. For more information, see AWS WAF 10634// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) 10635// in the developer guide. 10636// 10637// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS 10638// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 10639// With the latest version, AWS WAF has a single set of endpoints for regional 10640// and global use. 10641// 10642// Inserts or deletes XssMatchTuple objects (filters) in an XssMatchSet. For 10643// each XssMatchTuple object, you specify the following values: 10644// 10645// * Action: Whether to insert the object into or delete the object from 10646// the array. To change an XssMatchTuple, you delete the existing object 10647// and add a new one. 10648// 10649// * FieldToMatch: The part of web requests that you want AWS WAF to inspect 10650// and, if you want AWS WAF to inspect a header or custom query parameter, 10651// the name of the header or parameter. 10652// 10653// * TextTransformation: Which text transformation, if any, to perform on 10654// the web request before inspecting the request for cross-site scripting 10655// attacks. You can only specify a single type of TextTransformation. 10656// 10657// You use XssMatchSet objects to specify which CloudFront requests that you 10658// want to allow, block, or count. For example, if you're receiving requests 10659// that contain cross-site scripting attacks in the request body and you want 10660// to block the requests, you can create an XssMatchSet with the applicable 10661// settings, and then configure AWS WAF to block the requests. 10662// 10663// To create and configure an XssMatchSet, perform the following steps: 10664// 10665// Submit a CreateXssMatchSet request. 10666// 10667// Use GetChangeToken to get the change token that you provide in the ChangeToken 10668// parameter of an UpdateIPSet request. 10669// 10670// Submit an UpdateXssMatchSet request to specify the parts of web requests 10671// that you want AWS WAF to inspect for cross-site scripting attacks. 10672// 10673// For more information about how to use the AWS WAF API to allow or block HTTP 10674// requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). 10675// 10676// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 10677// with awserr.Error's Code and Message methods to get detailed information about 10678// the error. 10679// 10680// See the AWS API reference guide for AWS WAF Regional's 10681// API operation UpdateXssMatchSet for usage and error information. 10682// 10683// Returned Error Types: 10684// * WAFInternalErrorException 10685// The operation failed because of a system problem, even though the request 10686// was valid. Retry your request. 10687// 10688// * WAFInvalidAccountException 10689// The operation failed because you tried to create, update, or delete an object 10690// by using an invalid account identifier. 10691// 10692// * WAFInvalidOperationException 10693// The operation failed because there was nothing to do. For example: 10694// 10695// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 10696// specified WebACL. 10697// 10698// * You tried to remove an IP address from an IPSet, but the IP address 10699// isn't in the specified IPSet. 10700// 10701// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 10702// isn't in the specified WebACL. 10703// 10704// * You tried to add a Rule to a WebACL, but the Rule already exists in 10705// the specified WebACL. 10706// 10707// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 10708// already exists in the specified WebACL. 10709// 10710// * WAFInvalidParameterException 10711// The operation failed because AWS WAF didn't recognize a parameter in the 10712// request. For example: 10713// 10714// * You specified an invalid parameter name. 10715// 10716// * You specified an invalid value. 10717// 10718// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 10719// using an action other than INSERT or DELETE. 10720// 10721// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 10722// BLOCK, or COUNT. 10723// 10724// * You tried to create a RateBasedRule with a RateKey value other than 10725// IP. 10726// 10727// * You tried to update a WebACL with a WafAction Type other than ALLOW, 10728// BLOCK, or COUNT. 10729// 10730// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 10731// HEADER, METHOD, QUERY_STRING, URI, or BODY. 10732// 10733// * You tried to update a ByteMatchSet with a Field of HEADER but no value 10734// for Data. 10735// 10736// * Your request references an ARN that is malformed, or corresponds to 10737// a resource with which a web ACL cannot be associated. 10738// 10739// * WAFNonexistentContainerException 10740// The operation failed because you tried to add an object to or delete an object 10741// from another object that doesn't exist. For example: 10742// 10743// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 10744// exist. 10745// 10746// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 10747// that doesn't exist. 10748// 10749// * You tried to add an IP address to or delete an IP address from an IPSet 10750// that doesn't exist. 10751// 10752// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 10753// a ByteMatchSet that doesn't exist. 10754// 10755// * WAFNonexistentItemException 10756// The operation failed because the referenced object doesn't exist. 10757// 10758// * WAFStaleDataException 10759// The operation failed because you tried to create, update, or delete an object 10760// by using a change token that has already been used. 10761// 10762// * WAFLimitsExceededException 10763// The operation exceeds a resource limit, for example, the maximum number of 10764// WebACL objects that you can create for an AWS account. For more information, 10765// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 10766// in the AWS WAF Developer Guide. 10767// 10768// See also, https://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateXssMatchSet 10769func (c *WAFRegional) UpdateXssMatchSet(input *waf.UpdateXssMatchSetInput) (*waf.UpdateXssMatchSetOutput, error) { 10770 req, out := c.UpdateXssMatchSetRequest(input) 10771 return out, req.Send() 10772} 10773 10774// UpdateXssMatchSetWithContext is the same as UpdateXssMatchSet with the addition of 10775// the ability to pass a context and additional request options. 10776// 10777// See UpdateXssMatchSet for details on how to use this API operation. 10778// 10779// The context must be non-nil and will be used for request cancellation. If 10780// the context is nil a panic will occur. In the future the SDK may create 10781// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 10782// for more information on using Contexts. 10783func (c *WAFRegional) UpdateXssMatchSetWithContext(ctx aws.Context, input *waf.UpdateXssMatchSetInput, opts ...request.Option) (*waf.UpdateXssMatchSetOutput, error) { 10784 req, out := c.UpdateXssMatchSetRequest(input) 10785 req.SetContext(ctx) 10786 req.ApplyOptions(opts...) 10787 return out, req.Send() 10788} 10789 10790type AssociateWebACLInput struct { 10791 _ struct{} `type:"structure"` 10792 10793 // The ARN (Amazon Resource Name) of the resource to be protected, either an 10794 // application load balancer or Amazon API Gateway stage. 10795 // 10796 // The ARN should be in one of the following formats: 10797 // 10798 // * For an Application Load Balancer: arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id 10799 // 10800 // * For an Amazon API Gateway stage: arn:aws:apigateway:region::/restapis/api-id/stages/stage-name 10801 // 10802 // ResourceArn is a required field 10803 ResourceArn *string `min:"1" type:"string" required:"true"` 10804 10805 // A unique identifier (ID) for the web ACL. 10806 // 10807 // WebACLId is a required field 10808 WebACLId *string `min:"1" type:"string" required:"true"` 10809} 10810 10811// String returns the string representation 10812func (s AssociateWebACLInput) String() string { 10813 return awsutil.Prettify(s) 10814} 10815 10816// GoString returns the string representation 10817func (s AssociateWebACLInput) GoString() string { 10818 return s.String() 10819} 10820 10821// Validate inspects the fields of the type to determine if they are valid. 10822func (s *AssociateWebACLInput) Validate() error { 10823 invalidParams := request.ErrInvalidParams{Context: "AssociateWebACLInput"} 10824 if s.ResourceArn == nil { 10825 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 10826 } 10827 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 10828 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 10829 } 10830 if s.WebACLId == nil { 10831 invalidParams.Add(request.NewErrParamRequired("WebACLId")) 10832 } 10833 if s.WebACLId != nil && len(*s.WebACLId) < 1 { 10834 invalidParams.Add(request.NewErrParamMinLen("WebACLId", 1)) 10835 } 10836 10837 if invalidParams.Len() > 0 { 10838 return invalidParams 10839 } 10840 return nil 10841} 10842 10843// SetResourceArn sets the ResourceArn field's value. 10844func (s *AssociateWebACLInput) SetResourceArn(v string) *AssociateWebACLInput { 10845 s.ResourceArn = &v 10846 return s 10847} 10848 10849// SetWebACLId sets the WebACLId field's value. 10850func (s *AssociateWebACLInput) SetWebACLId(v string) *AssociateWebACLInput { 10851 s.WebACLId = &v 10852 return s 10853} 10854 10855type AssociateWebACLOutput struct { 10856 _ struct{} `type:"structure"` 10857} 10858 10859// String returns the string representation 10860func (s AssociateWebACLOutput) String() string { 10861 return awsutil.Prettify(s) 10862} 10863 10864// GoString returns the string representation 10865func (s AssociateWebACLOutput) GoString() string { 10866 return s.String() 10867} 10868 10869type DisassociateWebACLInput struct { 10870 _ struct{} `type:"structure"` 10871 10872 // The ARN (Amazon Resource Name) of the resource from which the web ACL is 10873 // being removed, either an application load balancer or Amazon API Gateway 10874 // stage. 10875 // 10876 // The ARN should be in one of the following formats: 10877 // 10878 // * For an Application Load Balancer: arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id 10879 // 10880 // * For an Amazon API Gateway stage: arn:aws:apigateway:region::/restapis/api-id/stages/stage-name 10881 // 10882 // ResourceArn is a required field 10883 ResourceArn *string `min:"1" type:"string" required:"true"` 10884} 10885 10886// String returns the string representation 10887func (s DisassociateWebACLInput) String() string { 10888 return awsutil.Prettify(s) 10889} 10890 10891// GoString returns the string representation 10892func (s DisassociateWebACLInput) GoString() string { 10893 return s.String() 10894} 10895 10896// Validate inspects the fields of the type to determine if they are valid. 10897func (s *DisassociateWebACLInput) Validate() error { 10898 invalidParams := request.ErrInvalidParams{Context: "DisassociateWebACLInput"} 10899 if s.ResourceArn == nil { 10900 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 10901 } 10902 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 10903 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 10904 } 10905 10906 if invalidParams.Len() > 0 { 10907 return invalidParams 10908 } 10909 return nil 10910} 10911 10912// SetResourceArn sets the ResourceArn field's value. 10913func (s *DisassociateWebACLInput) SetResourceArn(v string) *DisassociateWebACLInput { 10914 s.ResourceArn = &v 10915 return s 10916} 10917 10918type DisassociateWebACLOutput struct { 10919 _ struct{} `type:"structure"` 10920} 10921 10922// String returns the string representation 10923func (s DisassociateWebACLOutput) String() string { 10924 return awsutil.Prettify(s) 10925} 10926 10927// GoString returns the string representation 10928func (s DisassociateWebACLOutput) GoString() string { 10929 return s.String() 10930} 10931 10932type GetWebACLForResourceInput struct { 10933 _ struct{} `type:"structure"` 10934 10935 // The ARN (Amazon Resource Name) of the resource for which to get the web ACL, 10936 // either an application load balancer or Amazon API Gateway stage. 10937 // 10938 // The ARN should be in one of the following formats: 10939 // 10940 // * For an Application Load Balancer: arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id 10941 // 10942 // * For an Amazon API Gateway stage: arn:aws:apigateway:region::/restapis/api-id/stages/stage-name 10943 // 10944 // ResourceArn is a required field 10945 ResourceArn *string `min:"1" type:"string" required:"true"` 10946} 10947 10948// String returns the string representation 10949func (s GetWebACLForResourceInput) String() string { 10950 return awsutil.Prettify(s) 10951} 10952 10953// GoString returns the string representation 10954func (s GetWebACLForResourceInput) GoString() string { 10955 return s.String() 10956} 10957 10958// Validate inspects the fields of the type to determine if they are valid. 10959func (s *GetWebACLForResourceInput) Validate() error { 10960 invalidParams := request.ErrInvalidParams{Context: "GetWebACLForResourceInput"} 10961 if s.ResourceArn == nil { 10962 invalidParams.Add(request.NewErrParamRequired("ResourceArn")) 10963 } 10964 if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { 10965 invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) 10966 } 10967 10968 if invalidParams.Len() > 0 { 10969 return invalidParams 10970 } 10971 return nil 10972} 10973 10974// SetResourceArn sets the ResourceArn field's value. 10975func (s *GetWebACLForResourceInput) SetResourceArn(v string) *GetWebACLForResourceInput { 10976 s.ResourceArn = &v 10977 return s 10978} 10979 10980type GetWebACLForResourceOutput struct { 10981 _ struct{} `type:"structure"` 10982 10983 // Information about the web ACL that you specified in the GetWebACLForResource 10984 // request. If there is no associated resource, a null WebACLSummary is returned. 10985 WebACLSummary *waf.WebACLSummary `type:"structure"` 10986} 10987 10988// String returns the string representation 10989func (s GetWebACLForResourceOutput) String() string { 10990 return awsutil.Prettify(s) 10991} 10992 10993// GoString returns the string representation 10994func (s GetWebACLForResourceOutput) GoString() string { 10995 return s.String() 10996} 10997 10998// SetWebACLSummary sets the WebACLSummary field's value. 10999func (s *GetWebACLForResourceOutput) SetWebACLSummary(v *waf.WebACLSummary) *GetWebACLForResourceOutput { 11000 s.WebACLSummary = v 11001 return s 11002} 11003 11004type ListResourcesForWebACLInput struct { 11005 _ struct{} `type:"structure"` 11006 11007 // The type of resource to list, either an application load balancer or Amazon 11008 // API Gateway. 11009 ResourceType *string `type:"string" enum:"ResourceType"` 11010 11011 // The unique identifier (ID) of the web ACL for which to list the associated 11012 // resources. 11013 // 11014 // WebACLId is a required field 11015 WebACLId *string `min:"1" type:"string" required:"true"` 11016} 11017 11018// String returns the string representation 11019func (s ListResourcesForWebACLInput) String() string { 11020 return awsutil.Prettify(s) 11021} 11022 11023// GoString returns the string representation 11024func (s ListResourcesForWebACLInput) GoString() string { 11025 return s.String() 11026} 11027 11028// Validate inspects the fields of the type to determine if they are valid. 11029func (s *ListResourcesForWebACLInput) Validate() error { 11030 invalidParams := request.ErrInvalidParams{Context: "ListResourcesForWebACLInput"} 11031 if s.WebACLId == nil { 11032 invalidParams.Add(request.NewErrParamRequired("WebACLId")) 11033 } 11034 if s.WebACLId != nil && len(*s.WebACLId) < 1 { 11035 invalidParams.Add(request.NewErrParamMinLen("WebACLId", 1)) 11036 } 11037 11038 if invalidParams.Len() > 0 { 11039 return invalidParams 11040 } 11041 return nil 11042} 11043 11044// SetResourceType sets the ResourceType field's value. 11045func (s *ListResourcesForWebACLInput) SetResourceType(v string) *ListResourcesForWebACLInput { 11046 s.ResourceType = &v 11047 return s 11048} 11049 11050// SetWebACLId sets the WebACLId field's value. 11051func (s *ListResourcesForWebACLInput) SetWebACLId(v string) *ListResourcesForWebACLInput { 11052 s.WebACLId = &v 11053 return s 11054} 11055 11056type ListResourcesForWebACLOutput struct { 11057 _ struct{} `type:"structure"` 11058 11059 // An array of ARNs (Amazon Resource Names) of the resources associated with 11060 // the specified web ACL. An array with zero elements is returned if there are 11061 // no resources associated with the web ACL. 11062 ResourceArns []*string `type:"list"` 11063} 11064 11065// String returns the string representation 11066func (s ListResourcesForWebACLOutput) String() string { 11067 return awsutil.Prettify(s) 11068} 11069 11070// GoString returns the string representation 11071func (s ListResourcesForWebACLOutput) GoString() string { 11072 return s.String() 11073} 11074 11075// SetResourceArns sets the ResourceArns field's value. 11076func (s *ListResourcesForWebACLOutput) SetResourceArns(v []*string) *ListResourcesForWebACLOutput { 11077 s.ResourceArns = v 11078 return s 11079} 11080 11081type WAFBadRequestException struct { 11082 _ struct{} `type:"structure"` 11083 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11084 11085 Message_ *string `locationName:"message" type:"string"` 11086} 11087 11088// String returns the string representation 11089func (s WAFBadRequestException) String() string { 11090 return awsutil.Prettify(s) 11091} 11092 11093// GoString returns the string representation 11094func (s WAFBadRequestException) GoString() string { 11095 return s.String() 11096} 11097 11098func newErrorWAFBadRequestException(v protocol.ResponseMetadata) error { 11099 return &WAFBadRequestException{ 11100 RespMetadata: v, 11101 } 11102} 11103 11104// Code returns the exception type name. 11105func (s *WAFBadRequestException) Code() string { 11106 return "WAFBadRequestException" 11107} 11108 11109// Message returns the exception's message. 11110func (s *WAFBadRequestException) Message() string { 11111 if s.Message_ != nil { 11112 return *s.Message_ 11113 } 11114 return "" 11115} 11116 11117// OrigErr always returns nil, satisfies awserr.Error interface. 11118func (s *WAFBadRequestException) OrigErr() error { 11119 return nil 11120} 11121 11122func (s *WAFBadRequestException) Error() string { 11123 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11124} 11125 11126// Status code returns the HTTP status code for the request's response error. 11127func (s *WAFBadRequestException) StatusCode() int { 11128 return s.RespMetadata.StatusCode 11129} 11130 11131// RequestID returns the service's response RequestID for request. 11132func (s *WAFBadRequestException) RequestID() string { 11133 return s.RespMetadata.RequestID 11134} 11135 11136// The name specified is invalid. 11137type WAFDisallowedNameException struct { 11138 _ struct{} `type:"structure"` 11139 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11140 11141 Message_ *string `locationName:"message" type:"string"` 11142} 11143 11144// String returns the string representation 11145func (s WAFDisallowedNameException) String() string { 11146 return awsutil.Prettify(s) 11147} 11148 11149// GoString returns the string representation 11150func (s WAFDisallowedNameException) GoString() string { 11151 return s.String() 11152} 11153 11154func newErrorWAFDisallowedNameException(v protocol.ResponseMetadata) error { 11155 return &WAFDisallowedNameException{ 11156 RespMetadata: v, 11157 } 11158} 11159 11160// Code returns the exception type name. 11161func (s *WAFDisallowedNameException) Code() string { 11162 return "WAFDisallowedNameException" 11163} 11164 11165// Message returns the exception's message. 11166func (s *WAFDisallowedNameException) Message() string { 11167 if s.Message_ != nil { 11168 return *s.Message_ 11169 } 11170 return "" 11171} 11172 11173// OrigErr always returns nil, satisfies awserr.Error interface. 11174func (s *WAFDisallowedNameException) OrigErr() error { 11175 return nil 11176} 11177 11178func (s *WAFDisallowedNameException) Error() string { 11179 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11180} 11181 11182// Status code returns the HTTP status code for the request's response error. 11183func (s *WAFDisallowedNameException) StatusCode() int { 11184 return s.RespMetadata.StatusCode 11185} 11186 11187// RequestID returns the service's response RequestID for request. 11188func (s *WAFDisallowedNameException) RequestID() string { 11189 return s.RespMetadata.RequestID 11190} 11191 11192// The operation failed due to a problem with the migration. The failure cause 11193// is provided in the exception, in the MigrationErrorType: 11194// 11195// * ENTITY_NOT_SUPPORTED - The web ACL has an unsupported entity but the 11196// IgnoreUnsupportedType is not set to true. 11197// 11198// * ENTITY_NOT_FOUND - The web ACL doesn't exist. 11199// 11200// * S3_BUCKET_NO_PERMISSION - You don't have permission to perform the PutObject 11201// action to the specified Amazon S3 bucket. 11202// 11203// * S3_BUCKET_NOT_ACCESSIBLE - The bucket policy doesn't allow AWS WAF to 11204// perform the PutObject action in the bucket. 11205// 11206// * S3_BUCKET_NOT_FOUND - The S3 bucket doesn't exist. 11207// 11208// * S3_BUCKET_INVALID_REGION - The S3 bucket is not in the same Region as 11209// the web ACL. 11210// 11211// * S3_INTERNAL_ERROR - AWS WAF failed to create the template in the S3 11212// bucket for another reason. 11213type WAFEntityMigrationException struct { 11214 _ struct{} `type:"structure"` 11215 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11216 11217 Message_ *string `locationName:"message" type:"string"` 11218 11219 MigrationErrorReason *string `type:"string"` 11220 11221 MigrationErrorType *string `type:"string" enum:"MigrationErrorType"` 11222} 11223 11224// String returns the string representation 11225func (s WAFEntityMigrationException) String() string { 11226 return awsutil.Prettify(s) 11227} 11228 11229// GoString returns the string representation 11230func (s WAFEntityMigrationException) GoString() string { 11231 return s.String() 11232} 11233 11234func newErrorWAFEntityMigrationException(v protocol.ResponseMetadata) error { 11235 return &WAFEntityMigrationException{ 11236 RespMetadata: v, 11237 } 11238} 11239 11240// Code returns the exception type name. 11241func (s *WAFEntityMigrationException) Code() string { 11242 return "WAFEntityMigrationException" 11243} 11244 11245// Message returns the exception's message. 11246func (s *WAFEntityMigrationException) Message() string { 11247 if s.Message_ != nil { 11248 return *s.Message_ 11249 } 11250 return "" 11251} 11252 11253// OrigErr always returns nil, satisfies awserr.Error interface. 11254func (s *WAFEntityMigrationException) OrigErr() error { 11255 return nil 11256} 11257 11258func (s *WAFEntityMigrationException) Error() string { 11259 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 11260} 11261 11262// Status code returns the HTTP status code for the request's response error. 11263func (s *WAFEntityMigrationException) StatusCode() int { 11264 return s.RespMetadata.StatusCode 11265} 11266 11267// RequestID returns the service's response RequestID for request. 11268func (s *WAFEntityMigrationException) RequestID() string { 11269 return s.RespMetadata.RequestID 11270} 11271 11272// The operation failed because of a system problem, even though the request 11273// was valid. Retry your request. 11274type WAFInternalErrorException struct { 11275 _ struct{} `type:"structure"` 11276 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11277 11278 Message_ *string `locationName:"message" type:"string"` 11279} 11280 11281// String returns the string representation 11282func (s WAFInternalErrorException) String() string { 11283 return awsutil.Prettify(s) 11284} 11285 11286// GoString returns the string representation 11287func (s WAFInternalErrorException) GoString() string { 11288 return s.String() 11289} 11290 11291func newErrorWAFInternalErrorException(v protocol.ResponseMetadata) error { 11292 return &WAFInternalErrorException{ 11293 RespMetadata: v, 11294 } 11295} 11296 11297// Code returns the exception type name. 11298func (s *WAFInternalErrorException) Code() string { 11299 return "WAFInternalErrorException" 11300} 11301 11302// Message returns the exception's message. 11303func (s *WAFInternalErrorException) Message() string { 11304 if s.Message_ != nil { 11305 return *s.Message_ 11306 } 11307 return "" 11308} 11309 11310// OrigErr always returns nil, satisfies awserr.Error interface. 11311func (s *WAFInternalErrorException) OrigErr() error { 11312 return nil 11313} 11314 11315func (s *WAFInternalErrorException) Error() string { 11316 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11317} 11318 11319// Status code returns the HTTP status code for the request's response error. 11320func (s *WAFInternalErrorException) StatusCode() int { 11321 return s.RespMetadata.StatusCode 11322} 11323 11324// RequestID returns the service's response RequestID for request. 11325func (s *WAFInternalErrorException) RequestID() string { 11326 return s.RespMetadata.RequestID 11327} 11328 11329// The operation failed because you tried to create, update, or delete an object 11330// by using an invalid account identifier. 11331type WAFInvalidAccountException struct { 11332 _ struct{} `type:"structure"` 11333 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11334 11335 Message_ *string `locationName:"message" type:"string"` 11336} 11337 11338// String returns the string representation 11339func (s WAFInvalidAccountException) String() string { 11340 return awsutil.Prettify(s) 11341} 11342 11343// GoString returns the string representation 11344func (s WAFInvalidAccountException) GoString() string { 11345 return s.String() 11346} 11347 11348func newErrorWAFInvalidAccountException(v protocol.ResponseMetadata) error { 11349 return &WAFInvalidAccountException{ 11350 RespMetadata: v, 11351 } 11352} 11353 11354// Code returns the exception type name. 11355func (s *WAFInvalidAccountException) Code() string { 11356 return "WAFInvalidAccountException" 11357} 11358 11359// Message returns the exception's message. 11360func (s *WAFInvalidAccountException) Message() string { 11361 if s.Message_ != nil { 11362 return *s.Message_ 11363 } 11364 return "" 11365} 11366 11367// OrigErr always returns nil, satisfies awserr.Error interface. 11368func (s *WAFInvalidAccountException) OrigErr() error { 11369 return nil 11370} 11371 11372func (s *WAFInvalidAccountException) Error() string { 11373 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11374} 11375 11376// Status code returns the HTTP status code for the request's response error. 11377func (s *WAFInvalidAccountException) StatusCode() int { 11378 return s.RespMetadata.StatusCode 11379} 11380 11381// RequestID returns the service's response RequestID for request. 11382func (s *WAFInvalidAccountException) RequestID() string { 11383 return s.RespMetadata.RequestID 11384} 11385 11386// The operation failed because there was nothing to do. For example: 11387// 11388// * You tried to remove a Rule from a WebACL, but the Rule isn't in the 11389// specified WebACL. 11390// 11391// * You tried to remove an IP address from an IPSet, but the IP address 11392// isn't in the specified IPSet. 11393// 11394// * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple 11395// isn't in the specified WebACL. 11396// 11397// * You tried to add a Rule to a WebACL, but the Rule already exists in 11398// the specified WebACL. 11399// 11400// * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple 11401// already exists in the specified WebACL. 11402type WAFInvalidOperationException struct { 11403 _ struct{} `type:"structure"` 11404 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11405 11406 Message_ *string `locationName:"message" type:"string"` 11407} 11408 11409// String returns the string representation 11410func (s WAFInvalidOperationException) String() string { 11411 return awsutil.Prettify(s) 11412} 11413 11414// GoString returns the string representation 11415func (s WAFInvalidOperationException) GoString() string { 11416 return s.String() 11417} 11418 11419func newErrorWAFInvalidOperationException(v protocol.ResponseMetadata) error { 11420 return &WAFInvalidOperationException{ 11421 RespMetadata: v, 11422 } 11423} 11424 11425// Code returns the exception type name. 11426func (s *WAFInvalidOperationException) Code() string { 11427 return "WAFInvalidOperationException" 11428} 11429 11430// Message returns the exception's message. 11431func (s *WAFInvalidOperationException) Message() string { 11432 if s.Message_ != nil { 11433 return *s.Message_ 11434 } 11435 return "" 11436} 11437 11438// OrigErr always returns nil, satisfies awserr.Error interface. 11439func (s *WAFInvalidOperationException) OrigErr() error { 11440 return nil 11441} 11442 11443func (s *WAFInvalidOperationException) Error() string { 11444 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11445} 11446 11447// Status code returns the HTTP status code for the request's response error. 11448func (s *WAFInvalidOperationException) StatusCode() int { 11449 return s.RespMetadata.StatusCode 11450} 11451 11452// RequestID returns the service's response RequestID for request. 11453func (s *WAFInvalidOperationException) RequestID() string { 11454 return s.RespMetadata.RequestID 11455} 11456 11457// The operation failed because AWS WAF didn't recognize a parameter in the 11458// request. For example: 11459// 11460// * You specified an invalid parameter name. 11461// 11462// * You specified an invalid value. 11463// 11464// * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL) 11465// using an action other than INSERT or DELETE. 11466// 11467// * You tried to create a WebACL with a DefaultAction Type other than ALLOW, 11468// BLOCK, or COUNT. 11469// 11470// * You tried to create a RateBasedRule with a RateKey value other than 11471// IP. 11472// 11473// * You tried to update a WebACL with a WafAction Type other than ALLOW, 11474// BLOCK, or COUNT. 11475// 11476// * You tried to update a ByteMatchSet with a FieldToMatch Type other than 11477// HEADER, METHOD, QUERY_STRING, URI, or BODY. 11478// 11479// * You tried to update a ByteMatchSet with a Field of HEADER but no value 11480// for Data. 11481// 11482// * Your request references an ARN that is malformed, or corresponds to 11483// a resource with which a web ACL cannot be associated. 11484type WAFInvalidParameterException struct { 11485 _ struct{} `type:"structure"` 11486 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11487 11488 Field *string `locationName:"field" type:"string" enum:"ParameterExceptionField"` 11489 11490 Message_ *string `locationName:"message" type:"string"` 11491 11492 Parameter *string `locationName:"parameter" min:"1" type:"string"` 11493 11494 Reason *string `locationName:"reason" type:"string" enum:"ParameterExceptionReason"` 11495} 11496 11497// String returns the string representation 11498func (s WAFInvalidParameterException) String() string { 11499 return awsutil.Prettify(s) 11500} 11501 11502// GoString returns the string representation 11503func (s WAFInvalidParameterException) GoString() string { 11504 return s.String() 11505} 11506 11507func newErrorWAFInvalidParameterException(v protocol.ResponseMetadata) error { 11508 return &WAFInvalidParameterException{ 11509 RespMetadata: v, 11510 } 11511} 11512 11513// Code returns the exception type name. 11514func (s *WAFInvalidParameterException) Code() string { 11515 return "WAFInvalidParameterException" 11516} 11517 11518// Message returns the exception's message. 11519func (s *WAFInvalidParameterException) Message() string { 11520 if s.Message_ != nil { 11521 return *s.Message_ 11522 } 11523 return "" 11524} 11525 11526// OrigErr always returns nil, satisfies awserr.Error interface. 11527func (s *WAFInvalidParameterException) OrigErr() error { 11528 return nil 11529} 11530 11531func (s *WAFInvalidParameterException) Error() string { 11532 return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) 11533} 11534 11535// Status code returns the HTTP status code for the request's response error. 11536func (s *WAFInvalidParameterException) StatusCode() int { 11537 return s.RespMetadata.StatusCode 11538} 11539 11540// RequestID returns the service's response RequestID for request. 11541func (s *WAFInvalidParameterException) RequestID() string { 11542 return s.RespMetadata.RequestID 11543} 11544 11545// The operation failed because the specified policy is not in the proper format. 11546// 11547// The policy is subject to the following restrictions: 11548// 11549// * You can attach only one policy with each PutPermissionPolicy request. 11550// 11551// * The policy must include an Effect, Action and Principal. 11552// 11553// * Effect must specify Allow. 11554// 11555// * The Action in the policy must be waf:UpdateWebACL, waf-regional:UpdateWebACL, 11556// waf:GetRuleGroup and waf-regional:GetRuleGroup . Any extra or wildcard 11557// actions in the policy will be rejected. 11558// 11559// * The policy cannot include a Resource parameter. 11560// 11561// * The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup 11562// must exist in the same region. 11563// 11564// * The user making the request must be the owner of the RuleGroup. 11565// 11566// * Your policy must be composed using IAM Policy version 2012-10-17. 11567type WAFInvalidPermissionPolicyException struct { 11568 _ struct{} `type:"structure"` 11569 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11570 11571 Message_ *string `locationName:"message" type:"string"` 11572} 11573 11574// String returns the string representation 11575func (s WAFInvalidPermissionPolicyException) String() string { 11576 return awsutil.Prettify(s) 11577} 11578 11579// GoString returns the string representation 11580func (s WAFInvalidPermissionPolicyException) GoString() string { 11581 return s.String() 11582} 11583 11584func newErrorWAFInvalidPermissionPolicyException(v protocol.ResponseMetadata) error { 11585 return &WAFInvalidPermissionPolicyException{ 11586 RespMetadata: v, 11587 } 11588} 11589 11590// Code returns the exception type name. 11591func (s *WAFInvalidPermissionPolicyException) Code() string { 11592 return "WAFInvalidPermissionPolicyException" 11593} 11594 11595// Message returns the exception's message. 11596func (s *WAFInvalidPermissionPolicyException) Message() string { 11597 if s.Message_ != nil { 11598 return *s.Message_ 11599 } 11600 return "" 11601} 11602 11603// OrigErr always returns nil, satisfies awserr.Error interface. 11604func (s *WAFInvalidPermissionPolicyException) OrigErr() error { 11605 return nil 11606} 11607 11608func (s *WAFInvalidPermissionPolicyException) Error() string { 11609 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11610} 11611 11612// Status code returns the HTTP status code for the request's response error. 11613func (s *WAFInvalidPermissionPolicyException) StatusCode() int { 11614 return s.RespMetadata.StatusCode 11615} 11616 11617// RequestID returns the service's response RequestID for request. 11618func (s *WAFInvalidPermissionPolicyException) RequestID() string { 11619 return s.RespMetadata.RequestID 11620} 11621 11622// The regular expression (regex) you specified in RegexPatternString is invalid. 11623type WAFInvalidRegexPatternException struct { 11624 _ struct{} `type:"structure"` 11625 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11626 11627 Message_ *string `locationName:"message" type:"string"` 11628} 11629 11630// String returns the string representation 11631func (s WAFInvalidRegexPatternException) String() string { 11632 return awsutil.Prettify(s) 11633} 11634 11635// GoString returns the string representation 11636func (s WAFInvalidRegexPatternException) GoString() string { 11637 return s.String() 11638} 11639 11640func newErrorWAFInvalidRegexPatternException(v protocol.ResponseMetadata) error { 11641 return &WAFInvalidRegexPatternException{ 11642 RespMetadata: v, 11643 } 11644} 11645 11646// Code returns the exception type name. 11647func (s *WAFInvalidRegexPatternException) Code() string { 11648 return "WAFInvalidRegexPatternException" 11649} 11650 11651// Message returns the exception's message. 11652func (s *WAFInvalidRegexPatternException) Message() string { 11653 if s.Message_ != nil { 11654 return *s.Message_ 11655 } 11656 return "" 11657} 11658 11659// OrigErr always returns nil, satisfies awserr.Error interface. 11660func (s *WAFInvalidRegexPatternException) OrigErr() error { 11661 return nil 11662} 11663 11664func (s *WAFInvalidRegexPatternException) Error() string { 11665 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11666} 11667 11668// Status code returns the HTTP status code for the request's response error. 11669func (s *WAFInvalidRegexPatternException) StatusCode() int { 11670 return s.RespMetadata.StatusCode 11671} 11672 11673// RequestID returns the service's response RequestID for request. 11674func (s *WAFInvalidRegexPatternException) RequestID() string { 11675 return s.RespMetadata.RequestID 11676} 11677 11678// The operation exceeds a resource limit, for example, the maximum number of 11679// WebACL objects that you can create for an AWS account. For more information, 11680// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) 11681// in the AWS WAF Developer Guide. 11682type WAFLimitsExceededException struct { 11683 _ struct{} `type:"structure"` 11684 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11685 11686 Message_ *string `locationName:"message" type:"string"` 11687} 11688 11689// String returns the string representation 11690func (s WAFLimitsExceededException) String() string { 11691 return awsutil.Prettify(s) 11692} 11693 11694// GoString returns the string representation 11695func (s WAFLimitsExceededException) GoString() string { 11696 return s.String() 11697} 11698 11699func newErrorWAFLimitsExceededException(v protocol.ResponseMetadata) error { 11700 return &WAFLimitsExceededException{ 11701 RespMetadata: v, 11702 } 11703} 11704 11705// Code returns the exception type name. 11706func (s *WAFLimitsExceededException) Code() string { 11707 return "WAFLimitsExceededException" 11708} 11709 11710// Message returns the exception's message. 11711func (s *WAFLimitsExceededException) Message() string { 11712 if s.Message_ != nil { 11713 return *s.Message_ 11714 } 11715 return "" 11716} 11717 11718// OrigErr always returns nil, satisfies awserr.Error interface. 11719func (s *WAFLimitsExceededException) OrigErr() error { 11720 return nil 11721} 11722 11723func (s *WAFLimitsExceededException) Error() string { 11724 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11725} 11726 11727// Status code returns the HTTP status code for the request's response error. 11728func (s *WAFLimitsExceededException) StatusCode() int { 11729 return s.RespMetadata.StatusCode 11730} 11731 11732// RequestID returns the service's response RequestID for request. 11733func (s *WAFLimitsExceededException) RequestID() string { 11734 return s.RespMetadata.RequestID 11735} 11736 11737// The operation failed because you tried to delete an object that isn't empty. 11738// For example: 11739// 11740// * You tried to delete a WebACL that still contains one or more Rule objects. 11741// 11742// * You tried to delete a Rule that still contains one or more ByteMatchSet 11743// objects or other predicates. 11744// 11745// * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple 11746// objects. 11747// 11748// * You tried to delete an IPSet that references one or more IP addresses. 11749type WAFNonEmptyEntityException struct { 11750 _ struct{} `type:"structure"` 11751 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11752 11753 Message_ *string `locationName:"message" type:"string"` 11754} 11755 11756// String returns the string representation 11757func (s WAFNonEmptyEntityException) String() string { 11758 return awsutil.Prettify(s) 11759} 11760 11761// GoString returns the string representation 11762func (s WAFNonEmptyEntityException) GoString() string { 11763 return s.String() 11764} 11765 11766func newErrorWAFNonEmptyEntityException(v protocol.ResponseMetadata) error { 11767 return &WAFNonEmptyEntityException{ 11768 RespMetadata: v, 11769 } 11770} 11771 11772// Code returns the exception type name. 11773func (s *WAFNonEmptyEntityException) Code() string { 11774 return "WAFNonEmptyEntityException" 11775} 11776 11777// Message returns the exception's message. 11778func (s *WAFNonEmptyEntityException) Message() string { 11779 if s.Message_ != nil { 11780 return *s.Message_ 11781 } 11782 return "" 11783} 11784 11785// OrigErr always returns nil, satisfies awserr.Error interface. 11786func (s *WAFNonEmptyEntityException) OrigErr() error { 11787 return nil 11788} 11789 11790func (s *WAFNonEmptyEntityException) Error() string { 11791 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11792} 11793 11794// Status code returns the HTTP status code for the request's response error. 11795func (s *WAFNonEmptyEntityException) StatusCode() int { 11796 return s.RespMetadata.StatusCode 11797} 11798 11799// RequestID returns the service's response RequestID for request. 11800func (s *WAFNonEmptyEntityException) RequestID() string { 11801 return s.RespMetadata.RequestID 11802} 11803 11804// The operation failed because you tried to add an object to or delete an object 11805// from another object that doesn't exist. For example: 11806// 11807// * You tried to add a Rule to or delete a Rule from a WebACL that doesn't 11808// exist. 11809// 11810// * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule 11811// that doesn't exist. 11812// 11813// * You tried to add an IP address to or delete an IP address from an IPSet 11814// that doesn't exist. 11815// 11816// * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from 11817// a ByteMatchSet that doesn't exist. 11818type WAFNonexistentContainerException struct { 11819 _ struct{} `type:"structure"` 11820 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11821 11822 Message_ *string `locationName:"message" type:"string"` 11823} 11824 11825// String returns the string representation 11826func (s WAFNonexistentContainerException) String() string { 11827 return awsutil.Prettify(s) 11828} 11829 11830// GoString returns the string representation 11831func (s WAFNonexistentContainerException) GoString() string { 11832 return s.String() 11833} 11834 11835func newErrorWAFNonexistentContainerException(v protocol.ResponseMetadata) error { 11836 return &WAFNonexistentContainerException{ 11837 RespMetadata: v, 11838 } 11839} 11840 11841// Code returns the exception type name. 11842func (s *WAFNonexistentContainerException) Code() string { 11843 return "WAFNonexistentContainerException" 11844} 11845 11846// Message returns the exception's message. 11847func (s *WAFNonexistentContainerException) Message() string { 11848 if s.Message_ != nil { 11849 return *s.Message_ 11850 } 11851 return "" 11852} 11853 11854// OrigErr always returns nil, satisfies awserr.Error interface. 11855func (s *WAFNonexistentContainerException) OrigErr() error { 11856 return nil 11857} 11858 11859func (s *WAFNonexistentContainerException) Error() string { 11860 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11861} 11862 11863// Status code returns the HTTP status code for the request's response error. 11864func (s *WAFNonexistentContainerException) StatusCode() int { 11865 return s.RespMetadata.StatusCode 11866} 11867 11868// RequestID returns the service's response RequestID for request. 11869func (s *WAFNonexistentContainerException) RequestID() string { 11870 return s.RespMetadata.RequestID 11871} 11872 11873// The operation failed because the referenced object doesn't exist. 11874type WAFNonexistentItemException struct { 11875 _ struct{} `type:"structure"` 11876 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11877 11878 Message_ *string `locationName:"message" type:"string"` 11879} 11880 11881// String returns the string representation 11882func (s WAFNonexistentItemException) String() string { 11883 return awsutil.Prettify(s) 11884} 11885 11886// GoString returns the string representation 11887func (s WAFNonexistentItemException) GoString() string { 11888 return s.String() 11889} 11890 11891func newErrorWAFNonexistentItemException(v protocol.ResponseMetadata) error { 11892 return &WAFNonexistentItemException{ 11893 RespMetadata: v, 11894 } 11895} 11896 11897// Code returns the exception type name. 11898func (s *WAFNonexistentItemException) Code() string { 11899 return "WAFNonexistentItemException" 11900} 11901 11902// Message returns the exception's message. 11903func (s *WAFNonexistentItemException) Message() string { 11904 if s.Message_ != nil { 11905 return *s.Message_ 11906 } 11907 return "" 11908} 11909 11910// OrigErr always returns nil, satisfies awserr.Error interface. 11911func (s *WAFNonexistentItemException) OrigErr() error { 11912 return nil 11913} 11914 11915func (s *WAFNonexistentItemException) Error() string { 11916 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11917} 11918 11919// Status code returns the HTTP status code for the request's response error. 11920func (s *WAFNonexistentItemException) StatusCode() int { 11921 return s.RespMetadata.StatusCode 11922} 11923 11924// RequestID returns the service's response RequestID for request. 11925func (s *WAFNonexistentItemException) RequestID() string { 11926 return s.RespMetadata.RequestID 11927} 11928 11929// The operation failed because you tried to delete an object that is still 11930// in use. For example: 11931// 11932// * You tried to delete a ByteMatchSet that is still referenced by a Rule. 11933// 11934// * You tried to delete a Rule that is still referenced by a WebACL. 11935type WAFReferencedItemException struct { 11936 _ struct{} `type:"structure"` 11937 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 11938 11939 Message_ *string `locationName:"message" type:"string"` 11940} 11941 11942// String returns the string representation 11943func (s WAFReferencedItemException) String() string { 11944 return awsutil.Prettify(s) 11945} 11946 11947// GoString returns the string representation 11948func (s WAFReferencedItemException) GoString() string { 11949 return s.String() 11950} 11951 11952func newErrorWAFReferencedItemException(v protocol.ResponseMetadata) error { 11953 return &WAFReferencedItemException{ 11954 RespMetadata: v, 11955 } 11956} 11957 11958// Code returns the exception type name. 11959func (s *WAFReferencedItemException) Code() string { 11960 return "WAFReferencedItemException" 11961} 11962 11963// Message returns the exception's message. 11964func (s *WAFReferencedItemException) Message() string { 11965 if s.Message_ != nil { 11966 return *s.Message_ 11967 } 11968 return "" 11969} 11970 11971// OrigErr always returns nil, satisfies awserr.Error interface. 11972func (s *WAFReferencedItemException) OrigErr() error { 11973 return nil 11974} 11975 11976func (s *WAFReferencedItemException) Error() string { 11977 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 11978} 11979 11980// Status code returns the HTTP status code for the request's response error. 11981func (s *WAFReferencedItemException) StatusCode() int { 11982 return s.RespMetadata.StatusCode 11983} 11984 11985// RequestID returns the service's response RequestID for request. 11986func (s *WAFReferencedItemException) RequestID() string { 11987 return s.RespMetadata.RequestID 11988} 11989 11990// AWS WAF is not able to access the service linked role. This can be caused 11991// by a previous PutLoggingConfiguration request, which can lock the service 11992// linked role for about 20 seconds. Please try your request again. The service 11993// linked role can also be locked by a previous DeleteServiceLinkedRole request, 11994// which can lock the role for 15 minutes or more. If you recently made a DeleteServiceLinkedRole, 11995// wait at least 15 minutes and try the request again. If you receive this same 11996// exception again, you will have to wait additional time until the role is 11997// unlocked. 11998type WAFServiceLinkedRoleErrorException struct { 11999 _ struct{} `type:"structure"` 12000 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 12001 12002 Message_ *string `locationName:"message" type:"string"` 12003} 12004 12005// String returns the string representation 12006func (s WAFServiceLinkedRoleErrorException) String() string { 12007 return awsutil.Prettify(s) 12008} 12009 12010// GoString returns the string representation 12011func (s WAFServiceLinkedRoleErrorException) GoString() string { 12012 return s.String() 12013} 12014 12015func newErrorWAFServiceLinkedRoleErrorException(v protocol.ResponseMetadata) error { 12016 return &WAFServiceLinkedRoleErrorException{ 12017 RespMetadata: v, 12018 } 12019} 12020 12021// Code returns the exception type name. 12022func (s *WAFServiceLinkedRoleErrorException) Code() string { 12023 return "WAFServiceLinkedRoleErrorException" 12024} 12025 12026// Message returns the exception's message. 12027func (s *WAFServiceLinkedRoleErrorException) Message() string { 12028 if s.Message_ != nil { 12029 return *s.Message_ 12030 } 12031 return "" 12032} 12033 12034// OrigErr always returns nil, satisfies awserr.Error interface. 12035func (s *WAFServiceLinkedRoleErrorException) OrigErr() error { 12036 return nil 12037} 12038 12039func (s *WAFServiceLinkedRoleErrorException) Error() string { 12040 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 12041} 12042 12043// Status code returns the HTTP status code for the request's response error. 12044func (s *WAFServiceLinkedRoleErrorException) StatusCode() int { 12045 return s.RespMetadata.StatusCode 12046} 12047 12048// RequestID returns the service's response RequestID for request. 12049func (s *WAFServiceLinkedRoleErrorException) RequestID() string { 12050 return s.RespMetadata.RequestID 12051} 12052 12053// The operation failed because you tried to create, update, or delete an object 12054// by using a change token that has already been used. 12055type WAFStaleDataException struct { 12056 _ struct{} `type:"structure"` 12057 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 12058 12059 Message_ *string `locationName:"message" type:"string"` 12060} 12061 12062// String returns the string representation 12063func (s WAFStaleDataException) String() string { 12064 return awsutil.Prettify(s) 12065} 12066 12067// GoString returns the string representation 12068func (s WAFStaleDataException) GoString() string { 12069 return s.String() 12070} 12071 12072func newErrorWAFStaleDataException(v protocol.ResponseMetadata) error { 12073 return &WAFStaleDataException{ 12074 RespMetadata: v, 12075 } 12076} 12077 12078// Code returns the exception type name. 12079func (s *WAFStaleDataException) Code() string { 12080 return "WAFStaleDataException" 12081} 12082 12083// Message returns the exception's message. 12084func (s *WAFStaleDataException) Message() string { 12085 if s.Message_ != nil { 12086 return *s.Message_ 12087 } 12088 return "" 12089} 12090 12091// OrigErr always returns nil, satisfies awserr.Error interface. 12092func (s *WAFStaleDataException) OrigErr() error { 12093 return nil 12094} 12095 12096func (s *WAFStaleDataException) Error() string { 12097 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 12098} 12099 12100// Status code returns the HTTP status code for the request's response error. 12101func (s *WAFStaleDataException) StatusCode() int { 12102 return s.RespMetadata.StatusCode 12103} 12104 12105// RequestID returns the service's response RequestID for request. 12106func (s *WAFStaleDataException) RequestID() string { 12107 return s.RespMetadata.RequestID 12108} 12109 12110// The specified subscription does not exist. 12111type WAFSubscriptionNotFoundException struct { 12112 _ struct{} `type:"structure"` 12113 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 12114 12115 Message_ *string `locationName:"message" type:"string"` 12116} 12117 12118// String returns the string representation 12119func (s WAFSubscriptionNotFoundException) String() string { 12120 return awsutil.Prettify(s) 12121} 12122 12123// GoString returns the string representation 12124func (s WAFSubscriptionNotFoundException) GoString() string { 12125 return s.String() 12126} 12127 12128func newErrorWAFSubscriptionNotFoundException(v protocol.ResponseMetadata) error { 12129 return &WAFSubscriptionNotFoundException{ 12130 RespMetadata: v, 12131 } 12132} 12133 12134// Code returns the exception type name. 12135func (s *WAFSubscriptionNotFoundException) Code() string { 12136 return "WAFSubscriptionNotFoundException" 12137} 12138 12139// Message returns the exception's message. 12140func (s *WAFSubscriptionNotFoundException) Message() string { 12141 if s.Message_ != nil { 12142 return *s.Message_ 12143 } 12144 return "" 12145} 12146 12147// OrigErr always returns nil, satisfies awserr.Error interface. 12148func (s *WAFSubscriptionNotFoundException) OrigErr() error { 12149 return nil 12150} 12151 12152func (s *WAFSubscriptionNotFoundException) Error() string { 12153 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 12154} 12155 12156// Status code returns the HTTP status code for the request's response error. 12157func (s *WAFSubscriptionNotFoundException) StatusCode() int { 12158 return s.RespMetadata.StatusCode 12159} 12160 12161// RequestID returns the service's response RequestID for request. 12162func (s *WAFSubscriptionNotFoundException) RequestID() string { 12163 return s.RespMetadata.RequestID 12164} 12165 12166type WAFTagOperationException struct { 12167 _ struct{} `type:"structure"` 12168 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 12169 12170 Message_ *string `locationName:"message" type:"string"` 12171} 12172 12173// String returns the string representation 12174func (s WAFTagOperationException) String() string { 12175 return awsutil.Prettify(s) 12176} 12177 12178// GoString returns the string representation 12179func (s WAFTagOperationException) GoString() string { 12180 return s.String() 12181} 12182 12183func newErrorWAFTagOperationException(v protocol.ResponseMetadata) error { 12184 return &WAFTagOperationException{ 12185 RespMetadata: v, 12186 } 12187} 12188 12189// Code returns the exception type name. 12190func (s *WAFTagOperationException) Code() string { 12191 return "WAFTagOperationException" 12192} 12193 12194// Message returns the exception's message. 12195func (s *WAFTagOperationException) Message() string { 12196 if s.Message_ != nil { 12197 return *s.Message_ 12198 } 12199 return "" 12200} 12201 12202// OrigErr always returns nil, satisfies awserr.Error interface. 12203func (s *WAFTagOperationException) OrigErr() error { 12204 return nil 12205} 12206 12207func (s *WAFTagOperationException) Error() string { 12208 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 12209} 12210 12211// Status code returns the HTTP status code for the request's response error. 12212func (s *WAFTagOperationException) StatusCode() int { 12213 return s.RespMetadata.StatusCode 12214} 12215 12216// RequestID returns the service's response RequestID for request. 12217func (s *WAFTagOperationException) RequestID() string { 12218 return s.RespMetadata.RequestID 12219} 12220 12221type WAFTagOperationInternalErrorException struct { 12222 _ struct{} `type:"structure"` 12223 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 12224 12225 Message_ *string `locationName:"message" type:"string"` 12226} 12227 12228// String returns the string representation 12229func (s WAFTagOperationInternalErrorException) String() string { 12230 return awsutil.Prettify(s) 12231} 12232 12233// GoString returns the string representation 12234func (s WAFTagOperationInternalErrorException) GoString() string { 12235 return s.String() 12236} 12237 12238func newErrorWAFTagOperationInternalErrorException(v protocol.ResponseMetadata) error { 12239 return &WAFTagOperationInternalErrorException{ 12240 RespMetadata: v, 12241 } 12242} 12243 12244// Code returns the exception type name. 12245func (s *WAFTagOperationInternalErrorException) Code() string { 12246 return "WAFTagOperationInternalErrorException" 12247} 12248 12249// Message returns the exception's message. 12250func (s *WAFTagOperationInternalErrorException) Message() string { 12251 if s.Message_ != nil { 12252 return *s.Message_ 12253 } 12254 return "" 12255} 12256 12257// OrigErr always returns nil, satisfies awserr.Error interface. 12258func (s *WAFTagOperationInternalErrorException) OrigErr() error { 12259 return nil 12260} 12261 12262func (s *WAFTagOperationInternalErrorException) Error() string { 12263 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 12264} 12265 12266// Status code returns the HTTP status code for the request's response error. 12267func (s *WAFTagOperationInternalErrorException) StatusCode() int { 12268 return s.RespMetadata.StatusCode 12269} 12270 12271// RequestID returns the service's response RequestID for request. 12272func (s *WAFTagOperationInternalErrorException) RequestID() string { 12273 return s.RespMetadata.RequestID 12274} 12275 12276// The operation failed because the entity referenced is temporarily unavailable. 12277// Retry your request. 12278type WAFUnavailableEntityException struct { 12279 _ struct{} `type:"structure"` 12280 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 12281 12282 Message_ *string `locationName:"message" type:"string"` 12283} 12284 12285// String returns the string representation 12286func (s WAFUnavailableEntityException) String() string { 12287 return awsutil.Prettify(s) 12288} 12289 12290// GoString returns the string representation 12291func (s WAFUnavailableEntityException) GoString() string { 12292 return s.String() 12293} 12294 12295func newErrorWAFUnavailableEntityException(v protocol.ResponseMetadata) error { 12296 return &WAFUnavailableEntityException{ 12297 RespMetadata: v, 12298 } 12299} 12300 12301// Code returns the exception type name. 12302func (s *WAFUnavailableEntityException) Code() string { 12303 return "WAFUnavailableEntityException" 12304} 12305 12306// Message returns the exception's message. 12307func (s *WAFUnavailableEntityException) Message() string { 12308 if s.Message_ != nil { 12309 return *s.Message_ 12310 } 12311 return "" 12312} 12313 12314// OrigErr always returns nil, satisfies awserr.Error interface. 12315func (s *WAFUnavailableEntityException) OrigErr() error { 12316 return nil 12317} 12318 12319func (s *WAFUnavailableEntityException) Error() string { 12320 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 12321} 12322 12323// Status code returns the HTTP status code for the request's response error. 12324func (s *WAFUnavailableEntityException) StatusCode() int { 12325 return s.RespMetadata.StatusCode 12326} 12327 12328// RequestID returns the service's response RequestID for request. 12329func (s *WAFUnavailableEntityException) RequestID() string { 12330 return s.RespMetadata.RequestID 12331} 12332 12333const ( 12334 // ChangeActionInsert is a ChangeAction enum value 12335 ChangeActionInsert = "INSERT" 12336 12337 // ChangeActionDelete is a ChangeAction enum value 12338 ChangeActionDelete = "DELETE" 12339) 12340 12341const ( 12342 // ChangeTokenStatusProvisioned is a ChangeTokenStatus enum value 12343 ChangeTokenStatusProvisioned = "PROVISIONED" 12344 12345 // ChangeTokenStatusPending is a ChangeTokenStatus enum value 12346 ChangeTokenStatusPending = "PENDING" 12347 12348 // ChangeTokenStatusInsync is a ChangeTokenStatus enum value 12349 ChangeTokenStatusInsync = "INSYNC" 12350) 12351 12352const ( 12353 // ComparisonOperatorEq is a ComparisonOperator enum value 12354 ComparisonOperatorEq = "EQ" 12355 12356 // ComparisonOperatorNe is a ComparisonOperator enum value 12357 ComparisonOperatorNe = "NE" 12358 12359 // ComparisonOperatorLe is a ComparisonOperator enum value 12360 ComparisonOperatorLe = "LE" 12361 12362 // ComparisonOperatorLt is a ComparisonOperator enum value 12363 ComparisonOperatorLt = "LT" 12364 12365 // ComparisonOperatorGe is a ComparisonOperator enum value 12366 ComparisonOperatorGe = "GE" 12367 12368 // ComparisonOperatorGt is a ComparisonOperator enum value 12369 ComparisonOperatorGt = "GT" 12370) 12371 12372const ( 12373 // GeoMatchConstraintTypeCountry is a GeoMatchConstraintType enum value 12374 GeoMatchConstraintTypeCountry = "Country" 12375) 12376 12377const ( 12378 // GeoMatchConstraintValueAf is a GeoMatchConstraintValue enum value 12379 GeoMatchConstraintValueAf = "AF" 12380 12381 // GeoMatchConstraintValueAx is a GeoMatchConstraintValue enum value 12382 GeoMatchConstraintValueAx = "AX" 12383 12384 // GeoMatchConstraintValueAl is a GeoMatchConstraintValue enum value 12385 GeoMatchConstraintValueAl = "AL" 12386 12387 // GeoMatchConstraintValueDz is a GeoMatchConstraintValue enum value 12388 GeoMatchConstraintValueDz = "DZ" 12389 12390 // GeoMatchConstraintValueAs is a GeoMatchConstraintValue enum value 12391 GeoMatchConstraintValueAs = "AS" 12392 12393 // GeoMatchConstraintValueAd is a GeoMatchConstraintValue enum value 12394 GeoMatchConstraintValueAd = "AD" 12395 12396 // GeoMatchConstraintValueAo is a GeoMatchConstraintValue enum value 12397 GeoMatchConstraintValueAo = "AO" 12398 12399 // GeoMatchConstraintValueAi is a GeoMatchConstraintValue enum value 12400 GeoMatchConstraintValueAi = "AI" 12401 12402 // GeoMatchConstraintValueAq is a GeoMatchConstraintValue enum value 12403 GeoMatchConstraintValueAq = "AQ" 12404 12405 // GeoMatchConstraintValueAg is a GeoMatchConstraintValue enum value 12406 GeoMatchConstraintValueAg = "AG" 12407 12408 // GeoMatchConstraintValueAr is a GeoMatchConstraintValue enum value 12409 GeoMatchConstraintValueAr = "AR" 12410 12411 // GeoMatchConstraintValueAm is a GeoMatchConstraintValue enum value 12412 GeoMatchConstraintValueAm = "AM" 12413 12414 // GeoMatchConstraintValueAw is a GeoMatchConstraintValue enum value 12415 GeoMatchConstraintValueAw = "AW" 12416 12417 // GeoMatchConstraintValueAu is a GeoMatchConstraintValue enum value 12418 GeoMatchConstraintValueAu = "AU" 12419 12420 // GeoMatchConstraintValueAt is a GeoMatchConstraintValue enum value 12421 GeoMatchConstraintValueAt = "AT" 12422 12423 // GeoMatchConstraintValueAz is a GeoMatchConstraintValue enum value 12424 GeoMatchConstraintValueAz = "AZ" 12425 12426 // GeoMatchConstraintValueBs is a GeoMatchConstraintValue enum value 12427 GeoMatchConstraintValueBs = "BS" 12428 12429 // GeoMatchConstraintValueBh is a GeoMatchConstraintValue enum value 12430 GeoMatchConstraintValueBh = "BH" 12431 12432 // GeoMatchConstraintValueBd is a GeoMatchConstraintValue enum value 12433 GeoMatchConstraintValueBd = "BD" 12434 12435 // GeoMatchConstraintValueBb is a GeoMatchConstraintValue enum value 12436 GeoMatchConstraintValueBb = "BB" 12437 12438 // GeoMatchConstraintValueBy is a GeoMatchConstraintValue enum value 12439 GeoMatchConstraintValueBy = "BY" 12440 12441 // GeoMatchConstraintValueBe is a GeoMatchConstraintValue enum value 12442 GeoMatchConstraintValueBe = "BE" 12443 12444 // GeoMatchConstraintValueBz is a GeoMatchConstraintValue enum value 12445 GeoMatchConstraintValueBz = "BZ" 12446 12447 // GeoMatchConstraintValueBj is a GeoMatchConstraintValue enum value 12448 GeoMatchConstraintValueBj = "BJ" 12449 12450 // GeoMatchConstraintValueBm is a GeoMatchConstraintValue enum value 12451 GeoMatchConstraintValueBm = "BM" 12452 12453 // GeoMatchConstraintValueBt is a GeoMatchConstraintValue enum value 12454 GeoMatchConstraintValueBt = "BT" 12455 12456 // GeoMatchConstraintValueBo is a GeoMatchConstraintValue enum value 12457 GeoMatchConstraintValueBo = "BO" 12458 12459 // GeoMatchConstraintValueBq is a GeoMatchConstraintValue enum value 12460 GeoMatchConstraintValueBq = "BQ" 12461 12462 // GeoMatchConstraintValueBa is a GeoMatchConstraintValue enum value 12463 GeoMatchConstraintValueBa = "BA" 12464 12465 // GeoMatchConstraintValueBw is a GeoMatchConstraintValue enum value 12466 GeoMatchConstraintValueBw = "BW" 12467 12468 // GeoMatchConstraintValueBv is a GeoMatchConstraintValue enum value 12469 GeoMatchConstraintValueBv = "BV" 12470 12471 // GeoMatchConstraintValueBr is a GeoMatchConstraintValue enum value 12472 GeoMatchConstraintValueBr = "BR" 12473 12474 // GeoMatchConstraintValueIo is a GeoMatchConstraintValue enum value 12475 GeoMatchConstraintValueIo = "IO" 12476 12477 // GeoMatchConstraintValueBn is a GeoMatchConstraintValue enum value 12478 GeoMatchConstraintValueBn = "BN" 12479 12480 // GeoMatchConstraintValueBg is a GeoMatchConstraintValue enum value 12481 GeoMatchConstraintValueBg = "BG" 12482 12483 // GeoMatchConstraintValueBf is a GeoMatchConstraintValue enum value 12484 GeoMatchConstraintValueBf = "BF" 12485 12486 // GeoMatchConstraintValueBi is a GeoMatchConstraintValue enum value 12487 GeoMatchConstraintValueBi = "BI" 12488 12489 // GeoMatchConstraintValueKh is a GeoMatchConstraintValue enum value 12490 GeoMatchConstraintValueKh = "KH" 12491 12492 // GeoMatchConstraintValueCm is a GeoMatchConstraintValue enum value 12493 GeoMatchConstraintValueCm = "CM" 12494 12495 // GeoMatchConstraintValueCa is a GeoMatchConstraintValue enum value 12496 GeoMatchConstraintValueCa = "CA" 12497 12498 // GeoMatchConstraintValueCv is a GeoMatchConstraintValue enum value 12499 GeoMatchConstraintValueCv = "CV" 12500 12501 // GeoMatchConstraintValueKy is a GeoMatchConstraintValue enum value 12502 GeoMatchConstraintValueKy = "KY" 12503 12504 // GeoMatchConstraintValueCf is a GeoMatchConstraintValue enum value 12505 GeoMatchConstraintValueCf = "CF" 12506 12507 // GeoMatchConstraintValueTd is a GeoMatchConstraintValue enum value 12508 GeoMatchConstraintValueTd = "TD" 12509 12510 // GeoMatchConstraintValueCl is a GeoMatchConstraintValue enum value 12511 GeoMatchConstraintValueCl = "CL" 12512 12513 // GeoMatchConstraintValueCn is a GeoMatchConstraintValue enum value 12514 GeoMatchConstraintValueCn = "CN" 12515 12516 // GeoMatchConstraintValueCx is a GeoMatchConstraintValue enum value 12517 GeoMatchConstraintValueCx = "CX" 12518 12519 // GeoMatchConstraintValueCc is a GeoMatchConstraintValue enum value 12520 GeoMatchConstraintValueCc = "CC" 12521 12522 // GeoMatchConstraintValueCo is a GeoMatchConstraintValue enum value 12523 GeoMatchConstraintValueCo = "CO" 12524 12525 // GeoMatchConstraintValueKm is a GeoMatchConstraintValue enum value 12526 GeoMatchConstraintValueKm = "KM" 12527 12528 // GeoMatchConstraintValueCg is a GeoMatchConstraintValue enum value 12529 GeoMatchConstraintValueCg = "CG" 12530 12531 // GeoMatchConstraintValueCd is a GeoMatchConstraintValue enum value 12532 GeoMatchConstraintValueCd = "CD" 12533 12534 // GeoMatchConstraintValueCk is a GeoMatchConstraintValue enum value 12535 GeoMatchConstraintValueCk = "CK" 12536 12537 // GeoMatchConstraintValueCr is a GeoMatchConstraintValue enum value 12538 GeoMatchConstraintValueCr = "CR" 12539 12540 // GeoMatchConstraintValueCi is a GeoMatchConstraintValue enum value 12541 GeoMatchConstraintValueCi = "CI" 12542 12543 // GeoMatchConstraintValueHr is a GeoMatchConstraintValue enum value 12544 GeoMatchConstraintValueHr = "HR" 12545 12546 // GeoMatchConstraintValueCu is a GeoMatchConstraintValue enum value 12547 GeoMatchConstraintValueCu = "CU" 12548 12549 // GeoMatchConstraintValueCw is a GeoMatchConstraintValue enum value 12550 GeoMatchConstraintValueCw = "CW" 12551 12552 // GeoMatchConstraintValueCy is a GeoMatchConstraintValue enum value 12553 GeoMatchConstraintValueCy = "CY" 12554 12555 // GeoMatchConstraintValueCz is a GeoMatchConstraintValue enum value 12556 GeoMatchConstraintValueCz = "CZ" 12557 12558 // GeoMatchConstraintValueDk is a GeoMatchConstraintValue enum value 12559 GeoMatchConstraintValueDk = "DK" 12560 12561 // GeoMatchConstraintValueDj is a GeoMatchConstraintValue enum value 12562 GeoMatchConstraintValueDj = "DJ" 12563 12564 // GeoMatchConstraintValueDm is a GeoMatchConstraintValue enum value 12565 GeoMatchConstraintValueDm = "DM" 12566 12567 // GeoMatchConstraintValueDo is a GeoMatchConstraintValue enum value 12568 GeoMatchConstraintValueDo = "DO" 12569 12570 // GeoMatchConstraintValueEc is a GeoMatchConstraintValue enum value 12571 GeoMatchConstraintValueEc = "EC" 12572 12573 // GeoMatchConstraintValueEg is a GeoMatchConstraintValue enum value 12574 GeoMatchConstraintValueEg = "EG" 12575 12576 // GeoMatchConstraintValueSv is a GeoMatchConstraintValue enum value 12577 GeoMatchConstraintValueSv = "SV" 12578 12579 // GeoMatchConstraintValueGq is a GeoMatchConstraintValue enum value 12580 GeoMatchConstraintValueGq = "GQ" 12581 12582 // GeoMatchConstraintValueEr is a GeoMatchConstraintValue enum value 12583 GeoMatchConstraintValueEr = "ER" 12584 12585 // GeoMatchConstraintValueEe is a GeoMatchConstraintValue enum value 12586 GeoMatchConstraintValueEe = "EE" 12587 12588 // GeoMatchConstraintValueEt is a GeoMatchConstraintValue enum value 12589 GeoMatchConstraintValueEt = "ET" 12590 12591 // GeoMatchConstraintValueFk is a GeoMatchConstraintValue enum value 12592 GeoMatchConstraintValueFk = "FK" 12593 12594 // GeoMatchConstraintValueFo is a GeoMatchConstraintValue enum value 12595 GeoMatchConstraintValueFo = "FO" 12596 12597 // GeoMatchConstraintValueFj is a GeoMatchConstraintValue enum value 12598 GeoMatchConstraintValueFj = "FJ" 12599 12600 // GeoMatchConstraintValueFi is a GeoMatchConstraintValue enum value 12601 GeoMatchConstraintValueFi = "FI" 12602 12603 // GeoMatchConstraintValueFr is a GeoMatchConstraintValue enum value 12604 GeoMatchConstraintValueFr = "FR" 12605 12606 // GeoMatchConstraintValueGf is a GeoMatchConstraintValue enum value 12607 GeoMatchConstraintValueGf = "GF" 12608 12609 // GeoMatchConstraintValuePf is a GeoMatchConstraintValue enum value 12610 GeoMatchConstraintValuePf = "PF" 12611 12612 // GeoMatchConstraintValueTf is a GeoMatchConstraintValue enum value 12613 GeoMatchConstraintValueTf = "TF" 12614 12615 // GeoMatchConstraintValueGa is a GeoMatchConstraintValue enum value 12616 GeoMatchConstraintValueGa = "GA" 12617 12618 // GeoMatchConstraintValueGm is a GeoMatchConstraintValue enum value 12619 GeoMatchConstraintValueGm = "GM" 12620 12621 // GeoMatchConstraintValueGe is a GeoMatchConstraintValue enum value 12622 GeoMatchConstraintValueGe = "GE" 12623 12624 // GeoMatchConstraintValueDe is a GeoMatchConstraintValue enum value 12625 GeoMatchConstraintValueDe = "DE" 12626 12627 // GeoMatchConstraintValueGh is a GeoMatchConstraintValue enum value 12628 GeoMatchConstraintValueGh = "GH" 12629 12630 // GeoMatchConstraintValueGi is a GeoMatchConstraintValue enum value 12631 GeoMatchConstraintValueGi = "GI" 12632 12633 // GeoMatchConstraintValueGr is a GeoMatchConstraintValue enum value 12634 GeoMatchConstraintValueGr = "GR" 12635 12636 // GeoMatchConstraintValueGl is a GeoMatchConstraintValue enum value 12637 GeoMatchConstraintValueGl = "GL" 12638 12639 // GeoMatchConstraintValueGd is a GeoMatchConstraintValue enum value 12640 GeoMatchConstraintValueGd = "GD" 12641 12642 // GeoMatchConstraintValueGp is a GeoMatchConstraintValue enum value 12643 GeoMatchConstraintValueGp = "GP" 12644 12645 // GeoMatchConstraintValueGu is a GeoMatchConstraintValue enum value 12646 GeoMatchConstraintValueGu = "GU" 12647 12648 // GeoMatchConstraintValueGt is a GeoMatchConstraintValue enum value 12649 GeoMatchConstraintValueGt = "GT" 12650 12651 // GeoMatchConstraintValueGg is a GeoMatchConstraintValue enum value 12652 GeoMatchConstraintValueGg = "GG" 12653 12654 // GeoMatchConstraintValueGn is a GeoMatchConstraintValue enum value 12655 GeoMatchConstraintValueGn = "GN" 12656 12657 // GeoMatchConstraintValueGw is a GeoMatchConstraintValue enum value 12658 GeoMatchConstraintValueGw = "GW" 12659 12660 // GeoMatchConstraintValueGy is a GeoMatchConstraintValue enum value 12661 GeoMatchConstraintValueGy = "GY" 12662 12663 // GeoMatchConstraintValueHt is a GeoMatchConstraintValue enum value 12664 GeoMatchConstraintValueHt = "HT" 12665 12666 // GeoMatchConstraintValueHm is a GeoMatchConstraintValue enum value 12667 GeoMatchConstraintValueHm = "HM" 12668 12669 // GeoMatchConstraintValueVa is a GeoMatchConstraintValue enum value 12670 GeoMatchConstraintValueVa = "VA" 12671 12672 // GeoMatchConstraintValueHn is a GeoMatchConstraintValue enum value 12673 GeoMatchConstraintValueHn = "HN" 12674 12675 // GeoMatchConstraintValueHk is a GeoMatchConstraintValue enum value 12676 GeoMatchConstraintValueHk = "HK" 12677 12678 // GeoMatchConstraintValueHu is a GeoMatchConstraintValue enum value 12679 GeoMatchConstraintValueHu = "HU" 12680 12681 // GeoMatchConstraintValueIs is a GeoMatchConstraintValue enum value 12682 GeoMatchConstraintValueIs = "IS" 12683 12684 // GeoMatchConstraintValueIn is a GeoMatchConstraintValue enum value 12685 GeoMatchConstraintValueIn = "IN" 12686 12687 // GeoMatchConstraintValueId is a GeoMatchConstraintValue enum value 12688 GeoMatchConstraintValueId = "ID" 12689 12690 // GeoMatchConstraintValueIr is a GeoMatchConstraintValue enum value 12691 GeoMatchConstraintValueIr = "IR" 12692 12693 // GeoMatchConstraintValueIq is a GeoMatchConstraintValue enum value 12694 GeoMatchConstraintValueIq = "IQ" 12695 12696 // GeoMatchConstraintValueIe is a GeoMatchConstraintValue enum value 12697 GeoMatchConstraintValueIe = "IE" 12698 12699 // GeoMatchConstraintValueIm is a GeoMatchConstraintValue enum value 12700 GeoMatchConstraintValueIm = "IM" 12701 12702 // GeoMatchConstraintValueIl is a GeoMatchConstraintValue enum value 12703 GeoMatchConstraintValueIl = "IL" 12704 12705 // GeoMatchConstraintValueIt is a GeoMatchConstraintValue enum value 12706 GeoMatchConstraintValueIt = "IT" 12707 12708 // GeoMatchConstraintValueJm is a GeoMatchConstraintValue enum value 12709 GeoMatchConstraintValueJm = "JM" 12710 12711 // GeoMatchConstraintValueJp is a GeoMatchConstraintValue enum value 12712 GeoMatchConstraintValueJp = "JP" 12713 12714 // GeoMatchConstraintValueJe is a GeoMatchConstraintValue enum value 12715 GeoMatchConstraintValueJe = "JE" 12716 12717 // GeoMatchConstraintValueJo is a GeoMatchConstraintValue enum value 12718 GeoMatchConstraintValueJo = "JO" 12719 12720 // GeoMatchConstraintValueKz is a GeoMatchConstraintValue enum value 12721 GeoMatchConstraintValueKz = "KZ" 12722 12723 // GeoMatchConstraintValueKe is a GeoMatchConstraintValue enum value 12724 GeoMatchConstraintValueKe = "KE" 12725 12726 // GeoMatchConstraintValueKi is a GeoMatchConstraintValue enum value 12727 GeoMatchConstraintValueKi = "KI" 12728 12729 // GeoMatchConstraintValueKp is a GeoMatchConstraintValue enum value 12730 GeoMatchConstraintValueKp = "KP" 12731 12732 // GeoMatchConstraintValueKr is a GeoMatchConstraintValue enum value 12733 GeoMatchConstraintValueKr = "KR" 12734 12735 // GeoMatchConstraintValueKw is a GeoMatchConstraintValue enum value 12736 GeoMatchConstraintValueKw = "KW" 12737 12738 // GeoMatchConstraintValueKg is a GeoMatchConstraintValue enum value 12739 GeoMatchConstraintValueKg = "KG" 12740 12741 // GeoMatchConstraintValueLa is a GeoMatchConstraintValue enum value 12742 GeoMatchConstraintValueLa = "LA" 12743 12744 // GeoMatchConstraintValueLv is a GeoMatchConstraintValue enum value 12745 GeoMatchConstraintValueLv = "LV" 12746 12747 // GeoMatchConstraintValueLb is a GeoMatchConstraintValue enum value 12748 GeoMatchConstraintValueLb = "LB" 12749 12750 // GeoMatchConstraintValueLs is a GeoMatchConstraintValue enum value 12751 GeoMatchConstraintValueLs = "LS" 12752 12753 // GeoMatchConstraintValueLr is a GeoMatchConstraintValue enum value 12754 GeoMatchConstraintValueLr = "LR" 12755 12756 // GeoMatchConstraintValueLy is a GeoMatchConstraintValue enum value 12757 GeoMatchConstraintValueLy = "LY" 12758 12759 // GeoMatchConstraintValueLi is a GeoMatchConstraintValue enum value 12760 GeoMatchConstraintValueLi = "LI" 12761 12762 // GeoMatchConstraintValueLt is a GeoMatchConstraintValue enum value 12763 GeoMatchConstraintValueLt = "LT" 12764 12765 // GeoMatchConstraintValueLu is a GeoMatchConstraintValue enum value 12766 GeoMatchConstraintValueLu = "LU" 12767 12768 // GeoMatchConstraintValueMo is a GeoMatchConstraintValue enum value 12769 GeoMatchConstraintValueMo = "MO" 12770 12771 // GeoMatchConstraintValueMk is a GeoMatchConstraintValue enum value 12772 GeoMatchConstraintValueMk = "MK" 12773 12774 // GeoMatchConstraintValueMg is a GeoMatchConstraintValue enum value 12775 GeoMatchConstraintValueMg = "MG" 12776 12777 // GeoMatchConstraintValueMw is a GeoMatchConstraintValue enum value 12778 GeoMatchConstraintValueMw = "MW" 12779 12780 // GeoMatchConstraintValueMy is a GeoMatchConstraintValue enum value 12781 GeoMatchConstraintValueMy = "MY" 12782 12783 // GeoMatchConstraintValueMv is a GeoMatchConstraintValue enum value 12784 GeoMatchConstraintValueMv = "MV" 12785 12786 // GeoMatchConstraintValueMl is a GeoMatchConstraintValue enum value 12787 GeoMatchConstraintValueMl = "ML" 12788 12789 // GeoMatchConstraintValueMt is a GeoMatchConstraintValue enum value 12790 GeoMatchConstraintValueMt = "MT" 12791 12792 // GeoMatchConstraintValueMh is a GeoMatchConstraintValue enum value 12793 GeoMatchConstraintValueMh = "MH" 12794 12795 // GeoMatchConstraintValueMq is a GeoMatchConstraintValue enum value 12796 GeoMatchConstraintValueMq = "MQ" 12797 12798 // GeoMatchConstraintValueMr is a GeoMatchConstraintValue enum value 12799 GeoMatchConstraintValueMr = "MR" 12800 12801 // GeoMatchConstraintValueMu is a GeoMatchConstraintValue enum value 12802 GeoMatchConstraintValueMu = "MU" 12803 12804 // GeoMatchConstraintValueYt is a GeoMatchConstraintValue enum value 12805 GeoMatchConstraintValueYt = "YT" 12806 12807 // GeoMatchConstraintValueMx is a GeoMatchConstraintValue enum value 12808 GeoMatchConstraintValueMx = "MX" 12809 12810 // GeoMatchConstraintValueFm is a GeoMatchConstraintValue enum value 12811 GeoMatchConstraintValueFm = "FM" 12812 12813 // GeoMatchConstraintValueMd is a GeoMatchConstraintValue enum value 12814 GeoMatchConstraintValueMd = "MD" 12815 12816 // GeoMatchConstraintValueMc is a GeoMatchConstraintValue enum value 12817 GeoMatchConstraintValueMc = "MC" 12818 12819 // GeoMatchConstraintValueMn is a GeoMatchConstraintValue enum value 12820 GeoMatchConstraintValueMn = "MN" 12821 12822 // GeoMatchConstraintValueMe is a GeoMatchConstraintValue enum value 12823 GeoMatchConstraintValueMe = "ME" 12824 12825 // GeoMatchConstraintValueMs is a GeoMatchConstraintValue enum value 12826 GeoMatchConstraintValueMs = "MS" 12827 12828 // GeoMatchConstraintValueMa is a GeoMatchConstraintValue enum value 12829 GeoMatchConstraintValueMa = "MA" 12830 12831 // GeoMatchConstraintValueMz is a GeoMatchConstraintValue enum value 12832 GeoMatchConstraintValueMz = "MZ" 12833 12834 // GeoMatchConstraintValueMm is a GeoMatchConstraintValue enum value 12835 GeoMatchConstraintValueMm = "MM" 12836 12837 // GeoMatchConstraintValueNa is a GeoMatchConstraintValue enum value 12838 GeoMatchConstraintValueNa = "NA" 12839 12840 // GeoMatchConstraintValueNr is a GeoMatchConstraintValue enum value 12841 GeoMatchConstraintValueNr = "NR" 12842 12843 // GeoMatchConstraintValueNp is a GeoMatchConstraintValue enum value 12844 GeoMatchConstraintValueNp = "NP" 12845 12846 // GeoMatchConstraintValueNl is a GeoMatchConstraintValue enum value 12847 GeoMatchConstraintValueNl = "NL" 12848 12849 // GeoMatchConstraintValueNc is a GeoMatchConstraintValue enum value 12850 GeoMatchConstraintValueNc = "NC" 12851 12852 // GeoMatchConstraintValueNz is a GeoMatchConstraintValue enum value 12853 GeoMatchConstraintValueNz = "NZ" 12854 12855 // GeoMatchConstraintValueNi is a GeoMatchConstraintValue enum value 12856 GeoMatchConstraintValueNi = "NI" 12857 12858 // GeoMatchConstraintValueNe is a GeoMatchConstraintValue enum value 12859 GeoMatchConstraintValueNe = "NE" 12860 12861 // GeoMatchConstraintValueNg is a GeoMatchConstraintValue enum value 12862 GeoMatchConstraintValueNg = "NG" 12863 12864 // GeoMatchConstraintValueNu is a GeoMatchConstraintValue enum value 12865 GeoMatchConstraintValueNu = "NU" 12866 12867 // GeoMatchConstraintValueNf is a GeoMatchConstraintValue enum value 12868 GeoMatchConstraintValueNf = "NF" 12869 12870 // GeoMatchConstraintValueMp is a GeoMatchConstraintValue enum value 12871 GeoMatchConstraintValueMp = "MP" 12872 12873 // GeoMatchConstraintValueNo is a GeoMatchConstraintValue enum value 12874 GeoMatchConstraintValueNo = "NO" 12875 12876 // GeoMatchConstraintValueOm is a GeoMatchConstraintValue enum value 12877 GeoMatchConstraintValueOm = "OM" 12878 12879 // GeoMatchConstraintValuePk is a GeoMatchConstraintValue enum value 12880 GeoMatchConstraintValuePk = "PK" 12881 12882 // GeoMatchConstraintValuePw is a GeoMatchConstraintValue enum value 12883 GeoMatchConstraintValuePw = "PW" 12884 12885 // GeoMatchConstraintValuePs is a GeoMatchConstraintValue enum value 12886 GeoMatchConstraintValuePs = "PS" 12887 12888 // GeoMatchConstraintValuePa is a GeoMatchConstraintValue enum value 12889 GeoMatchConstraintValuePa = "PA" 12890 12891 // GeoMatchConstraintValuePg is a GeoMatchConstraintValue enum value 12892 GeoMatchConstraintValuePg = "PG" 12893 12894 // GeoMatchConstraintValuePy is a GeoMatchConstraintValue enum value 12895 GeoMatchConstraintValuePy = "PY" 12896 12897 // GeoMatchConstraintValuePe is a GeoMatchConstraintValue enum value 12898 GeoMatchConstraintValuePe = "PE" 12899 12900 // GeoMatchConstraintValuePh is a GeoMatchConstraintValue enum value 12901 GeoMatchConstraintValuePh = "PH" 12902 12903 // GeoMatchConstraintValuePn is a GeoMatchConstraintValue enum value 12904 GeoMatchConstraintValuePn = "PN" 12905 12906 // GeoMatchConstraintValuePl is a GeoMatchConstraintValue enum value 12907 GeoMatchConstraintValuePl = "PL" 12908 12909 // GeoMatchConstraintValuePt is a GeoMatchConstraintValue enum value 12910 GeoMatchConstraintValuePt = "PT" 12911 12912 // GeoMatchConstraintValuePr is a GeoMatchConstraintValue enum value 12913 GeoMatchConstraintValuePr = "PR" 12914 12915 // GeoMatchConstraintValueQa is a GeoMatchConstraintValue enum value 12916 GeoMatchConstraintValueQa = "QA" 12917 12918 // GeoMatchConstraintValueRe is a GeoMatchConstraintValue enum value 12919 GeoMatchConstraintValueRe = "RE" 12920 12921 // GeoMatchConstraintValueRo is a GeoMatchConstraintValue enum value 12922 GeoMatchConstraintValueRo = "RO" 12923 12924 // GeoMatchConstraintValueRu is a GeoMatchConstraintValue enum value 12925 GeoMatchConstraintValueRu = "RU" 12926 12927 // GeoMatchConstraintValueRw is a GeoMatchConstraintValue enum value 12928 GeoMatchConstraintValueRw = "RW" 12929 12930 // GeoMatchConstraintValueBl is a GeoMatchConstraintValue enum value 12931 GeoMatchConstraintValueBl = "BL" 12932 12933 // GeoMatchConstraintValueSh is a GeoMatchConstraintValue enum value 12934 GeoMatchConstraintValueSh = "SH" 12935 12936 // GeoMatchConstraintValueKn is a GeoMatchConstraintValue enum value 12937 GeoMatchConstraintValueKn = "KN" 12938 12939 // GeoMatchConstraintValueLc is a GeoMatchConstraintValue enum value 12940 GeoMatchConstraintValueLc = "LC" 12941 12942 // GeoMatchConstraintValueMf is a GeoMatchConstraintValue enum value 12943 GeoMatchConstraintValueMf = "MF" 12944 12945 // GeoMatchConstraintValuePm is a GeoMatchConstraintValue enum value 12946 GeoMatchConstraintValuePm = "PM" 12947 12948 // GeoMatchConstraintValueVc is a GeoMatchConstraintValue enum value 12949 GeoMatchConstraintValueVc = "VC" 12950 12951 // GeoMatchConstraintValueWs is a GeoMatchConstraintValue enum value 12952 GeoMatchConstraintValueWs = "WS" 12953 12954 // GeoMatchConstraintValueSm is a GeoMatchConstraintValue enum value 12955 GeoMatchConstraintValueSm = "SM" 12956 12957 // GeoMatchConstraintValueSt is a GeoMatchConstraintValue enum value 12958 GeoMatchConstraintValueSt = "ST" 12959 12960 // GeoMatchConstraintValueSa is a GeoMatchConstraintValue enum value 12961 GeoMatchConstraintValueSa = "SA" 12962 12963 // GeoMatchConstraintValueSn is a GeoMatchConstraintValue enum value 12964 GeoMatchConstraintValueSn = "SN" 12965 12966 // GeoMatchConstraintValueRs is a GeoMatchConstraintValue enum value 12967 GeoMatchConstraintValueRs = "RS" 12968 12969 // GeoMatchConstraintValueSc is a GeoMatchConstraintValue enum value 12970 GeoMatchConstraintValueSc = "SC" 12971 12972 // GeoMatchConstraintValueSl is a GeoMatchConstraintValue enum value 12973 GeoMatchConstraintValueSl = "SL" 12974 12975 // GeoMatchConstraintValueSg is a GeoMatchConstraintValue enum value 12976 GeoMatchConstraintValueSg = "SG" 12977 12978 // GeoMatchConstraintValueSx is a GeoMatchConstraintValue enum value 12979 GeoMatchConstraintValueSx = "SX" 12980 12981 // GeoMatchConstraintValueSk is a GeoMatchConstraintValue enum value 12982 GeoMatchConstraintValueSk = "SK" 12983 12984 // GeoMatchConstraintValueSi is a GeoMatchConstraintValue enum value 12985 GeoMatchConstraintValueSi = "SI" 12986 12987 // GeoMatchConstraintValueSb is a GeoMatchConstraintValue enum value 12988 GeoMatchConstraintValueSb = "SB" 12989 12990 // GeoMatchConstraintValueSo is a GeoMatchConstraintValue enum value 12991 GeoMatchConstraintValueSo = "SO" 12992 12993 // GeoMatchConstraintValueZa is a GeoMatchConstraintValue enum value 12994 GeoMatchConstraintValueZa = "ZA" 12995 12996 // GeoMatchConstraintValueGs is a GeoMatchConstraintValue enum value 12997 GeoMatchConstraintValueGs = "GS" 12998 12999 // GeoMatchConstraintValueSs is a GeoMatchConstraintValue enum value 13000 GeoMatchConstraintValueSs = "SS" 13001 13002 // GeoMatchConstraintValueEs is a GeoMatchConstraintValue enum value 13003 GeoMatchConstraintValueEs = "ES" 13004 13005 // GeoMatchConstraintValueLk is a GeoMatchConstraintValue enum value 13006 GeoMatchConstraintValueLk = "LK" 13007 13008 // GeoMatchConstraintValueSd is a GeoMatchConstraintValue enum value 13009 GeoMatchConstraintValueSd = "SD" 13010 13011 // GeoMatchConstraintValueSr is a GeoMatchConstraintValue enum value 13012 GeoMatchConstraintValueSr = "SR" 13013 13014 // GeoMatchConstraintValueSj is a GeoMatchConstraintValue enum value 13015 GeoMatchConstraintValueSj = "SJ" 13016 13017 // GeoMatchConstraintValueSz is a GeoMatchConstraintValue enum value 13018 GeoMatchConstraintValueSz = "SZ" 13019 13020 // GeoMatchConstraintValueSe is a GeoMatchConstraintValue enum value 13021 GeoMatchConstraintValueSe = "SE" 13022 13023 // GeoMatchConstraintValueCh is a GeoMatchConstraintValue enum value 13024 GeoMatchConstraintValueCh = "CH" 13025 13026 // GeoMatchConstraintValueSy is a GeoMatchConstraintValue enum value 13027 GeoMatchConstraintValueSy = "SY" 13028 13029 // GeoMatchConstraintValueTw is a GeoMatchConstraintValue enum value 13030 GeoMatchConstraintValueTw = "TW" 13031 13032 // GeoMatchConstraintValueTj is a GeoMatchConstraintValue enum value 13033 GeoMatchConstraintValueTj = "TJ" 13034 13035 // GeoMatchConstraintValueTz is a GeoMatchConstraintValue enum value 13036 GeoMatchConstraintValueTz = "TZ" 13037 13038 // GeoMatchConstraintValueTh is a GeoMatchConstraintValue enum value 13039 GeoMatchConstraintValueTh = "TH" 13040 13041 // GeoMatchConstraintValueTl is a GeoMatchConstraintValue enum value 13042 GeoMatchConstraintValueTl = "TL" 13043 13044 // GeoMatchConstraintValueTg is a GeoMatchConstraintValue enum value 13045 GeoMatchConstraintValueTg = "TG" 13046 13047 // GeoMatchConstraintValueTk is a GeoMatchConstraintValue enum value 13048 GeoMatchConstraintValueTk = "TK" 13049 13050 // GeoMatchConstraintValueTo is a GeoMatchConstraintValue enum value 13051 GeoMatchConstraintValueTo = "TO" 13052 13053 // GeoMatchConstraintValueTt is a GeoMatchConstraintValue enum value 13054 GeoMatchConstraintValueTt = "TT" 13055 13056 // GeoMatchConstraintValueTn is a GeoMatchConstraintValue enum value 13057 GeoMatchConstraintValueTn = "TN" 13058 13059 // GeoMatchConstraintValueTr is a GeoMatchConstraintValue enum value 13060 GeoMatchConstraintValueTr = "TR" 13061 13062 // GeoMatchConstraintValueTm is a GeoMatchConstraintValue enum value 13063 GeoMatchConstraintValueTm = "TM" 13064 13065 // GeoMatchConstraintValueTc is a GeoMatchConstraintValue enum value 13066 GeoMatchConstraintValueTc = "TC" 13067 13068 // GeoMatchConstraintValueTv is a GeoMatchConstraintValue enum value 13069 GeoMatchConstraintValueTv = "TV" 13070 13071 // GeoMatchConstraintValueUg is a GeoMatchConstraintValue enum value 13072 GeoMatchConstraintValueUg = "UG" 13073 13074 // GeoMatchConstraintValueUa is a GeoMatchConstraintValue enum value 13075 GeoMatchConstraintValueUa = "UA" 13076 13077 // GeoMatchConstraintValueAe is a GeoMatchConstraintValue enum value 13078 GeoMatchConstraintValueAe = "AE" 13079 13080 // GeoMatchConstraintValueGb is a GeoMatchConstraintValue enum value 13081 GeoMatchConstraintValueGb = "GB" 13082 13083 // GeoMatchConstraintValueUs is a GeoMatchConstraintValue enum value 13084 GeoMatchConstraintValueUs = "US" 13085 13086 // GeoMatchConstraintValueUm is a GeoMatchConstraintValue enum value 13087 GeoMatchConstraintValueUm = "UM" 13088 13089 // GeoMatchConstraintValueUy is a GeoMatchConstraintValue enum value 13090 GeoMatchConstraintValueUy = "UY" 13091 13092 // GeoMatchConstraintValueUz is a GeoMatchConstraintValue enum value 13093 GeoMatchConstraintValueUz = "UZ" 13094 13095 // GeoMatchConstraintValueVu is a GeoMatchConstraintValue enum value 13096 GeoMatchConstraintValueVu = "VU" 13097 13098 // GeoMatchConstraintValueVe is a GeoMatchConstraintValue enum value 13099 GeoMatchConstraintValueVe = "VE" 13100 13101 // GeoMatchConstraintValueVn is a GeoMatchConstraintValue enum value 13102 GeoMatchConstraintValueVn = "VN" 13103 13104 // GeoMatchConstraintValueVg is a GeoMatchConstraintValue enum value 13105 GeoMatchConstraintValueVg = "VG" 13106 13107 // GeoMatchConstraintValueVi is a GeoMatchConstraintValue enum value 13108 GeoMatchConstraintValueVi = "VI" 13109 13110 // GeoMatchConstraintValueWf is a GeoMatchConstraintValue enum value 13111 GeoMatchConstraintValueWf = "WF" 13112 13113 // GeoMatchConstraintValueEh is a GeoMatchConstraintValue enum value 13114 GeoMatchConstraintValueEh = "EH" 13115 13116 // GeoMatchConstraintValueYe is a GeoMatchConstraintValue enum value 13117 GeoMatchConstraintValueYe = "YE" 13118 13119 // GeoMatchConstraintValueZm is a GeoMatchConstraintValue enum value 13120 GeoMatchConstraintValueZm = "ZM" 13121 13122 // GeoMatchConstraintValueZw is a GeoMatchConstraintValue enum value 13123 GeoMatchConstraintValueZw = "ZW" 13124) 13125 13126const ( 13127 // IPSetDescriptorTypeIpv4 is a IPSetDescriptorType enum value 13128 IPSetDescriptorTypeIpv4 = "IPV4" 13129 13130 // IPSetDescriptorTypeIpv6 is a IPSetDescriptorType enum value 13131 IPSetDescriptorTypeIpv6 = "IPV6" 13132) 13133 13134const ( 13135 // MatchFieldTypeUri is a MatchFieldType enum value 13136 MatchFieldTypeUri = "URI" 13137 13138 // MatchFieldTypeQueryString is a MatchFieldType enum value 13139 MatchFieldTypeQueryString = "QUERY_STRING" 13140 13141 // MatchFieldTypeHeader is a MatchFieldType enum value 13142 MatchFieldTypeHeader = "HEADER" 13143 13144 // MatchFieldTypeMethod is a MatchFieldType enum value 13145 MatchFieldTypeMethod = "METHOD" 13146 13147 // MatchFieldTypeBody is a MatchFieldType enum value 13148 MatchFieldTypeBody = "BODY" 13149 13150 // MatchFieldTypeSingleQueryArg is a MatchFieldType enum value 13151 MatchFieldTypeSingleQueryArg = "SINGLE_QUERY_ARG" 13152 13153 // MatchFieldTypeAllQueryArgs is a MatchFieldType enum value 13154 MatchFieldTypeAllQueryArgs = "ALL_QUERY_ARGS" 13155) 13156 13157const ( 13158 // MigrationErrorTypeEntityNotSupported is a MigrationErrorType enum value 13159 MigrationErrorTypeEntityNotSupported = "ENTITY_NOT_SUPPORTED" 13160 13161 // MigrationErrorTypeEntityNotFound is a MigrationErrorType enum value 13162 MigrationErrorTypeEntityNotFound = "ENTITY_NOT_FOUND" 13163 13164 // MigrationErrorTypeS3BucketNoPermission is a MigrationErrorType enum value 13165 MigrationErrorTypeS3BucketNoPermission = "S3_BUCKET_NO_PERMISSION" 13166 13167 // MigrationErrorTypeS3BucketNotAccessible is a MigrationErrorType enum value 13168 MigrationErrorTypeS3BucketNotAccessible = "S3_BUCKET_NOT_ACCESSIBLE" 13169 13170 // MigrationErrorTypeS3BucketNotFound is a MigrationErrorType enum value 13171 MigrationErrorTypeS3BucketNotFound = "S3_BUCKET_NOT_FOUND" 13172 13173 // MigrationErrorTypeS3BucketInvalidRegion is a MigrationErrorType enum value 13174 MigrationErrorTypeS3BucketInvalidRegion = "S3_BUCKET_INVALID_REGION" 13175 13176 // MigrationErrorTypeS3InternalError is a MigrationErrorType enum value 13177 MigrationErrorTypeS3InternalError = "S3_INTERNAL_ERROR" 13178) 13179 13180const ( 13181 // ParameterExceptionFieldChangeAction is a ParameterExceptionField enum value 13182 ParameterExceptionFieldChangeAction = "CHANGE_ACTION" 13183 13184 // ParameterExceptionFieldWafAction is a ParameterExceptionField enum value 13185 ParameterExceptionFieldWafAction = "WAF_ACTION" 13186 13187 // ParameterExceptionFieldWafOverrideAction is a ParameterExceptionField enum value 13188 ParameterExceptionFieldWafOverrideAction = "WAF_OVERRIDE_ACTION" 13189 13190 // ParameterExceptionFieldPredicateType is a ParameterExceptionField enum value 13191 ParameterExceptionFieldPredicateType = "PREDICATE_TYPE" 13192 13193 // ParameterExceptionFieldIpsetType is a ParameterExceptionField enum value 13194 ParameterExceptionFieldIpsetType = "IPSET_TYPE" 13195 13196 // ParameterExceptionFieldByteMatchFieldType is a ParameterExceptionField enum value 13197 ParameterExceptionFieldByteMatchFieldType = "BYTE_MATCH_FIELD_TYPE" 13198 13199 // ParameterExceptionFieldSqlInjectionMatchFieldType is a ParameterExceptionField enum value 13200 ParameterExceptionFieldSqlInjectionMatchFieldType = "SQL_INJECTION_MATCH_FIELD_TYPE" 13201 13202 // ParameterExceptionFieldByteMatchTextTransformation is a ParameterExceptionField enum value 13203 ParameterExceptionFieldByteMatchTextTransformation = "BYTE_MATCH_TEXT_TRANSFORMATION" 13204 13205 // ParameterExceptionFieldByteMatchPositionalConstraint is a ParameterExceptionField enum value 13206 ParameterExceptionFieldByteMatchPositionalConstraint = "BYTE_MATCH_POSITIONAL_CONSTRAINT" 13207 13208 // ParameterExceptionFieldSizeConstraintComparisonOperator is a ParameterExceptionField enum value 13209 ParameterExceptionFieldSizeConstraintComparisonOperator = "SIZE_CONSTRAINT_COMPARISON_OPERATOR" 13210 13211 // ParameterExceptionFieldGeoMatchLocationType is a ParameterExceptionField enum value 13212 ParameterExceptionFieldGeoMatchLocationType = "GEO_MATCH_LOCATION_TYPE" 13213 13214 // ParameterExceptionFieldGeoMatchLocationValue is a ParameterExceptionField enum value 13215 ParameterExceptionFieldGeoMatchLocationValue = "GEO_MATCH_LOCATION_VALUE" 13216 13217 // ParameterExceptionFieldRateKey is a ParameterExceptionField enum value 13218 ParameterExceptionFieldRateKey = "RATE_KEY" 13219 13220 // ParameterExceptionFieldRuleType is a ParameterExceptionField enum value 13221 ParameterExceptionFieldRuleType = "RULE_TYPE" 13222 13223 // ParameterExceptionFieldNextMarker is a ParameterExceptionField enum value 13224 ParameterExceptionFieldNextMarker = "NEXT_MARKER" 13225 13226 // ParameterExceptionFieldResourceArn is a ParameterExceptionField enum value 13227 ParameterExceptionFieldResourceArn = "RESOURCE_ARN" 13228 13229 // ParameterExceptionFieldTags is a ParameterExceptionField enum value 13230 ParameterExceptionFieldTags = "TAGS" 13231 13232 // ParameterExceptionFieldTagKeys is a ParameterExceptionField enum value 13233 ParameterExceptionFieldTagKeys = "TAG_KEYS" 13234) 13235 13236const ( 13237 // ParameterExceptionReasonInvalidOption is a ParameterExceptionReason enum value 13238 ParameterExceptionReasonInvalidOption = "INVALID_OPTION" 13239 13240 // ParameterExceptionReasonIllegalCombination is a ParameterExceptionReason enum value 13241 ParameterExceptionReasonIllegalCombination = "ILLEGAL_COMBINATION" 13242 13243 // ParameterExceptionReasonIllegalArgument is a ParameterExceptionReason enum value 13244 ParameterExceptionReasonIllegalArgument = "ILLEGAL_ARGUMENT" 13245 13246 // ParameterExceptionReasonInvalidTagKey is a ParameterExceptionReason enum value 13247 ParameterExceptionReasonInvalidTagKey = "INVALID_TAG_KEY" 13248) 13249 13250const ( 13251 // PositionalConstraintExactly is a PositionalConstraint enum value 13252 PositionalConstraintExactly = "EXACTLY" 13253 13254 // PositionalConstraintStartsWith is a PositionalConstraint enum value 13255 PositionalConstraintStartsWith = "STARTS_WITH" 13256 13257 // PositionalConstraintEndsWith is a PositionalConstraint enum value 13258 PositionalConstraintEndsWith = "ENDS_WITH" 13259 13260 // PositionalConstraintContains is a PositionalConstraint enum value 13261 PositionalConstraintContains = "CONTAINS" 13262 13263 // PositionalConstraintContainsWord is a PositionalConstraint enum value 13264 PositionalConstraintContainsWord = "CONTAINS_WORD" 13265) 13266 13267const ( 13268 // PredicateTypeIpmatch is a PredicateType enum value 13269 PredicateTypeIpmatch = "IPMatch" 13270 13271 // PredicateTypeByteMatch is a PredicateType enum value 13272 PredicateTypeByteMatch = "ByteMatch" 13273 13274 // PredicateTypeSqlInjectionMatch is a PredicateType enum value 13275 PredicateTypeSqlInjectionMatch = "SqlInjectionMatch" 13276 13277 // PredicateTypeGeoMatch is a PredicateType enum value 13278 PredicateTypeGeoMatch = "GeoMatch" 13279 13280 // PredicateTypeSizeConstraint is a PredicateType enum value 13281 PredicateTypeSizeConstraint = "SizeConstraint" 13282 13283 // PredicateTypeXssMatch is a PredicateType enum value 13284 PredicateTypeXssMatch = "XssMatch" 13285 13286 // PredicateTypeRegexMatch is a PredicateType enum value 13287 PredicateTypeRegexMatch = "RegexMatch" 13288) 13289 13290const ( 13291 // RateKeyIp is a RateKey enum value 13292 RateKeyIp = "IP" 13293) 13294 13295const ( 13296 // ResourceTypeApplicationLoadBalancer is a ResourceType enum value 13297 ResourceTypeApplicationLoadBalancer = "APPLICATION_LOAD_BALANCER" 13298 13299 // ResourceTypeApiGateway is a ResourceType enum value 13300 ResourceTypeApiGateway = "API_GATEWAY" 13301) 13302 13303const ( 13304 // TextTransformationNone is a TextTransformation enum value 13305 TextTransformationNone = "NONE" 13306 13307 // TextTransformationCompressWhiteSpace is a TextTransformation enum value 13308 TextTransformationCompressWhiteSpace = "COMPRESS_WHITE_SPACE" 13309 13310 // TextTransformationHtmlEntityDecode is a TextTransformation enum value 13311 TextTransformationHtmlEntityDecode = "HTML_ENTITY_DECODE" 13312 13313 // TextTransformationLowercase is a TextTransformation enum value 13314 TextTransformationLowercase = "LOWERCASE" 13315 13316 // TextTransformationCmdLine is a TextTransformation enum value 13317 TextTransformationCmdLine = "CMD_LINE" 13318 13319 // TextTransformationUrlDecode is a TextTransformation enum value 13320 TextTransformationUrlDecode = "URL_DECODE" 13321) 13322 13323const ( 13324 // WafActionTypeBlock is a WafActionType enum value 13325 WafActionTypeBlock = "BLOCK" 13326 13327 // WafActionTypeAllow is a WafActionType enum value 13328 WafActionTypeAllow = "ALLOW" 13329 13330 // WafActionTypeCount is a WafActionType enum value 13331 WafActionTypeCount = "COUNT" 13332) 13333 13334const ( 13335 // WafOverrideActionTypeNone is a WafOverrideActionType enum value 13336 WafOverrideActionTypeNone = "NONE" 13337 13338 // WafOverrideActionTypeCount is a WafOverrideActionType enum value 13339 WafOverrideActionTypeCount = "COUNT" 13340) 13341 13342const ( 13343 // WafRuleTypeRegular is a WafRuleType enum value 13344 WafRuleTypeRegular = "REGULAR" 13345 13346 // WafRuleTypeRateBased is a WafRuleType enum value 13347 WafRuleTypeRateBased = "RATE_BASED" 13348 13349 // WafRuleTypeGroup is a WafRuleType enum value 13350 WafRuleTypeGroup = "GROUP" 13351) 13352