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 12341// ChangeAction_Values returns all elements of the ChangeAction enum 12342func ChangeAction_Values() []string { 12343 return []string{ 12344 ChangeActionInsert, 12345 ChangeActionDelete, 12346 } 12347} 12348 12349const ( 12350 // ChangeTokenStatusProvisioned is a ChangeTokenStatus enum value 12351 ChangeTokenStatusProvisioned = "PROVISIONED" 12352 12353 // ChangeTokenStatusPending is a ChangeTokenStatus enum value 12354 ChangeTokenStatusPending = "PENDING" 12355 12356 // ChangeTokenStatusInsync is a ChangeTokenStatus enum value 12357 ChangeTokenStatusInsync = "INSYNC" 12358) 12359 12360// ChangeTokenStatus_Values returns all elements of the ChangeTokenStatus enum 12361func ChangeTokenStatus_Values() []string { 12362 return []string{ 12363 ChangeTokenStatusProvisioned, 12364 ChangeTokenStatusPending, 12365 ChangeTokenStatusInsync, 12366 } 12367} 12368 12369const ( 12370 // ComparisonOperatorEq is a ComparisonOperator enum value 12371 ComparisonOperatorEq = "EQ" 12372 12373 // ComparisonOperatorNe is a ComparisonOperator enum value 12374 ComparisonOperatorNe = "NE" 12375 12376 // ComparisonOperatorLe is a ComparisonOperator enum value 12377 ComparisonOperatorLe = "LE" 12378 12379 // ComparisonOperatorLt is a ComparisonOperator enum value 12380 ComparisonOperatorLt = "LT" 12381 12382 // ComparisonOperatorGe is a ComparisonOperator enum value 12383 ComparisonOperatorGe = "GE" 12384 12385 // ComparisonOperatorGt is a ComparisonOperator enum value 12386 ComparisonOperatorGt = "GT" 12387) 12388 12389// ComparisonOperator_Values returns all elements of the ComparisonOperator enum 12390func ComparisonOperator_Values() []string { 12391 return []string{ 12392 ComparisonOperatorEq, 12393 ComparisonOperatorNe, 12394 ComparisonOperatorLe, 12395 ComparisonOperatorLt, 12396 ComparisonOperatorGe, 12397 ComparisonOperatorGt, 12398 } 12399} 12400 12401const ( 12402 // GeoMatchConstraintTypeCountry is a GeoMatchConstraintType enum value 12403 GeoMatchConstraintTypeCountry = "Country" 12404) 12405 12406// GeoMatchConstraintType_Values returns all elements of the GeoMatchConstraintType enum 12407func GeoMatchConstraintType_Values() []string { 12408 return []string{ 12409 GeoMatchConstraintTypeCountry, 12410 } 12411} 12412 12413const ( 12414 // GeoMatchConstraintValueAf is a GeoMatchConstraintValue enum value 12415 GeoMatchConstraintValueAf = "AF" 12416 12417 // GeoMatchConstraintValueAx is a GeoMatchConstraintValue enum value 12418 GeoMatchConstraintValueAx = "AX" 12419 12420 // GeoMatchConstraintValueAl is a GeoMatchConstraintValue enum value 12421 GeoMatchConstraintValueAl = "AL" 12422 12423 // GeoMatchConstraintValueDz is a GeoMatchConstraintValue enum value 12424 GeoMatchConstraintValueDz = "DZ" 12425 12426 // GeoMatchConstraintValueAs is a GeoMatchConstraintValue enum value 12427 GeoMatchConstraintValueAs = "AS" 12428 12429 // GeoMatchConstraintValueAd is a GeoMatchConstraintValue enum value 12430 GeoMatchConstraintValueAd = "AD" 12431 12432 // GeoMatchConstraintValueAo is a GeoMatchConstraintValue enum value 12433 GeoMatchConstraintValueAo = "AO" 12434 12435 // GeoMatchConstraintValueAi is a GeoMatchConstraintValue enum value 12436 GeoMatchConstraintValueAi = "AI" 12437 12438 // GeoMatchConstraintValueAq is a GeoMatchConstraintValue enum value 12439 GeoMatchConstraintValueAq = "AQ" 12440 12441 // GeoMatchConstraintValueAg is a GeoMatchConstraintValue enum value 12442 GeoMatchConstraintValueAg = "AG" 12443 12444 // GeoMatchConstraintValueAr is a GeoMatchConstraintValue enum value 12445 GeoMatchConstraintValueAr = "AR" 12446 12447 // GeoMatchConstraintValueAm is a GeoMatchConstraintValue enum value 12448 GeoMatchConstraintValueAm = "AM" 12449 12450 // GeoMatchConstraintValueAw is a GeoMatchConstraintValue enum value 12451 GeoMatchConstraintValueAw = "AW" 12452 12453 // GeoMatchConstraintValueAu is a GeoMatchConstraintValue enum value 12454 GeoMatchConstraintValueAu = "AU" 12455 12456 // GeoMatchConstraintValueAt is a GeoMatchConstraintValue enum value 12457 GeoMatchConstraintValueAt = "AT" 12458 12459 // GeoMatchConstraintValueAz is a GeoMatchConstraintValue enum value 12460 GeoMatchConstraintValueAz = "AZ" 12461 12462 // GeoMatchConstraintValueBs is a GeoMatchConstraintValue enum value 12463 GeoMatchConstraintValueBs = "BS" 12464 12465 // GeoMatchConstraintValueBh is a GeoMatchConstraintValue enum value 12466 GeoMatchConstraintValueBh = "BH" 12467 12468 // GeoMatchConstraintValueBd is a GeoMatchConstraintValue enum value 12469 GeoMatchConstraintValueBd = "BD" 12470 12471 // GeoMatchConstraintValueBb is a GeoMatchConstraintValue enum value 12472 GeoMatchConstraintValueBb = "BB" 12473 12474 // GeoMatchConstraintValueBy is a GeoMatchConstraintValue enum value 12475 GeoMatchConstraintValueBy = "BY" 12476 12477 // GeoMatchConstraintValueBe is a GeoMatchConstraintValue enum value 12478 GeoMatchConstraintValueBe = "BE" 12479 12480 // GeoMatchConstraintValueBz is a GeoMatchConstraintValue enum value 12481 GeoMatchConstraintValueBz = "BZ" 12482 12483 // GeoMatchConstraintValueBj is a GeoMatchConstraintValue enum value 12484 GeoMatchConstraintValueBj = "BJ" 12485 12486 // GeoMatchConstraintValueBm is a GeoMatchConstraintValue enum value 12487 GeoMatchConstraintValueBm = "BM" 12488 12489 // GeoMatchConstraintValueBt is a GeoMatchConstraintValue enum value 12490 GeoMatchConstraintValueBt = "BT" 12491 12492 // GeoMatchConstraintValueBo is a GeoMatchConstraintValue enum value 12493 GeoMatchConstraintValueBo = "BO" 12494 12495 // GeoMatchConstraintValueBq is a GeoMatchConstraintValue enum value 12496 GeoMatchConstraintValueBq = "BQ" 12497 12498 // GeoMatchConstraintValueBa is a GeoMatchConstraintValue enum value 12499 GeoMatchConstraintValueBa = "BA" 12500 12501 // GeoMatchConstraintValueBw is a GeoMatchConstraintValue enum value 12502 GeoMatchConstraintValueBw = "BW" 12503 12504 // GeoMatchConstraintValueBv is a GeoMatchConstraintValue enum value 12505 GeoMatchConstraintValueBv = "BV" 12506 12507 // GeoMatchConstraintValueBr is a GeoMatchConstraintValue enum value 12508 GeoMatchConstraintValueBr = "BR" 12509 12510 // GeoMatchConstraintValueIo is a GeoMatchConstraintValue enum value 12511 GeoMatchConstraintValueIo = "IO" 12512 12513 // GeoMatchConstraintValueBn is a GeoMatchConstraintValue enum value 12514 GeoMatchConstraintValueBn = "BN" 12515 12516 // GeoMatchConstraintValueBg is a GeoMatchConstraintValue enum value 12517 GeoMatchConstraintValueBg = "BG" 12518 12519 // GeoMatchConstraintValueBf is a GeoMatchConstraintValue enum value 12520 GeoMatchConstraintValueBf = "BF" 12521 12522 // GeoMatchConstraintValueBi is a GeoMatchConstraintValue enum value 12523 GeoMatchConstraintValueBi = "BI" 12524 12525 // GeoMatchConstraintValueKh is a GeoMatchConstraintValue enum value 12526 GeoMatchConstraintValueKh = "KH" 12527 12528 // GeoMatchConstraintValueCm is a GeoMatchConstraintValue enum value 12529 GeoMatchConstraintValueCm = "CM" 12530 12531 // GeoMatchConstraintValueCa is a GeoMatchConstraintValue enum value 12532 GeoMatchConstraintValueCa = "CA" 12533 12534 // GeoMatchConstraintValueCv is a GeoMatchConstraintValue enum value 12535 GeoMatchConstraintValueCv = "CV" 12536 12537 // GeoMatchConstraintValueKy is a GeoMatchConstraintValue enum value 12538 GeoMatchConstraintValueKy = "KY" 12539 12540 // GeoMatchConstraintValueCf is a GeoMatchConstraintValue enum value 12541 GeoMatchConstraintValueCf = "CF" 12542 12543 // GeoMatchConstraintValueTd is a GeoMatchConstraintValue enum value 12544 GeoMatchConstraintValueTd = "TD" 12545 12546 // GeoMatchConstraintValueCl is a GeoMatchConstraintValue enum value 12547 GeoMatchConstraintValueCl = "CL" 12548 12549 // GeoMatchConstraintValueCn is a GeoMatchConstraintValue enum value 12550 GeoMatchConstraintValueCn = "CN" 12551 12552 // GeoMatchConstraintValueCx is a GeoMatchConstraintValue enum value 12553 GeoMatchConstraintValueCx = "CX" 12554 12555 // GeoMatchConstraintValueCc is a GeoMatchConstraintValue enum value 12556 GeoMatchConstraintValueCc = "CC" 12557 12558 // GeoMatchConstraintValueCo is a GeoMatchConstraintValue enum value 12559 GeoMatchConstraintValueCo = "CO" 12560 12561 // GeoMatchConstraintValueKm is a GeoMatchConstraintValue enum value 12562 GeoMatchConstraintValueKm = "KM" 12563 12564 // GeoMatchConstraintValueCg is a GeoMatchConstraintValue enum value 12565 GeoMatchConstraintValueCg = "CG" 12566 12567 // GeoMatchConstraintValueCd is a GeoMatchConstraintValue enum value 12568 GeoMatchConstraintValueCd = "CD" 12569 12570 // GeoMatchConstraintValueCk is a GeoMatchConstraintValue enum value 12571 GeoMatchConstraintValueCk = "CK" 12572 12573 // GeoMatchConstraintValueCr is a GeoMatchConstraintValue enum value 12574 GeoMatchConstraintValueCr = "CR" 12575 12576 // GeoMatchConstraintValueCi is a GeoMatchConstraintValue enum value 12577 GeoMatchConstraintValueCi = "CI" 12578 12579 // GeoMatchConstraintValueHr is a GeoMatchConstraintValue enum value 12580 GeoMatchConstraintValueHr = "HR" 12581 12582 // GeoMatchConstraintValueCu is a GeoMatchConstraintValue enum value 12583 GeoMatchConstraintValueCu = "CU" 12584 12585 // GeoMatchConstraintValueCw is a GeoMatchConstraintValue enum value 12586 GeoMatchConstraintValueCw = "CW" 12587 12588 // GeoMatchConstraintValueCy is a GeoMatchConstraintValue enum value 12589 GeoMatchConstraintValueCy = "CY" 12590 12591 // GeoMatchConstraintValueCz is a GeoMatchConstraintValue enum value 12592 GeoMatchConstraintValueCz = "CZ" 12593 12594 // GeoMatchConstraintValueDk is a GeoMatchConstraintValue enum value 12595 GeoMatchConstraintValueDk = "DK" 12596 12597 // GeoMatchConstraintValueDj is a GeoMatchConstraintValue enum value 12598 GeoMatchConstraintValueDj = "DJ" 12599 12600 // GeoMatchConstraintValueDm is a GeoMatchConstraintValue enum value 12601 GeoMatchConstraintValueDm = "DM" 12602 12603 // GeoMatchConstraintValueDo is a GeoMatchConstraintValue enum value 12604 GeoMatchConstraintValueDo = "DO" 12605 12606 // GeoMatchConstraintValueEc is a GeoMatchConstraintValue enum value 12607 GeoMatchConstraintValueEc = "EC" 12608 12609 // GeoMatchConstraintValueEg is a GeoMatchConstraintValue enum value 12610 GeoMatchConstraintValueEg = "EG" 12611 12612 // GeoMatchConstraintValueSv is a GeoMatchConstraintValue enum value 12613 GeoMatchConstraintValueSv = "SV" 12614 12615 // GeoMatchConstraintValueGq is a GeoMatchConstraintValue enum value 12616 GeoMatchConstraintValueGq = "GQ" 12617 12618 // GeoMatchConstraintValueEr is a GeoMatchConstraintValue enum value 12619 GeoMatchConstraintValueEr = "ER" 12620 12621 // GeoMatchConstraintValueEe is a GeoMatchConstraintValue enum value 12622 GeoMatchConstraintValueEe = "EE" 12623 12624 // GeoMatchConstraintValueEt is a GeoMatchConstraintValue enum value 12625 GeoMatchConstraintValueEt = "ET" 12626 12627 // GeoMatchConstraintValueFk is a GeoMatchConstraintValue enum value 12628 GeoMatchConstraintValueFk = "FK" 12629 12630 // GeoMatchConstraintValueFo is a GeoMatchConstraintValue enum value 12631 GeoMatchConstraintValueFo = "FO" 12632 12633 // GeoMatchConstraintValueFj is a GeoMatchConstraintValue enum value 12634 GeoMatchConstraintValueFj = "FJ" 12635 12636 // GeoMatchConstraintValueFi is a GeoMatchConstraintValue enum value 12637 GeoMatchConstraintValueFi = "FI" 12638 12639 // GeoMatchConstraintValueFr is a GeoMatchConstraintValue enum value 12640 GeoMatchConstraintValueFr = "FR" 12641 12642 // GeoMatchConstraintValueGf is a GeoMatchConstraintValue enum value 12643 GeoMatchConstraintValueGf = "GF" 12644 12645 // GeoMatchConstraintValuePf is a GeoMatchConstraintValue enum value 12646 GeoMatchConstraintValuePf = "PF" 12647 12648 // GeoMatchConstraintValueTf is a GeoMatchConstraintValue enum value 12649 GeoMatchConstraintValueTf = "TF" 12650 12651 // GeoMatchConstraintValueGa is a GeoMatchConstraintValue enum value 12652 GeoMatchConstraintValueGa = "GA" 12653 12654 // GeoMatchConstraintValueGm is a GeoMatchConstraintValue enum value 12655 GeoMatchConstraintValueGm = "GM" 12656 12657 // GeoMatchConstraintValueGe is a GeoMatchConstraintValue enum value 12658 GeoMatchConstraintValueGe = "GE" 12659 12660 // GeoMatchConstraintValueDe is a GeoMatchConstraintValue enum value 12661 GeoMatchConstraintValueDe = "DE" 12662 12663 // GeoMatchConstraintValueGh is a GeoMatchConstraintValue enum value 12664 GeoMatchConstraintValueGh = "GH" 12665 12666 // GeoMatchConstraintValueGi is a GeoMatchConstraintValue enum value 12667 GeoMatchConstraintValueGi = "GI" 12668 12669 // GeoMatchConstraintValueGr is a GeoMatchConstraintValue enum value 12670 GeoMatchConstraintValueGr = "GR" 12671 12672 // GeoMatchConstraintValueGl is a GeoMatchConstraintValue enum value 12673 GeoMatchConstraintValueGl = "GL" 12674 12675 // GeoMatchConstraintValueGd is a GeoMatchConstraintValue enum value 12676 GeoMatchConstraintValueGd = "GD" 12677 12678 // GeoMatchConstraintValueGp is a GeoMatchConstraintValue enum value 12679 GeoMatchConstraintValueGp = "GP" 12680 12681 // GeoMatchConstraintValueGu is a GeoMatchConstraintValue enum value 12682 GeoMatchConstraintValueGu = "GU" 12683 12684 // GeoMatchConstraintValueGt is a GeoMatchConstraintValue enum value 12685 GeoMatchConstraintValueGt = "GT" 12686 12687 // GeoMatchConstraintValueGg is a GeoMatchConstraintValue enum value 12688 GeoMatchConstraintValueGg = "GG" 12689 12690 // GeoMatchConstraintValueGn is a GeoMatchConstraintValue enum value 12691 GeoMatchConstraintValueGn = "GN" 12692 12693 // GeoMatchConstraintValueGw is a GeoMatchConstraintValue enum value 12694 GeoMatchConstraintValueGw = "GW" 12695 12696 // GeoMatchConstraintValueGy is a GeoMatchConstraintValue enum value 12697 GeoMatchConstraintValueGy = "GY" 12698 12699 // GeoMatchConstraintValueHt is a GeoMatchConstraintValue enum value 12700 GeoMatchConstraintValueHt = "HT" 12701 12702 // GeoMatchConstraintValueHm is a GeoMatchConstraintValue enum value 12703 GeoMatchConstraintValueHm = "HM" 12704 12705 // GeoMatchConstraintValueVa is a GeoMatchConstraintValue enum value 12706 GeoMatchConstraintValueVa = "VA" 12707 12708 // GeoMatchConstraintValueHn is a GeoMatchConstraintValue enum value 12709 GeoMatchConstraintValueHn = "HN" 12710 12711 // GeoMatchConstraintValueHk is a GeoMatchConstraintValue enum value 12712 GeoMatchConstraintValueHk = "HK" 12713 12714 // GeoMatchConstraintValueHu is a GeoMatchConstraintValue enum value 12715 GeoMatchConstraintValueHu = "HU" 12716 12717 // GeoMatchConstraintValueIs is a GeoMatchConstraintValue enum value 12718 GeoMatchConstraintValueIs = "IS" 12719 12720 // GeoMatchConstraintValueIn is a GeoMatchConstraintValue enum value 12721 GeoMatchConstraintValueIn = "IN" 12722 12723 // GeoMatchConstraintValueId is a GeoMatchConstraintValue enum value 12724 GeoMatchConstraintValueId = "ID" 12725 12726 // GeoMatchConstraintValueIr is a GeoMatchConstraintValue enum value 12727 GeoMatchConstraintValueIr = "IR" 12728 12729 // GeoMatchConstraintValueIq is a GeoMatchConstraintValue enum value 12730 GeoMatchConstraintValueIq = "IQ" 12731 12732 // GeoMatchConstraintValueIe is a GeoMatchConstraintValue enum value 12733 GeoMatchConstraintValueIe = "IE" 12734 12735 // GeoMatchConstraintValueIm is a GeoMatchConstraintValue enum value 12736 GeoMatchConstraintValueIm = "IM" 12737 12738 // GeoMatchConstraintValueIl is a GeoMatchConstraintValue enum value 12739 GeoMatchConstraintValueIl = "IL" 12740 12741 // GeoMatchConstraintValueIt is a GeoMatchConstraintValue enum value 12742 GeoMatchConstraintValueIt = "IT" 12743 12744 // GeoMatchConstraintValueJm is a GeoMatchConstraintValue enum value 12745 GeoMatchConstraintValueJm = "JM" 12746 12747 // GeoMatchConstraintValueJp is a GeoMatchConstraintValue enum value 12748 GeoMatchConstraintValueJp = "JP" 12749 12750 // GeoMatchConstraintValueJe is a GeoMatchConstraintValue enum value 12751 GeoMatchConstraintValueJe = "JE" 12752 12753 // GeoMatchConstraintValueJo is a GeoMatchConstraintValue enum value 12754 GeoMatchConstraintValueJo = "JO" 12755 12756 // GeoMatchConstraintValueKz is a GeoMatchConstraintValue enum value 12757 GeoMatchConstraintValueKz = "KZ" 12758 12759 // GeoMatchConstraintValueKe is a GeoMatchConstraintValue enum value 12760 GeoMatchConstraintValueKe = "KE" 12761 12762 // GeoMatchConstraintValueKi is a GeoMatchConstraintValue enum value 12763 GeoMatchConstraintValueKi = "KI" 12764 12765 // GeoMatchConstraintValueKp is a GeoMatchConstraintValue enum value 12766 GeoMatchConstraintValueKp = "KP" 12767 12768 // GeoMatchConstraintValueKr is a GeoMatchConstraintValue enum value 12769 GeoMatchConstraintValueKr = "KR" 12770 12771 // GeoMatchConstraintValueKw is a GeoMatchConstraintValue enum value 12772 GeoMatchConstraintValueKw = "KW" 12773 12774 // GeoMatchConstraintValueKg is a GeoMatchConstraintValue enum value 12775 GeoMatchConstraintValueKg = "KG" 12776 12777 // GeoMatchConstraintValueLa is a GeoMatchConstraintValue enum value 12778 GeoMatchConstraintValueLa = "LA" 12779 12780 // GeoMatchConstraintValueLv is a GeoMatchConstraintValue enum value 12781 GeoMatchConstraintValueLv = "LV" 12782 12783 // GeoMatchConstraintValueLb is a GeoMatchConstraintValue enum value 12784 GeoMatchConstraintValueLb = "LB" 12785 12786 // GeoMatchConstraintValueLs is a GeoMatchConstraintValue enum value 12787 GeoMatchConstraintValueLs = "LS" 12788 12789 // GeoMatchConstraintValueLr is a GeoMatchConstraintValue enum value 12790 GeoMatchConstraintValueLr = "LR" 12791 12792 // GeoMatchConstraintValueLy is a GeoMatchConstraintValue enum value 12793 GeoMatchConstraintValueLy = "LY" 12794 12795 // GeoMatchConstraintValueLi is a GeoMatchConstraintValue enum value 12796 GeoMatchConstraintValueLi = "LI" 12797 12798 // GeoMatchConstraintValueLt is a GeoMatchConstraintValue enum value 12799 GeoMatchConstraintValueLt = "LT" 12800 12801 // GeoMatchConstraintValueLu is a GeoMatchConstraintValue enum value 12802 GeoMatchConstraintValueLu = "LU" 12803 12804 // GeoMatchConstraintValueMo is a GeoMatchConstraintValue enum value 12805 GeoMatchConstraintValueMo = "MO" 12806 12807 // GeoMatchConstraintValueMk is a GeoMatchConstraintValue enum value 12808 GeoMatchConstraintValueMk = "MK" 12809 12810 // GeoMatchConstraintValueMg is a GeoMatchConstraintValue enum value 12811 GeoMatchConstraintValueMg = "MG" 12812 12813 // GeoMatchConstraintValueMw is a GeoMatchConstraintValue enum value 12814 GeoMatchConstraintValueMw = "MW" 12815 12816 // GeoMatchConstraintValueMy is a GeoMatchConstraintValue enum value 12817 GeoMatchConstraintValueMy = "MY" 12818 12819 // GeoMatchConstraintValueMv is a GeoMatchConstraintValue enum value 12820 GeoMatchConstraintValueMv = "MV" 12821 12822 // GeoMatchConstraintValueMl is a GeoMatchConstraintValue enum value 12823 GeoMatchConstraintValueMl = "ML" 12824 12825 // GeoMatchConstraintValueMt is a GeoMatchConstraintValue enum value 12826 GeoMatchConstraintValueMt = "MT" 12827 12828 // GeoMatchConstraintValueMh is a GeoMatchConstraintValue enum value 12829 GeoMatchConstraintValueMh = "MH" 12830 12831 // GeoMatchConstraintValueMq is a GeoMatchConstraintValue enum value 12832 GeoMatchConstraintValueMq = "MQ" 12833 12834 // GeoMatchConstraintValueMr is a GeoMatchConstraintValue enum value 12835 GeoMatchConstraintValueMr = "MR" 12836 12837 // GeoMatchConstraintValueMu is a GeoMatchConstraintValue enum value 12838 GeoMatchConstraintValueMu = "MU" 12839 12840 // GeoMatchConstraintValueYt is a GeoMatchConstraintValue enum value 12841 GeoMatchConstraintValueYt = "YT" 12842 12843 // GeoMatchConstraintValueMx is a GeoMatchConstraintValue enum value 12844 GeoMatchConstraintValueMx = "MX" 12845 12846 // GeoMatchConstraintValueFm is a GeoMatchConstraintValue enum value 12847 GeoMatchConstraintValueFm = "FM" 12848 12849 // GeoMatchConstraintValueMd is a GeoMatchConstraintValue enum value 12850 GeoMatchConstraintValueMd = "MD" 12851 12852 // GeoMatchConstraintValueMc is a GeoMatchConstraintValue enum value 12853 GeoMatchConstraintValueMc = "MC" 12854 12855 // GeoMatchConstraintValueMn is a GeoMatchConstraintValue enum value 12856 GeoMatchConstraintValueMn = "MN" 12857 12858 // GeoMatchConstraintValueMe is a GeoMatchConstraintValue enum value 12859 GeoMatchConstraintValueMe = "ME" 12860 12861 // GeoMatchConstraintValueMs is a GeoMatchConstraintValue enum value 12862 GeoMatchConstraintValueMs = "MS" 12863 12864 // GeoMatchConstraintValueMa is a GeoMatchConstraintValue enum value 12865 GeoMatchConstraintValueMa = "MA" 12866 12867 // GeoMatchConstraintValueMz is a GeoMatchConstraintValue enum value 12868 GeoMatchConstraintValueMz = "MZ" 12869 12870 // GeoMatchConstraintValueMm is a GeoMatchConstraintValue enum value 12871 GeoMatchConstraintValueMm = "MM" 12872 12873 // GeoMatchConstraintValueNa is a GeoMatchConstraintValue enum value 12874 GeoMatchConstraintValueNa = "NA" 12875 12876 // GeoMatchConstraintValueNr is a GeoMatchConstraintValue enum value 12877 GeoMatchConstraintValueNr = "NR" 12878 12879 // GeoMatchConstraintValueNp is a GeoMatchConstraintValue enum value 12880 GeoMatchConstraintValueNp = "NP" 12881 12882 // GeoMatchConstraintValueNl is a GeoMatchConstraintValue enum value 12883 GeoMatchConstraintValueNl = "NL" 12884 12885 // GeoMatchConstraintValueNc is a GeoMatchConstraintValue enum value 12886 GeoMatchConstraintValueNc = "NC" 12887 12888 // GeoMatchConstraintValueNz is a GeoMatchConstraintValue enum value 12889 GeoMatchConstraintValueNz = "NZ" 12890 12891 // GeoMatchConstraintValueNi is a GeoMatchConstraintValue enum value 12892 GeoMatchConstraintValueNi = "NI" 12893 12894 // GeoMatchConstraintValueNe is a GeoMatchConstraintValue enum value 12895 GeoMatchConstraintValueNe = "NE" 12896 12897 // GeoMatchConstraintValueNg is a GeoMatchConstraintValue enum value 12898 GeoMatchConstraintValueNg = "NG" 12899 12900 // GeoMatchConstraintValueNu is a GeoMatchConstraintValue enum value 12901 GeoMatchConstraintValueNu = "NU" 12902 12903 // GeoMatchConstraintValueNf is a GeoMatchConstraintValue enum value 12904 GeoMatchConstraintValueNf = "NF" 12905 12906 // GeoMatchConstraintValueMp is a GeoMatchConstraintValue enum value 12907 GeoMatchConstraintValueMp = "MP" 12908 12909 // GeoMatchConstraintValueNo is a GeoMatchConstraintValue enum value 12910 GeoMatchConstraintValueNo = "NO" 12911 12912 // GeoMatchConstraintValueOm is a GeoMatchConstraintValue enum value 12913 GeoMatchConstraintValueOm = "OM" 12914 12915 // GeoMatchConstraintValuePk is a GeoMatchConstraintValue enum value 12916 GeoMatchConstraintValuePk = "PK" 12917 12918 // GeoMatchConstraintValuePw is a GeoMatchConstraintValue enum value 12919 GeoMatchConstraintValuePw = "PW" 12920 12921 // GeoMatchConstraintValuePs is a GeoMatchConstraintValue enum value 12922 GeoMatchConstraintValuePs = "PS" 12923 12924 // GeoMatchConstraintValuePa is a GeoMatchConstraintValue enum value 12925 GeoMatchConstraintValuePa = "PA" 12926 12927 // GeoMatchConstraintValuePg is a GeoMatchConstraintValue enum value 12928 GeoMatchConstraintValuePg = "PG" 12929 12930 // GeoMatchConstraintValuePy is a GeoMatchConstraintValue enum value 12931 GeoMatchConstraintValuePy = "PY" 12932 12933 // GeoMatchConstraintValuePe is a GeoMatchConstraintValue enum value 12934 GeoMatchConstraintValuePe = "PE" 12935 12936 // GeoMatchConstraintValuePh is a GeoMatchConstraintValue enum value 12937 GeoMatchConstraintValuePh = "PH" 12938 12939 // GeoMatchConstraintValuePn is a GeoMatchConstraintValue enum value 12940 GeoMatchConstraintValuePn = "PN" 12941 12942 // GeoMatchConstraintValuePl is a GeoMatchConstraintValue enum value 12943 GeoMatchConstraintValuePl = "PL" 12944 12945 // GeoMatchConstraintValuePt is a GeoMatchConstraintValue enum value 12946 GeoMatchConstraintValuePt = "PT" 12947 12948 // GeoMatchConstraintValuePr is a GeoMatchConstraintValue enum value 12949 GeoMatchConstraintValuePr = "PR" 12950 12951 // GeoMatchConstraintValueQa is a GeoMatchConstraintValue enum value 12952 GeoMatchConstraintValueQa = "QA" 12953 12954 // GeoMatchConstraintValueRe is a GeoMatchConstraintValue enum value 12955 GeoMatchConstraintValueRe = "RE" 12956 12957 // GeoMatchConstraintValueRo is a GeoMatchConstraintValue enum value 12958 GeoMatchConstraintValueRo = "RO" 12959 12960 // GeoMatchConstraintValueRu is a GeoMatchConstraintValue enum value 12961 GeoMatchConstraintValueRu = "RU" 12962 12963 // GeoMatchConstraintValueRw is a GeoMatchConstraintValue enum value 12964 GeoMatchConstraintValueRw = "RW" 12965 12966 // GeoMatchConstraintValueBl is a GeoMatchConstraintValue enum value 12967 GeoMatchConstraintValueBl = "BL" 12968 12969 // GeoMatchConstraintValueSh is a GeoMatchConstraintValue enum value 12970 GeoMatchConstraintValueSh = "SH" 12971 12972 // GeoMatchConstraintValueKn is a GeoMatchConstraintValue enum value 12973 GeoMatchConstraintValueKn = "KN" 12974 12975 // GeoMatchConstraintValueLc is a GeoMatchConstraintValue enum value 12976 GeoMatchConstraintValueLc = "LC" 12977 12978 // GeoMatchConstraintValueMf is a GeoMatchConstraintValue enum value 12979 GeoMatchConstraintValueMf = "MF" 12980 12981 // GeoMatchConstraintValuePm is a GeoMatchConstraintValue enum value 12982 GeoMatchConstraintValuePm = "PM" 12983 12984 // GeoMatchConstraintValueVc is a GeoMatchConstraintValue enum value 12985 GeoMatchConstraintValueVc = "VC" 12986 12987 // GeoMatchConstraintValueWs is a GeoMatchConstraintValue enum value 12988 GeoMatchConstraintValueWs = "WS" 12989 12990 // GeoMatchConstraintValueSm is a GeoMatchConstraintValue enum value 12991 GeoMatchConstraintValueSm = "SM" 12992 12993 // GeoMatchConstraintValueSt is a GeoMatchConstraintValue enum value 12994 GeoMatchConstraintValueSt = "ST" 12995 12996 // GeoMatchConstraintValueSa is a GeoMatchConstraintValue enum value 12997 GeoMatchConstraintValueSa = "SA" 12998 12999 // GeoMatchConstraintValueSn is a GeoMatchConstraintValue enum value 13000 GeoMatchConstraintValueSn = "SN" 13001 13002 // GeoMatchConstraintValueRs is a GeoMatchConstraintValue enum value 13003 GeoMatchConstraintValueRs = "RS" 13004 13005 // GeoMatchConstraintValueSc is a GeoMatchConstraintValue enum value 13006 GeoMatchConstraintValueSc = "SC" 13007 13008 // GeoMatchConstraintValueSl is a GeoMatchConstraintValue enum value 13009 GeoMatchConstraintValueSl = "SL" 13010 13011 // GeoMatchConstraintValueSg is a GeoMatchConstraintValue enum value 13012 GeoMatchConstraintValueSg = "SG" 13013 13014 // GeoMatchConstraintValueSx is a GeoMatchConstraintValue enum value 13015 GeoMatchConstraintValueSx = "SX" 13016 13017 // GeoMatchConstraintValueSk is a GeoMatchConstraintValue enum value 13018 GeoMatchConstraintValueSk = "SK" 13019 13020 // GeoMatchConstraintValueSi is a GeoMatchConstraintValue enum value 13021 GeoMatchConstraintValueSi = "SI" 13022 13023 // GeoMatchConstraintValueSb is a GeoMatchConstraintValue enum value 13024 GeoMatchConstraintValueSb = "SB" 13025 13026 // GeoMatchConstraintValueSo is a GeoMatchConstraintValue enum value 13027 GeoMatchConstraintValueSo = "SO" 13028 13029 // GeoMatchConstraintValueZa is a GeoMatchConstraintValue enum value 13030 GeoMatchConstraintValueZa = "ZA" 13031 13032 // GeoMatchConstraintValueGs is a GeoMatchConstraintValue enum value 13033 GeoMatchConstraintValueGs = "GS" 13034 13035 // GeoMatchConstraintValueSs is a GeoMatchConstraintValue enum value 13036 GeoMatchConstraintValueSs = "SS" 13037 13038 // GeoMatchConstraintValueEs is a GeoMatchConstraintValue enum value 13039 GeoMatchConstraintValueEs = "ES" 13040 13041 // GeoMatchConstraintValueLk is a GeoMatchConstraintValue enum value 13042 GeoMatchConstraintValueLk = "LK" 13043 13044 // GeoMatchConstraintValueSd is a GeoMatchConstraintValue enum value 13045 GeoMatchConstraintValueSd = "SD" 13046 13047 // GeoMatchConstraintValueSr is a GeoMatchConstraintValue enum value 13048 GeoMatchConstraintValueSr = "SR" 13049 13050 // GeoMatchConstraintValueSj is a GeoMatchConstraintValue enum value 13051 GeoMatchConstraintValueSj = "SJ" 13052 13053 // GeoMatchConstraintValueSz is a GeoMatchConstraintValue enum value 13054 GeoMatchConstraintValueSz = "SZ" 13055 13056 // GeoMatchConstraintValueSe is a GeoMatchConstraintValue enum value 13057 GeoMatchConstraintValueSe = "SE" 13058 13059 // GeoMatchConstraintValueCh is a GeoMatchConstraintValue enum value 13060 GeoMatchConstraintValueCh = "CH" 13061 13062 // GeoMatchConstraintValueSy is a GeoMatchConstraintValue enum value 13063 GeoMatchConstraintValueSy = "SY" 13064 13065 // GeoMatchConstraintValueTw is a GeoMatchConstraintValue enum value 13066 GeoMatchConstraintValueTw = "TW" 13067 13068 // GeoMatchConstraintValueTj is a GeoMatchConstraintValue enum value 13069 GeoMatchConstraintValueTj = "TJ" 13070 13071 // GeoMatchConstraintValueTz is a GeoMatchConstraintValue enum value 13072 GeoMatchConstraintValueTz = "TZ" 13073 13074 // GeoMatchConstraintValueTh is a GeoMatchConstraintValue enum value 13075 GeoMatchConstraintValueTh = "TH" 13076 13077 // GeoMatchConstraintValueTl is a GeoMatchConstraintValue enum value 13078 GeoMatchConstraintValueTl = "TL" 13079 13080 // GeoMatchConstraintValueTg is a GeoMatchConstraintValue enum value 13081 GeoMatchConstraintValueTg = "TG" 13082 13083 // GeoMatchConstraintValueTk is a GeoMatchConstraintValue enum value 13084 GeoMatchConstraintValueTk = "TK" 13085 13086 // GeoMatchConstraintValueTo is a GeoMatchConstraintValue enum value 13087 GeoMatchConstraintValueTo = "TO" 13088 13089 // GeoMatchConstraintValueTt is a GeoMatchConstraintValue enum value 13090 GeoMatchConstraintValueTt = "TT" 13091 13092 // GeoMatchConstraintValueTn is a GeoMatchConstraintValue enum value 13093 GeoMatchConstraintValueTn = "TN" 13094 13095 // GeoMatchConstraintValueTr is a GeoMatchConstraintValue enum value 13096 GeoMatchConstraintValueTr = "TR" 13097 13098 // GeoMatchConstraintValueTm is a GeoMatchConstraintValue enum value 13099 GeoMatchConstraintValueTm = "TM" 13100 13101 // GeoMatchConstraintValueTc is a GeoMatchConstraintValue enum value 13102 GeoMatchConstraintValueTc = "TC" 13103 13104 // GeoMatchConstraintValueTv is a GeoMatchConstraintValue enum value 13105 GeoMatchConstraintValueTv = "TV" 13106 13107 // GeoMatchConstraintValueUg is a GeoMatchConstraintValue enum value 13108 GeoMatchConstraintValueUg = "UG" 13109 13110 // GeoMatchConstraintValueUa is a GeoMatchConstraintValue enum value 13111 GeoMatchConstraintValueUa = "UA" 13112 13113 // GeoMatchConstraintValueAe is a GeoMatchConstraintValue enum value 13114 GeoMatchConstraintValueAe = "AE" 13115 13116 // GeoMatchConstraintValueGb is a GeoMatchConstraintValue enum value 13117 GeoMatchConstraintValueGb = "GB" 13118 13119 // GeoMatchConstraintValueUs is a GeoMatchConstraintValue enum value 13120 GeoMatchConstraintValueUs = "US" 13121 13122 // GeoMatchConstraintValueUm is a GeoMatchConstraintValue enum value 13123 GeoMatchConstraintValueUm = "UM" 13124 13125 // GeoMatchConstraintValueUy is a GeoMatchConstraintValue enum value 13126 GeoMatchConstraintValueUy = "UY" 13127 13128 // GeoMatchConstraintValueUz is a GeoMatchConstraintValue enum value 13129 GeoMatchConstraintValueUz = "UZ" 13130 13131 // GeoMatchConstraintValueVu is a GeoMatchConstraintValue enum value 13132 GeoMatchConstraintValueVu = "VU" 13133 13134 // GeoMatchConstraintValueVe is a GeoMatchConstraintValue enum value 13135 GeoMatchConstraintValueVe = "VE" 13136 13137 // GeoMatchConstraintValueVn is a GeoMatchConstraintValue enum value 13138 GeoMatchConstraintValueVn = "VN" 13139 13140 // GeoMatchConstraintValueVg is a GeoMatchConstraintValue enum value 13141 GeoMatchConstraintValueVg = "VG" 13142 13143 // GeoMatchConstraintValueVi is a GeoMatchConstraintValue enum value 13144 GeoMatchConstraintValueVi = "VI" 13145 13146 // GeoMatchConstraintValueWf is a GeoMatchConstraintValue enum value 13147 GeoMatchConstraintValueWf = "WF" 13148 13149 // GeoMatchConstraintValueEh is a GeoMatchConstraintValue enum value 13150 GeoMatchConstraintValueEh = "EH" 13151 13152 // GeoMatchConstraintValueYe is a GeoMatchConstraintValue enum value 13153 GeoMatchConstraintValueYe = "YE" 13154 13155 // GeoMatchConstraintValueZm is a GeoMatchConstraintValue enum value 13156 GeoMatchConstraintValueZm = "ZM" 13157 13158 // GeoMatchConstraintValueZw is a GeoMatchConstraintValue enum value 13159 GeoMatchConstraintValueZw = "ZW" 13160) 13161 13162// GeoMatchConstraintValue_Values returns all elements of the GeoMatchConstraintValue enum 13163func GeoMatchConstraintValue_Values() []string { 13164 return []string{ 13165 GeoMatchConstraintValueAf, 13166 GeoMatchConstraintValueAx, 13167 GeoMatchConstraintValueAl, 13168 GeoMatchConstraintValueDz, 13169 GeoMatchConstraintValueAs, 13170 GeoMatchConstraintValueAd, 13171 GeoMatchConstraintValueAo, 13172 GeoMatchConstraintValueAi, 13173 GeoMatchConstraintValueAq, 13174 GeoMatchConstraintValueAg, 13175 GeoMatchConstraintValueAr, 13176 GeoMatchConstraintValueAm, 13177 GeoMatchConstraintValueAw, 13178 GeoMatchConstraintValueAu, 13179 GeoMatchConstraintValueAt, 13180 GeoMatchConstraintValueAz, 13181 GeoMatchConstraintValueBs, 13182 GeoMatchConstraintValueBh, 13183 GeoMatchConstraintValueBd, 13184 GeoMatchConstraintValueBb, 13185 GeoMatchConstraintValueBy, 13186 GeoMatchConstraintValueBe, 13187 GeoMatchConstraintValueBz, 13188 GeoMatchConstraintValueBj, 13189 GeoMatchConstraintValueBm, 13190 GeoMatchConstraintValueBt, 13191 GeoMatchConstraintValueBo, 13192 GeoMatchConstraintValueBq, 13193 GeoMatchConstraintValueBa, 13194 GeoMatchConstraintValueBw, 13195 GeoMatchConstraintValueBv, 13196 GeoMatchConstraintValueBr, 13197 GeoMatchConstraintValueIo, 13198 GeoMatchConstraintValueBn, 13199 GeoMatchConstraintValueBg, 13200 GeoMatchConstraintValueBf, 13201 GeoMatchConstraintValueBi, 13202 GeoMatchConstraintValueKh, 13203 GeoMatchConstraintValueCm, 13204 GeoMatchConstraintValueCa, 13205 GeoMatchConstraintValueCv, 13206 GeoMatchConstraintValueKy, 13207 GeoMatchConstraintValueCf, 13208 GeoMatchConstraintValueTd, 13209 GeoMatchConstraintValueCl, 13210 GeoMatchConstraintValueCn, 13211 GeoMatchConstraintValueCx, 13212 GeoMatchConstraintValueCc, 13213 GeoMatchConstraintValueCo, 13214 GeoMatchConstraintValueKm, 13215 GeoMatchConstraintValueCg, 13216 GeoMatchConstraintValueCd, 13217 GeoMatchConstraintValueCk, 13218 GeoMatchConstraintValueCr, 13219 GeoMatchConstraintValueCi, 13220 GeoMatchConstraintValueHr, 13221 GeoMatchConstraintValueCu, 13222 GeoMatchConstraintValueCw, 13223 GeoMatchConstraintValueCy, 13224 GeoMatchConstraintValueCz, 13225 GeoMatchConstraintValueDk, 13226 GeoMatchConstraintValueDj, 13227 GeoMatchConstraintValueDm, 13228 GeoMatchConstraintValueDo, 13229 GeoMatchConstraintValueEc, 13230 GeoMatchConstraintValueEg, 13231 GeoMatchConstraintValueSv, 13232 GeoMatchConstraintValueGq, 13233 GeoMatchConstraintValueEr, 13234 GeoMatchConstraintValueEe, 13235 GeoMatchConstraintValueEt, 13236 GeoMatchConstraintValueFk, 13237 GeoMatchConstraintValueFo, 13238 GeoMatchConstraintValueFj, 13239 GeoMatchConstraintValueFi, 13240 GeoMatchConstraintValueFr, 13241 GeoMatchConstraintValueGf, 13242 GeoMatchConstraintValuePf, 13243 GeoMatchConstraintValueTf, 13244 GeoMatchConstraintValueGa, 13245 GeoMatchConstraintValueGm, 13246 GeoMatchConstraintValueGe, 13247 GeoMatchConstraintValueDe, 13248 GeoMatchConstraintValueGh, 13249 GeoMatchConstraintValueGi, 13250 GeoMatchConstraintValueGr, 13251 GeoMatchConstraintValueGl, 13252 GeoMatchConstraintValueGd, 13253 GeoMatchConstraintValueGp, 13254 GeoMatchConstraintValueGu, 13255 GeoMatchConstraintValueGt, 13256 GeoMatchConstraintValueGg, 13257 GeoMatchConstraintValueGn, 13258 GeoMatchConstraintValueGw, 13259 GeoMatchConstraintValueGy, 13260 GeoMatchConstraintValueHt, 13261 GeoMatchConstraintValueHm, 13262 GeoMatchConstraintValueVa, 13263 GeoMatchConstraintValueHn, 13264 GeoMatchConstraintValueHk, 13265 GeoMatchConstraintValueHu, 13266 GeoMatchConstraintValueIs, 13267 GeoMatchConstraintValueIn, 13268 GeoMatchConstraintValueId, 13269 GeoMatchConstraintValueIr, 13270 GeoMatchConstraintValueIq, 13271 GeoMatchConstraintValueIe, 13272 GeoMatchConstraintValueIm, 13273 GeoMatchConstraintValueIl, 13274 GeoMatchConstraintValueIt, 13275 GeoMatchConstraintValueJm, 13276 GeoMatchConstraintValueJp, 13277 GeoMatchConstraintValueJe, 13278 GeoMatchConstraintValueJo, 13279 GeoMatchConstraintValueKz, 13280 GeoMatchConstraintValueKe, 13281 GeoMatchConstraintValueKi, 13282 GeoMatchConstraintValueKp, 13283 GeoMatchConstraintValueKr, 13284 GeoMatchConstraintValueKw, 13285 GeoMatchConstraintValueKg, 13286 GeoMatchConstraintValueLa, 13287 GeoMatchConstraintValueLv, 13288 GeoMatchConstraintValueLb, 13289 GeoMatchConstraintValueLs, 13290 GeoMatchConstraintValueLr, 13291 GeoMatchConstraintValueLy, 13292 GeoMatchConstraintValueLi, 13293 GeoMatchConstraintValueLt, 13294 GeoMatchConstraintValueLu, 13295 GeoMatchConstraintValueMo, 13296 GeoMatchConstraintValueMk, 13297 GeoMatchConstraintValueMg, 13298 GeoMatchConstraintValueMw, 13299 GeoMatchConstraintValueMy, 13300 GeoMatchConstraintValueMv, 13301 GeoMatchConstraintValueMl, 13302 GeoMatchConstraintValueMt, 13303 GeoMatchConstraintValueMh, 13304 GeoMatchConstraintValueMq, 13305 GeoMatchConstraintValueMr, 13306 GeoMatchConstraintValueMu, 13307 GeoMatchConstraintValueYt, 13308 GeoMatchConstraintValueMx, 13309 GeoMatchConstraintValueFm, 13310 GeoMatchConstraintValueMd, 13311 GeoMatchConstraintValueMc, 13312 GeoMatchConstraintValueMn, 13313 GeoMatchConstraintValueMe, 13314 GeoMatchConstraintValueMs, 13315 GeoMatchConstraintValueMa, 13316 GeoMatchConstraintValueMz, 13317 GeoMatchConstraintValueMm, 13318 GeoMatchConstraintValueNa, 13319 GeoMatchConstraintValueNr, 13320 GeoMatchConstraintValueNp, 13321 GeoMatchConstraintValueNl, 13322 GeoMatchConstraintValueNc, 13323 GeoMatchConstraintValueNz, 13324 GeoMatchConstraintValueNi, 13325 GeoMatchConstraintValueNe, 13326 GeoMatchConstraintValueNg, 13327 GeoMatchConstraintValueNu, 13328 GeoMatchConstraintValueNf, 13329 GeoMatchConstraintValueMp, 13330 GeoMatchConstraintValueNo, 13331 GeoMatchConstraintValueOm, 13332 GeoMatchConstraintValuePk, 13333 GeoMatchConstraintValuePw, 13334 GeoMatchConstraintValuePs, 13335 GeoMatchConstraintValuePa, 13336 GeoMatchConstraintValuePg, 13337 GeoMatchConstraintValuePy, 13338 GeoMatchConstraintValuePe, 13339 GeoMatchConstraintValuePh, 13340 GeoMatchConstraintValuePn, 13341 GeoMatchConstraintValuePl, 13342 GeoMatchConstraintValuePt, 13343 GeoMatchConstraintValuePr, 13344 GeoMatchConstraintValueQa, 13345 GeoMatchConstraintValueRe, 13346 GeoMatchConstraintValueRo, 13347 GeoMatchConstraintValueRu, 13348 GeoMatchConstraintValueRw, 13349 GeoMatchConstraintValueBl, 13350 GeoMatchConstraintValueSh, 13351 GeoMatchConstraintValueKn, 13352 GeoMatchConstraintValueLc, 13353 GeoMatchConstraintValueMf, 13354 GeoMatchConstraintValuePm, 13355 GeoMatchConstraintValueVc, 13356 GeoMatchConstraintValueWs, 13357 GeoMatchConstraintValueSm, 13358 GeoMatchConstraintValueSt, 13359 GeoMatchConstraintValueSa, 13360 GeoMatchConstraintValueSn, 13361 GeoMatchConstraintValueRs, 13362 GeoMatchConstraintValueSc, 13363 GeoMatchConstraintValueSl, 13364 GeoMatchConstraintValueSg, 13365 GeoMatchConstraintValueSx, 13366 GeoMatchConstraintValueSk, 13367 GeoMatchConstraintValueSi, 13368 GeoMatchConstraintValueSb, 13369 GeoMatchConstraintValueSo, 13370 GeoMatchConstraintValueZa, 13371 GeoMatchConstraintValueGs, 13372 GeoMatchConstraintValueSs, 13373 GeoMatchConstraintValueEs, 13374 GeoMatchConstraintValueLk, 13375 GeoMatchConstraintValueSd, 13376 GeoMatchConstraintValueSr, 13377 GeoMatchConstraintValueSj, 13378 GeoMatchConstraintValueSz, 13379 GeoMatchConstraintValueSe, 13380 GeoMatchConstraintValueCh, 13381 GeoMatchConstraintValueSy, 13382 GeoMatchConstraintValueTw, 13383 GeoMatchConstraintValueTj, 13384 GeoMatchConstraintValueTz, 13385 GeoMatchConstraintValueTh, 13386 GeoMatchConstraintValueTl, 13387 GeoMatchConstraintValueTg, 13388 GeoMatchConstraintValueTk, 13389 GeoMatchConstraintValueTo, 13390 GeoMatchConstraintValueTt, 13391 GeoMatchConstraintValueTn, 13392 GeoMatchConstraintValueTr, 13393 GeoMatchConstraintValueTm, 13394 GeoMatchConstraintValueTc, 13395 GeoMatchConstraintValueTv, 13396 GeoMatchConstraintValueUg, 13397 GeoMatchConstraintValueUa, 13398 GeoMatchConstraintValueAe, 13399 GeoMatchConstraintValueGb, 13400 GeoMatchConstraintValueUs, 13401 GeoMatchConstraintValueUm, 13402 GeoMatchConstraintValueUy, 13403 GeoMatchConstraintValueUz, 13404 GeoMatchConstraintValueVu, 13405 GeoMatchConstraintValueVe, 13406 GeoMatchConstraintValueVn, 13407 GeoMatchConstraintValueVg, 13408 GeoMatchConstraintValueVi, 13409 GeoMatchConstraintValueWf, 13410 GeoMatchConstraintValueEh, 13411 GeoMatchConstraintValueYe, 13412 GeoMatchConstraintValueZm, 13413 GeoMatchConstraintValueZw, 13414 } 13415} 13416 13417const ( 13418 // IPSetDescriptorTypeIpv4 is a IPSetDescriptorType enum value 13419 IPSetDescriptorTypeIpv4 = "IPV4" 13420 13421 // IPSetDescriptorTypeIpv6 is a IPSetDescriptorType enum value 13422 IPSetDescriptorTypeIpv6 = "IPV6" 13423) 13424 13425// IPSetDescriptorType_Values returns all elements of the IPSetDescriptorType enum 13426func IPSetDescriptorType_Values() []string { 13427 return []string{ 13428 IPSetDescriptorTypeIpv4, 13429 IPSetDescriptorTypeIpv6, 13430 } 13431} 13432 13433const ( 13434 // MatchFieldTypeUri is a MatchFieldType enum value 13435 MatchFieldTypeUri = "URI" 13436 13437 // MatchFieldTypeQueryString is a MatchFieldType enum value 13438 MatchFieldTypeQueryString = "QUERY_STRING" 13439 13440 // MatchFieldTypeHeader is a MatchFieldType enum value 13441 MatchFieldTypeHeader = "HEADER" 13442 13443 // MatchFieldTypeMethod is a MatchFieldType enum value 13444 MatchFieldTypeMethod = "METHOD" 13445 13446 // MatchFieldTypeBody is a MatchFieldType enum value 13447 MatchFieldTypeBody = "BODY" 13448 13449 // MatchFieldTypeSingleQueryArg is a MatchFieldType enum value 13450 MatchFieldTypeSingleQueryArg = "SINGLE_QUERY_ARG" 13451 13452 // MatchFieldTypeAllQueryArgs is a MatchFieldType enum value 13453 MatchFieldTypeAllQueryArgs = "ALL_QUERY_ARGS" 13454) 13455 13456// MatchFieldType_Values returns all elements of the MatchFieldType enum 13457func MatchFieldType_Values() []string { 13458 return []string{ 13459 MatchFieldTypeUri, 13460 MatchFieldTypeQueryString, 13461 MatchFieldTypeHeader, 13462 MatchFieldTypeMethod, 13463 MatchFieldTypeBody, 13464 MatchFieldTypeSingleQueryArg, 13465 MatchFieldTypeAllQueryArgs, 13466 } 13467} 13468 13469const ( 13470 // MigrationErrorTypeEntityNotSupported is a MigrationErrorType enum value 13471 MigrationErrorTypeEntityNotSupported = "ENTITY_NOT_SUPPORTED" 13472 13473 // MigrationErrorTypeEntityNotFound is a MigrationErrorType enum value 13474 MigrationErrorTypeEntityNotFound = "ENTITY_NOT_FOUND" 13475 13476 // MigrationErrorTypeS3BucketNoPermission is a MigrationErrorType enum value 13477 MigrationErrorTypeS3BucketNoPermission = "S3_BUCKET_NO_PERMISSION" 13478 13479 // MigrationErrorTypeS3BucketNotAccessible is a MigrationErrorType enum value 13480 MigrationErrorTypeS3BucketNotAccessible = "S3_BUCKET_NOT_ACCESSIBLE" 13481 13482 // MigrationErrorTypeS3BucketNotFound is a MigrationErrorType enum value 13483 MigrationErrorTypeS3BucketNotFound = "S3_BUCKET_NOT_FOUND" 13484 13485 // MigrationErrorTypeS3BucketInvalidRegion is a MigrationErrorType enum value 13486 MigrationErrorTypeS3BucketInvalidRegion = "S3_BUCKET_INVALID_REGION" 13487 13488 // MigrationErrorTypeS3InternalError is a MigrationErrorType enum value 13489 MigrationErrorTypeS3InternalError = "S3_INTERNAL_ERROR" 13490) 13491 13492// MigrationErrorType_Values returns all elements of the MigrationErrorType enum 13493func MigrationErrorType_Values() []string { 13494 return []string{ 13495 MigrationErrorTypeEntityNotSupported, 13496 MigrationErrorTypeEntityNotFound, 13497 MigrationErrorTypeS3BucketNoPermission, 13498 MigrationErrorTypeS3BucketNotAccessible, 13499 MigrationErrorTypeS3BucketNotFound, 13500 MigrationErrorTypeS3BucketInvalidRegion, 13501 MigrationErrorTypeS3InternalError, 13502 } 13503} 13504 13505const ( 13506 // ParameterExceptionFieldChangeAction is a ParameterExceptionField enum value 13507 ParameterExceptionFieldChangeAction = "CHANGE_ACTION" 13508 13509 // ParameterExceptionFieldWafAction is a ParameterExceptionField enum value 13510 ParameterExceptionFieldWafAction = "WAF_ACTION" 13511 13512 // ParameterExceptionFieldWafOverrideAction is a ParameterExceptionField enum value 13513 ParameterExceptionFieldWafOverrideAction = "WAF_OVERRIDE_ACTION" 13514 13515 // ParameterExceptionFieldPredicateType is a ParameterExceptionField enum value 13516 ParameterExceptionFieldPredicateType = "PREDICATE_TYPE" 13517 13518 // ParameterExceptionFieldIpsetType is a ParameterExceptionField enum value 13519 ParameterExceptionFieldIpsetType = "IPSET_TYPE" 13520 13521 // ParameterExceptionFieldByteMatchFieldType is a ParameterExceptionField enum value 13522 ParameterExceptionFieldByteMatchFieldType = "BYTE_MATCH_FIELD_TYPE" 13523 13524 // ParameterExceptionFieldSqlInjectionMatchFieldType is a ParameterExceptionField enum value 13525 ParameterExceptionFieldSqlInjectionMatchFieldType = "SQL_INJECTION_MATCH_FIELD_TYPE" 13526 13527 // ParameterExceptionFieldByteMatchTextTransformation is a ParameterExceptionField enum value 13528 ParameterExceptionFieldByteMatchTextTransformation = "BYTE_MATCH_TEXT_TRANSFORMATION" 13529 13530 // ParameterExceptionFieldByteMatchPositionalConstraint is a ParameterExceptionField enum value 13531 ParameterExceptionFieldByteMatchPositionalConstraint = "BYTE_MATCH_POSITIONAL_CONSTRAINT" 13532 13533 // ParameterExceptionFieldSizeConstraintComparisonOperator is a ParameterExceptionField enum value 13534 ParameterExceptionFieldSizeConstraintComparisonOperator = "SIZE_CONSTRAINT_COMPARISON_OPERATOR" 13535 13536 // ParameterExceptionFieldGeoMatchLocationType is a ParameterExceptionField enum value 13537 ParameterExceptionFieldGeoMatchLocationType = "GEO_MATCH_LOCATION_TYPE" 13538 13539 // ParameterExceptionFieldGeoMatchLocationValue is a ParameterExceptionField enum value 13540 ParameterExceptionFieldGeoMatchLocationValue = "GEO_MATCH_LOCATION_VALUE" 13541 13542 // ParameterExceptionFieldRateKey is a ParameterExceptionField enum value 13543 ParameterExceptionFieldRateKey = "RATE_KEY" 13544 13545 // ParameterExceptionFieldRuleType is a ParameterExceptionField enum value 13546 ParameterExceptionFieldRuleType = "RULE_TYPE" 13547 13548 // ParameterExceptionFieldNextMarker is a ParameterExceptionField enum value 13549 ParameterExceptionFieldNextMarker = "NEXT_MARKER" 13550 13551 // ParameterExceptionFieldResourceArn is a ParameterExceptionField enum value 13552 ParameterExceptionFieldResourceArn = "RESOURCE_ARN" 13553 13554 // ParameterExceptionFieldTags is a ParameterExceptionField enum value 13555 ParameterExceptionFieldTags = "TAGS" 13556 13557 // ParameterExceptionFieldTagKeys is a ParameterExceptionField enum value 13558 ParameterExceptionFieldTagKeys = "TAG_KEYS" 13559) 13560 13561// ParameterExceptionField_Values returns all elements of the ParameterExceptionField enum 13562func ParameterExceptionField_Values() []string { 13563 return []string{ 13564 ParameterExceptionFieldChangeAction, 13565 ParameterExceptionFieldWafAction, 13566 ParameterExceptionFieldWafOverrideAction, 13567 ParameterExceptionFieldPredicateType, 13568 ParameterExceptionFieldIpsetType, 13569 ParameterExceptionFieldByteMatchFieldType, 13570 ParameterExceptionFieldSqlInjectionMatchFieldType, 13571 ParameterExceptionFieldByteMatchTextTransformation, 13572 ParameterExceptionFieldByteMatchPositionalConstraint, 13573 ParameterExceptionFieldSizeConstraintComparisonOperator, 13574 ParameterExceptionFieldGeoMatchLocationType, 13575 ParameterExceptionFieldGeoMatchLocationValue, 13576 ParameterExceptionFieldRateKey, 13577 ParameterExceptionFieldRuleType, 13578 ParameterExceptionFieldNextMarker, 13579 ParameterExceptionFieldResourceArn, 13580 ParameterExceptionFieldTags, 13581 ParameterExceptionFieldTagKeys, 13582 } 13583} 13584 13585const ( 13586 // ParameterExceptionReasonInvalidOption is a ParameterExceptionReason enum value 13587 ParameterExceptionReasonInvalidOption = "INVALID_OPTION" 13588 13589 // ParameterExceptionReasonIllegalCombination is a ParameterExceptionReason enum value 13590 ParameterExceptionReasonIllegalCombination = "ILLEGAL_COMBINATION" 13591 13592 // ParameterExceptionReasonIllegalArgument is a ParameterExceptionReason enum value 13593 ParameterExceptionReasonIllegalArgument = "ILLEGAL_ARGUMENT" 13594 13595 // ParameterExceptionReasonInvalidTagKey is a ParameterExceptionReason enum value 13596 ParameterExceptionReasonInvalidTagKey = "INVALID_TAG_KEY" 13597) 13598 13599// ParameterExceptionReason_Values returns all elements of the ParameterExceptionReason enum 13600func ParameterExceptionReason_Values() []string { 13601 return []string{ 13602 ParameterExceptionReasonInvalidOption, 13603 ParameterExceptionReasonIllegalCombination, 13604 ParameterExceptionReasonIllegalArgument, 13605 ParameterExceptionReasonInvalidTagKey, 13606 } 13607} 13608 13609const ( 13610 // PositionalConstraintExactly is a PositionalConstraint enum value 13611 PositionalConstraintExactly = "EXACTLY" 13612 13613 // PositionalConstraintStartsWith is a PositionalConstraint enum value 13614 PositionalConstraintStartsWith = "STARTS_WITH" 13615 13616 // PositionalConstraintEndsWith is a PositionalConstraint enum value 13617 PositionalConstraintEndsWith = "ENDS_WITH" 13618 13619 // PositionalConstraintContains is a PositionalConstraint enum value 13620 PositionalConstraintContains = "CONTAINS" 13621 13622 // PositionalConstraintContainsWord is a PositionalConstraint enum value 13623 PositionalConstraintContainsWord = "CONTAINS_WORD" 13624) 13625 13626// PositionalConstraint_Values returns all elements of the PositionalConstraint enum 13627func PositionalConstraint_Values() []string { 13628 return []string{ 13629 PositionalConstraintExactly, 13630 PositionalConstraintStartsWith, 13631 PositionalConstraintEndsWith, 13632 PositionalConstraintContains, 13633 PositionalConstraintContainsWord, 13634 } 13635} 13636 13637const ( 13638 // PredicateTypeIpmatch is a PredicateType enum value 13639 PredicateTypeIpmatch = "IPMatch" 13640 13641 // PredicateTypeByteMatch is a PredicateType enum value 13642 PredicateTypeByteMatch = "ByteMatch" 13643 13644 // PredicateTypeSqlInjectionMatch is a PredicateType enum value 13645 PredicateTypeSqlInjectionMatch = "SqlInjectionMatch" 13646 13647 // PredicateTypeGeoMatch is a PredicateType enum value 13648 PredicateTypeGeoMatch = "GeoMatch" 13649 13650 // PredicateTypeSizeConstraint is a PredicateType enum value 13651 PredicateTypeSizeConstraint = "SizeConstraint" 13652 13653 // PredicateTypeXssMatch is a PredicateType enum value 13654 PredicateTypeXssMatch = "XssMatch" 13655 13656 // PredicateTypeRegexMatch is a PredicateType enum value 13657 PredicateTypeRegexMatch = "RegexMatch" 13658) 13659 13660// PredicateType_Values returns all elements of the PredicateType enum 13661func PredicateType_Values() []string { 13662 return []string{ 13663 PredicateTypeIpmatch, 13664 PredicateTypeByteMatch, 13665 PredicateTypeSqlInjectionMatch, 13666 PredicateTypeGeoMatch, 13667 PredicateTypeSizeConstraint, 13668 PredicateTypeXssMatch, 13669 PredicateTypeRegexMatch, 13670 } 13671} 13672 13673const ( 13674 // RateKeyIp is a RateKey enum value 13675 RateKeyIp = "IP" 13676) 13677 13678// RateKey_Values returns all elements of the RateKey enum 13679func RateKey_Values() []string { 13680 return []string{ 13681 RateKeyIp, 13682 } 13683} 13684 13685const ( 13686 // ResourceTypeApplicationLoadBalancer is a ResourceType enum value 13687 ResourceTypeApplicationLoadBalancer = "APPLICATION_LOAD_BALANCER" 13688 13689 // ResourceTypeApiGateway is a ResourceType enum value 13690 ResourceTypeApiGateway = "API_GATEWAY" 13691) 13692 13693// ResourceType_Values returns all elements of the ResourceType enum 13694func ResourceType_Values() []string { 13695 return []string{ 13696 ResourceTypeApplicationLoadBalancer, 13697 ResourceTypeApiGateway, 13698 } 13699} 13700 13701const ( 13702 // TextTransformationNone is a TextTransformation enum value 13703 TextTransformationNone = "NONE" 13704 13705 // TextTransformationCompressWhiteSpace is a TextTransformation enum value 13706 TextTransformationCompressWhiteSpace = "COMPRESS_WHITE_SPACE" 13707 13708 // TextTransformationHtmlEntityDecode is a TextTransformation enum value 13709 TextTransformationHtmlEntityDecode = "HTML_ENTITY_DECODE" 13710 13711 // TextTransformationLowercase is a TextTransformation enum value 13712 TextTransformationLowercase = "LOWERCASE" 13713 13714 // TextTransformationCmdLine is a TextTransformation enum value 13715 TextTransformationCmdLine = "CMD_LINE" 13716 13717 // TextTransformationUrlDecode is a TextTransformation enum value 13718 TextTransformationUrlDecode = "URL_DECODE" 13719) 13720 13721// TextTransformation_Values returns all elements of the TextTransformation enum 13722func TextTransformation_Values() []string { 13723 return []string{ 13724 TextTransformationNone, 13725 TextTransformationCompressWhiteSpace, 13726 TextTransformationHtmlEntityDecode, 13727 TextTransformationLowercase, 13728 TextTransformationCmdLine, 13729 TextTransformationUrlDecode, 13730 } 13731} 13732 13733const ( 13734 // WafActionTypeBlock is a WafActionType enum value 13735 WafActionTypeBlock = "BLOCK" 13736 13737 // WafActionTypeAllow is a WafActionType enum value 13738 WafActionTypeAllow = "ALLOW" 13739 13740 // WafActionTypeCount is a WafActionType enum value 13741 WafActionTypeCount = "COUNT" 13742) 13743 13744// WafActionType_Values returns all elements of the WafActionType enum 13745func WafActionType_Values() []string { 13746 return []string{ 13747 WafActionTypeBlock, 13748 WafActionTypeAllow, 13749 WafActionTypeCount, 13750 } 13751} 13752 13753const ( 13754 // WafOverrideActionTypeNone is a WafOverrideActionType enum value 13755 WafOverrideActionTypeNone = "NONE" 13756 13757 // WafOverrideActionTypeCount is a WafOverrideActionType enum value 13758 WafOverrideActionTypeCount = "COUNT" 13759) 13760 13761// WafOverrideActionType_Values returns all elements of the WafOverrideActionType enum 13762func WafOverrideActionType_Values() []string { 13763 return []string{ 13764 WafOverrideActionTypeNone, 13765 WafOverrideActionTypeCount, 13766 } 13767} 13768 13769const ( 13770 // WafRuleTypeRegular is a WafRuleType enum value 13771 WafRuleTypeRegular = "REGULAR" 13772 13773 // WafRuleTypeRateBased is a WafRuleType enum value 13774 WafRuleTypeRateBased = "RATE_BASED" 13775 13776 // WafRuleTypeGroup is a WafRuleType enum value 13777 WafRuleTypeGroup = "GROUP" 13778) 13779 13780// WafRuleType_Values returns all elements of the WafRuleType enum 13781func WafRuleType_Values() []string { 13782 return []string{ 13783 WafRuleTypeRegular, 13784 WafRuleTypeRateBased, 13785 WafRuleTypeGroup, 13786 } 13787} 13788