aws_sdk_workmail/client/create_impersonation_role.rs
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateImpersonationRole`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`client_token(impl Into<String>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::set_client_token):<br>required: **false**<br><p>The idempotency token for the client request.</p><br>
/// - [`organization_id(impl Into<String>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::organization_id) / [`set_organization_id(Option<String>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::set_organization_id):<br>required: **true**<br><p>The WorkMail organization to create the new impersonation role within.</p><br>
/// - [`name(impl Into<String>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::set_name):<br>required: **true**<br><p>The name of the new impersonation role.</p><br>
/// - [`r#type(ImpersonationRoleType)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::type) / [`set_type(Option<ImpersonationRoleType>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::set_type):<br>required: **true**<br><p>The impersonation role's type. The available impersonation role types are <code>READ_ONLY</code> or <code>FULL_ACCESS</code>.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::set_description):<br>required: **false**<br><p>The description of the new impersonation role.</p><br>
/// - [`rules(ImpersonationRule)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::rules) / [`set_rules(Option<Vec::<ImpersonationRule>>)`](crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::set_rules):<br>required: **true**<br><p>The list of rules for the impersonation role.</p><br>
/// - On success, responds with [`CreateImpersonationRoleOutput`](crate::operation::create_impersonation_role::CreateImpersonationRoleOutput) with field(s):
/// - [`impersonation_role_id(Option<String>)`](crate::operation::create_impersonation_role::CreateImpersonationRoleOutput::impersonation_role_id): <p>The new impersonation role ID.</p>
/// - On failure, responds with [`SdkError<CreateImpersonationRoleError>`](crate::operation::create_impersonation_role::CreateImpersonationRoleError)
pub fn create_impersonation_role(&self) -> crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder {
crate::operation::create_impersonation_role::builders::CreateImpersonationRoleFluentBuilder::new(self.handle.clone())
}
}