aws_sdk_waf/client/create_web_acl.rs
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateWebACL`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`name(impl Into<String>)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::set_name):<br>required: **true**<br><p>A friendly name or description of the <code>WebACL</code>. You can't change <code>Name</code> after you create the <code>WebACL</code>.</p><br>
/// - [`metric_name(impl Into<String>)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::metric_name) / [`set_metric_name(Option<String>)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::set_metric_name):<br>required: **true**<br><p>A friendly name or description for the metrics for this <code>WebACL</code>.The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF, including "All" and "Default_Action." You can't change <code>MetricName</code> after you create the <code>WebACL</code>.</p><br>
/// - [`default_action(WafAction)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::default_action) / [`set_default_action(Option<WafAction>)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::set_default_action):<br>required: **true**<br><p>The action that you want AWS WAF to take when a request doesn't match the criteria specified in any of the <code>Rule</code> objects that are associated with the <code>WebACL</code>.</p><br>
/// - [`change_token(impl Into<String>)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::change_token) / [`set_change_token(Option<String>)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::set_change_token):<br>required: **true**<br><p>The value returned by the most recent call to <code>GetChangeToken</code>.</p><br>
/// - [`tags(Tag)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::set_tags):<br>required: **false**<br><p></p><br>
/// - On success, responds with [`CreateWebAclOutput`](crate::operation::create_web_acl::CreateWebAclOutput) with field(s):
/// - [`web_acl(Option<WebAcl>)`](crate::operation::create_web_acl::CreateWebAclOutput::web_acl): <p>The <code>WebACL</code> returned in the <code>CreateWebACL</code> response.</p>
/// - [`change_token(Option<String>)`](crate::operation::create_web_acl::CreateWebAclOutput::change_token): <p>The <code>ChangeToken</code> that you used to submit the <code>CreateWebACL</code> request. You can also use this value to query the status of the request. For more information, see <code>GetChangeTokenStatus</code>.</p>
/// - On failure, responds with [`SdkError<CreateWebACLError>`](crate::operation::create_web_acl::CreateWebACLError)
pub fn create_web_acl(&self) -> crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder {
crate::operation::create_web_acl::builders::CreateWebACLFluentBuilder::new(self.handle.clone())
}
}