1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateApplication`](crate::operation::create_application::builders::CreateApplicationFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`display_name(impl Into<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::display_name) / [`set_display_name(Option<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_display_name):<br>required: **true**<br><p>A name for the Amazon Q Business application.</p><br>
    ///   - [`role_arn(impl Into<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::role_arn) / [`set_role_arn(Option<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_role_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of an IAM role with permissions to access your Amazon CloudWatch logs and metrics.</p><br>
    ///   - [`identity_type(IdentityType)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::identity_type) / [`set_identity_type(Option<IdentityType>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_identity_type):<br>required: **false**<br><p>The authentication type being used by a Amazon Q Business application.</p><br>
    ///   - [`iam_identity_provider_arn(impl Into<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::iam_identity_provider_arn) / [`set_iam_identity_provider_arn(Option<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_iam_identity_provider_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of an identity provider being used by an Amazon Q Business application.</p><br>
    ///   - [`identity_center_instance_arn(impl Into<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::identity_center_instance_arn) / [`set_identity_center_instance_arn(Option<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_identity_center_instance_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of the IAM Identity Center instance you are either creating for—or connecting to—your Amazon Q Business application.</p><br>
    ///   - [`client_ids_for_oidc(impl Into<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::client_ids_for_oidc) / [`set_client_ids_for_oidc(Option<Vec::<String>>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_client_ids_for_oidc):<br>required: **false**<br><p>The OIDC client ID for a Amazon Q Business application.</p><br>
    ///   - [`description(impl Into<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_description):<br>required: **false**<br><p>A description for the Amazon Q Business application.</p><br>
    ///   - [`encryption_configuration(EncryptionConfiguration)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::encryption_configuration) / [`set_encryption_configuration(Option<EncryptionConfiguration>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_encryption_configuration):<br>required: **false**<br><p>The identifier of the KMS key that is used to encrypt your data. Amazon Q Business doesn't support asymmetric keys.</p><br>
    ///   - [`tags(Tag)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_tags):<br>required: **false**<br><p>A list of key-value pairs that identify or categorize your Amazon Q Business application. You can also use tags to help control access to the application. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.</p><br>
    ///   - [`client_token(impl Into<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_client_token):<br>required: **false**<br><p>A token that you provide to identify the request to create your Amazon Q Business application.</p><br>
    ///   - [`attachments_configuration(AttachmentsConfiguration)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::attachments_configuration) / [`set_attachments_configuration(Option<AttachmentsConfiguration>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_attachments_configuration):<br>required: **false**<br><p>An option to allow end users to upload files directly during chat.</p><br>
    ///   - [`q_apps_configuration(QAppsConfiguration)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::q_apps_configuration) / [`set_q_apps_configuration(Option<QAppsConfiguration>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_q_apps_configuration):<br>required: **false**<br><p>An option to allow end users to create and use Amazon Q Apps in the web experience.</p><br>
    ///   - [`personalization_configuration(PersonalizationConfiguration)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::personalization_configuration) / [`set_personalization_configuration(Option<PersonalizationConfiguration>)`](crate::operation::create_application::builders::CreateApplicationFluentBuilder::set_personalization_configuration):<br>required: **false**<br><p>Configuration information about chat response personalization. For more information, see <a href="https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/personalizing-chat-responses.html">Personalizing chat responses</a></p><br>
    /// - On success, responds with [`CreateApplicationOutput`](crate::operation::create_application::CreateApplicationOutput) with field(s):
    ///   - [`application_id(Option<String>)`](crate::operation::create_application::CreateApplicationOutput::application_id): <p>The identifier of the Amazon Q Business application.</p>
    ///   - [`application_arn(Option<String>)`](crate::operation::create_application::CreateApplicationOutput::application_arn): <p>The Amazon Resource Name (ARN) of the Amazon Q Business application.</p>
    /// - On failure, responds with [`SdkError<CreateApplicationError>`](crate::operation::create_application::CreateApplicationError)
    pub fn create_application(&self) -> crate::operation::create_application::builders::CreateApplicationFluentBuilder {
        crate::operation::create_application::builders::CreateApplicationFluentBuilder::new(self.handle.clone())
    }
}