aws_sdk_wafv2/client/get_rate_based_statement_managed_keys.rs
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`GetRateBasedStatementManagedKeys`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`scope(Scope)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::scope) / [`set_scope(Option<Scope>)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::set_scope):<br>required: **true**<br><p>Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.</p> <p>To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:</p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>.</p></li> <li> <p>API and SDKs - For all calls, use the Region endpoint us-east-1.</p></li> </ul><br>
/// - [`web_acl_name(impl Into<String>)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::web_acl_name) / [`set_web_acl_name(Option<String>)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::set_web_acl_name):<br>required: **true**<br><p>The name of the web ACL. You cannot change the name of a web ACL after you create it.</p><br>
/// - [`web_acl_id(impl Into<String>)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::web_acl_id) / [`set_web_acl_id(Option<String>)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::set_web_acl_id):<br>required: **true**<br><p>The unique identifier for the web ACL. This ID is returned in the responses to create and list commands. You provide it to operations like update and delete.</p><br>
/// - [`rule_group_rule_name(impl Into<String>)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::rule_group_rule_name) / [`set_rule_group_rule_name(Option<String>)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::set_rule_group_rule_name):<br>required: **false**<br><p>The name of the rule group reference statement in your web ACL. This is required only when you have the rate-based rule nested inside a rule group.</p><br>
/// - [`rule_name(impl Into<String>)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::rule_name) / [`set_rule_name(Option<String>)`](crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::set_rule_name):<br>required: **true**<br><p>The name of the rate-based rule to get the keys for. If you have the rule defined inside a rule group that you're using in your web ACL, also provide the name of the rule group reference statement in the request parameter <code>RuleGroupRuleName</code>.</p><br>
/// - On success, responds with [`GetRateBasedStatementManagedKeysOutput`](crate::operation::get_rate_based_statement_managed_keys::GetRateBasedStatementManagedKeysOutput) with field(s):
/// - [`managed_keys_ipv4(Option<RateBasedStatementManagedKeysIpSet>)`](crate::operation::get_rate_based_statement_managed_keys::GetRateBasedStatementManagedKeysOutput::managed_keys_ipv4): <p>The keys that are of Internet Protocol version 4 (IPv4).</p>
/// - [`managed_keys_ipv6(Option<RateBasedStatementManagedKeysIpSet>)`](crate::operation::get_rate_based_statement_managed_keys::GetRateBasedStatementManagedKeysOutput::managed_keys_ipv6): <p>The keys that are of Internet Protocol version 6 (IPv6).</p>
/// - On failure, responds with [`SdkError<GetRateBasedStatementManagedKeysError>`](crate::operation::get_rate_based_statement_managed_keys::GetRateBasedStatementManagedKeysError)
pub fn get_rate_based_statement_managed_keys(
&self,
) -> crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder {
crate::operation::get_rate_based_statement_managed_keys::builders::GetRateBasedStatementManagedKeysFluentBuilder::new(self.handle.clone())
}
}