// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateAutomationRule`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::tags) / [`set_tags(Option<HashMap<String, String>>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::set_tags): <p> User-defined tags that help you label the purpose of a rule. </p>
/// - [`rule_status(RuleStatus)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::rule_status) / [`set_rule_status(Option<RuleStatus>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::set_rule_status): <p> Whether the rule is active after it is created. If this parameter is equal to <code>ENABLED</code>, Security Hub starts applying the rule to findings and finding updates after the rule is created. To change the value of this parameter after creating a rule, use <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html"> <code>BatchUpdateAutomationRules</code> </a>. </p>
/// - [`rule_order(i32)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::rule_order) / [`set_rule_order(Option<i32>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::set_rule_order): <p>An integer ranging from 1 to 1000 that represents the order in which the rule action is applied to findings. Security Hub applies rules with lower values for this parameter first. </p>
/// - [`rule_name(impl Into<String>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::rule_name) / [`set_rule_name(Option<String>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::set_rule_name): <p> The name of the rule. </p>
/// - [`description(impl Into<String>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::set_description): <p> A description of the rule. </p>
/// - [`is_terminal(bool)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::is_terminal) / [`set_is_terminal(Option<bool>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::set_is_terminal): <p>Specifies whether a rule is the last to be applied with respect to a finding that matches the rule criteria. This is useful when a finding matches the criteria for multiple rules, and each rule has different actions. If a rule is terminal, Security Hub applies the rule action to a finding that matches the rule criteria and doesn't evaluate other rules for the finding. By default, a rule isn't terminal. </p>
/// - [`criteria(AutomationRulesFindingFilters)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::criteria) / [`set_criteria(Option<AutomationRulesFindingFilters>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::set_criteria): <p> A set of ASFF finding field attributes and corresponding expected values that Security Hub uses to filter findings. If a rule is enabled and a finding matches the conditions specified in this parameter, Security Hub applies the rule action to the finding. </p>
/// - [`actions(AutomationRulesAction)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::actions) / [`set_actions(Option<Vec<AutomationRulesAction>>)`](crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::set_actions): <p> One or more actions to update finding fields if a finding matches the conditions specified in <code>Criteria</code>. </p>
/// - On success, responds with [`CreateAutomationRuleOutput`](crate::operation::create_automation_rule::CreateAutomationRuleOutput) with field(s):
/// - [`rule_arn(Option<String>)`](crate::operation::create_automation_rule::CreateAutomationRuleOutput::rule_arn): <p> The Amazon Resource Name (ARN) of the automation rule that you created. </p>
/// - On failure, responds with [`SdkError<CreateAutomationRuleError>`](crate::operation::create_automation_rule::CreateAutomationRuleError)
pub fn create_automation_rule(&self) -> crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder {
crate::operation::create_automation_rule::builders::CreateAutomationRuleFluentBuilder::new(self.handle.clone())
}
}