API Reference



This is the latest version of AWS WAF, named AWS WAFV2, released in November, 2019. For information, including how to migrate your AWS WAF resources from the prior release, see the AWS WAF Developer Guide.

A single rule, which you can use in a WebACL or RuleGroup to identify web requests that you want to allow, block, or count. Each rule includes one top-level Statement that AWS WAF uses to identify matching web requests, and parameters that govern how AWS WAF handles them.



The action that AWS WAF should take on a web request when it matches the rule's statement. Settings at the web ACL level can override the rule action setting.

Type: RuleAction object

Required: No


A friendly name of the rule. You can't change the name of a Rule after you create it.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 128.

Pattern: ^[\w\-]+$

Required: Yes


The action to use to override the rule's Action setting. You can use no override action, in which case the rule action is in effect, or count action, in which case, if the rule matches a web request, it only counts the match.

Type: OverrideAction object

Required: No


If you define more than one Rule in a WebACL, AWS WAF evaluates each request against the Rules in order based on the value of Priority. AWS WAF processes rules with lower priority first. The priorities don't need to be consecutive, but they must all be different.

Type: Integer

Valid Range: Minimum value of 0.

Required: Yes


The AWS WAF processing statement for the rule, for example ByteMatchStatement or SizeConstraintStatement.

Type: Statement object

Required: Yes


Defines and enables Amazon CloudWatch metrics and web request sample collection.

Type: VisibilityConfig object

Required: Yes

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

On this page: