aws_sdk_wafv2/client/update_rule_group.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`UpdateRuleGroup`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`name(impl Into<String>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::set_name):<br>required: **true**<br><p>The name of the rule group. You cannot change the name of a rule group after you create it.</p><br>
7 /// - [`scope(Scope)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::scope) / [`set_scope(Option<Scope>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::set_scope):<br>required: **true**<br><p>Specifies whether this is for a global resource type, such as a Amazon CloudFront distribution. For an Amplify application, use <code>CLOUDFRONT</code>.</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>
8 /// - [`id(impl Into<String>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::id) / [`set_id(Option<String>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::set_id):<br>required: **true**<br><p>A unique identifier for the rule group. This ID is returned in the responses to create and list commands. You provide it to operations like update and delete.</p><br>
9 /// - [`description(impl Into<String>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::set_description):<br>required: **false**<br><p>A description of the rule group that helps with identification.</p><br>
10 /// - [`rules(Rule)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::rules) / [`set_rules(Option<Vec::<Rule>>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::set_rules):<br>required: **false**<br><p>The <code>Rule</code> statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.</p><br>
11 /// - [`visibility_config(VisibilityConfig)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::visibility_config) / [`set_visibility_config(Option<VisibilityConfig>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::set_visibility_config):<br>required: **true**<br><p>Defines and enables Amazon CloudWatch metrics and web request sample collection.</p><br>
12 /// - [`lock_token(impl Into<String>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::lock_token) / [`set_lock_token(Option<String>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::set_lock_token):<br>required: **true**<br><p>A token used for optimistic locking. WAF returns a token to your <code>get</code> and <code>list</code> requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations like <code>update</code> and <code>delete</code>. WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with a <code>WAFOptimisticLockException</code>. If this happens, perform another <code>get</code>, and use the new token returned by that operation.</p><br>
13 /// - [`custom_response_bodies(impl Into<String>, CustomResponseBody)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::custom_response_bodies) / [`set_custom_response_bodies(Option<HashMap::<String, CustomResponseBody>>)`](crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::set_custom_response_bodies):<br>required: **false**<br><p>A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.</p> <p>For information about customizing web requests and responses, see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html">Customizing web requests and responses in WAF</a> in the <i>WAF Developer Guide</i>.</p> <p>For information about the limits on count and size for custom request and response settings, see <a href="https://docs.aws.amazon.com/waf/latest/developerguide/limits.html">WAF quotas</a> in the <i>WAF Developer Guide</i>.</p><br>
14 /// - On success, responds with [`UpdateRuleGroupOutput`](crate::operation::update_rule_group::UpdateRuleGroupOutput) with field(s):
15 /// - [`next_lock_token(Option<String>)`](crate::operation::update_rule_group::UpdateRuleGroupOutput::next_lock_token): <p>A token used for optimistic locking. WAF returns this token to your <code>update</code> requests. You use <code>NextLockToken</code> in the same manner as you use <code>LockToken</code>.</p>
16 /// - On failure, responds with [`SdkError<UpdateRuleGroupError>`](crate::operation::update_rule_group::UpdateRuleGroupError)
17 pub fn update_rule_group(&self) -> crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder {
18 crate::operation::update_rule_group::builders::UpdateRuleGroupFluentBuilder::new(self.handle.clone())
19 }
20}