aws-sdk-bedrockagentcorecontrol 1.55.0

AWS SDK for Amazon Bedrock AgentCore Control
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreatePolicyEngine`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`name(impl Into<String>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::set_name):<br>required: **true**<br><p>The customer-assigned immutable name for the policy engine. This name identifies the policy engine and cannot be changed after creation.</p><br>
    ///   - [`description(impl Into<String>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::set_description):<br>required: **false**<br><p>A human-readable description of the policy engine's purpose and scope (1-4,096 characters). This helps administrators understand the policy engine's role in the overall governance strategy. Document which Gateway this engine will be associated with, what types of tools or workflows it governs, and the team or service responsible for maintaining it. Clear descriptions are essential when managing multiple policy engines across different services or environments.</p><br>
    ///   - [`client_token(impl Into<String>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request with the same client token, the service returns the same response without creating a duplicate policy engine.</p><br>
    ///   - [`encryption_key_arn(impl Into<String>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::encryption_key_arn) / [`set_encryption_key_arn(Option<String>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::set_encryption_key_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of the KMS key used to encrypt the policy engine data.</p><br>
    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::set_tags):<br>required: **false**<br><p>A map of tag keys and values to assign to an AgentCore Policy. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.</p><br>
    /// - On success, responds with [`CreatePolicyEngineOutput`](crate::operation::create_policy_engine::CreatePolicyEngineOutput) with field(s):
    ///   - [`policy_engine_id(String)`](crate::operation::create_policy_engine::CreatePolicyEngineOutput::policy_engine_id): <p>The unique identifier for the created policy engine. This system-generated identifier consists of the user name plus a 10-character generated suffix and is used for all subsequent policy engine operations.</p>
    ///   - [`name(String)`](crate::operation::create_policy_engine::CreatePolicyEngineOutput::name): <p>The customer-assigned name of the created policy engine. This matches the name provided in the request and serves as the human-readable identifier.</p>
    ///   - [`created_at(DateTime)`](crate::operation::create_policy_engine::CreatePolicyEngineOutput::created_at): <p>The timestamp when the policy engine was created. This is automatically set by the service and used for auditing and lifecycle management.</p>
    ///   - [`updated_at(DateTime)`](crate::operation::create_policy_engine::CreatePolicyEngineOutput::updated_at): <p>The timestamp when the policy engine was last updated. For newly created policy engines, this matches the <code>createdAt</code> timestamp.</p>
    ///   - [`policy_engine_arn(String)`](crate::operation::create_policy_engine::CreatePolicyEngineOutput::policy_engine_arn): <p>The Amazon Resource Name (ARN) of the created policy engine. This globally unique identifier can be used for cross-service references and IAM policy statements.</p>
    ///   - [`status(PolicyEngineStatus)`](crate::operation::create_policy_engine::CreatePolicyEngineOutput::status): <p>The current status of the policy engine. A status of <code>ACTIVE</code> indicates the policy engine is ready for use.</p>
    ///   - [`encryption_key_arn(Option<String>)`](crate::operation::create_policy_engine::CreatePolicyEngineOutput::encryption_key_arn): <p>The Amazon Resource Name (ARN) of the KMS key used to encrypt the policy engine data.</p>
    ///   - [`description(Option<String>)`](crate::operation::create_policy_engine::CreatePolicyEngineOutput::description): <p>A human-readable description of the policy engine's purpose.</p>
    ///   - [`status_reasons(Vec::<String>)`](crate::operation::create_policy_engine::CreatePolicyEngineOutput::status_reasons): <p>Additional information about the policy engine status. This provides details about any failures or the current state of the policy engine creation process.</p>
    /// - On failure, responds with [`SdkError<CreatePolicyEngineError>`](crate::operation::create_policy_engine::CreatePolicyEngineError)
    pub fn create_policy_engine(&self) -> crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder {
        crate::operation::create_policy_engine::builders::CreatePolicyEngineFluentBuilder::new(self.handle.clone())
    }
}