aws_sdk_bedrockagentcorecontrol/client/start_policy_generation.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 [`StartPolicyGeneration`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`policy_engine_id(impl Into<String>)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::policy_engine_id) / [`set_policy_engine_id(Option<String>)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::set_policy_engine_id):<br>required: **true**<br><p>The identifier of the policy engine that provides the context for policy generation. This engine's schema and tool context are used to ensure generated policies are valid and applicable.</p><br>
7 /// - [`resource(Resource)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::resource) / [`set_resource(Option<Resource>)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::set_resource):<br>required: **true**<br><p>The resource information that provides context for policy generation. This helps the AI understand the target resources and generate appropriate access control rules.</p><br>
8 /// - [`content(Content)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::content) / [`set_content(Option<Content>)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::set_content):<br>required: **true**<br><p>The natural language description of the desired policy behavior. This content is processed by AI to generate corresponding Cedar policy statements that match the described intent.</p><br>
9 /// - [`name(impl Into<String>)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::set_name):<br>required: **true**<br><p>A customer-assigned name for the policy generation request. This helps track and identify generation operations, especially when running multiple generations simultaneously.</p><br>
10 /// - [`client_token(impl Into<String>)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique, case-sensitive identifier to ensure the idempotency of the request. The AWS SDK automatically generates this token, so you don't need to provide it in most cases. If you retry a request with the same client token, the service returns the same response without starting a duplicate generation.</p><br>
11 /// - On success, responds with [`StartPolicyGenerationOutput`](crate::operation::start_policy_generation::StartPolicyGenerationOutput) with field(s):
12 /// - [`policy_engine_id(String)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::policy_engine_id): <p>The identifier of the policy engine associated with the started policy generation.</p>
13 /// - [`policy_generation_id(String)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::policy_generation_id): <p>The unique identifier assigned to the policy generation request for tracking progress.</p>
14 /// - [`name(String)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::name): <p>The customer-assigned name for the policy generation request.</p>
15 /// - [`policy_generation_arn(String)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::policy_generation_arn): <p>The ARN of the created policy generation request.</p>
16 /// - [`resource(Option<Resource>)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::resource): <p>The resource information associated with the policy generation request.</p>
17 /// - [`created_at(DateTime)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::created_at): <p>The timestamp when the policy generation request was created.</p>
18 /// - [`updated_at(DateTime)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::updated_at): <p>The timestamp when the policy generation was last updated.</p>
19 /// - [`status(PolicyGenerationStatus)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::status): <p>The initial status of the policy generation request.</p>
20 /// - [`status_reasons(Vec::<String>)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::status_reasons): <p>Additional information about the generation status.</p>
21 /// - [`findings(Option<String>)`](crate::operation::start_policy_generation::StartPolicyGenerationOutput::findings): <p>Initial findings from the policy generation process.</p>
22 /// - On failure, responds with [`SdkError<StartPolicyGenerationError>`](crate::operation::start_policy_generation::StartPolicyGenerationError)
23 pub fn start_policy_generation(&self) -> crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder {
24 crate::operation::start_policy_generation::builders::StartPolicyGenerationFluentBuilder::new(self.handle.clone())
25 }
26}