// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateRetriever`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`application_id(impl Into<String>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::application_id) / [`set_application_id(Option<String>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::set_application_id):<br>required: **true**<br><p>The identifier of your Amazon Q application.</p><br>
/// - [`r#type(RetrieverType)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::type) / [`set_type(Option<RetrieverType>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::set_type):<br>required: **true**<br><p>The type of retriever you are using.</p><br>
/// - [`display_name(impl Into<String>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::display_name) / [`set_display_name(Option<String>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::set_display_name):<br>required: **true**<br><p>The name of your retriever.</p><br>
/// - [`configuration(RetrieverConfiguration)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::configuration) / [`set_configuration(Option<RetrieverConfiguration>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::set_configuration):<br>required: **true**<br><p>Provides information on how the retriever used for your Amazon Q application is configured.</p><br>
/// - [`role_arn(impl Into<String>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::role_arn) / [`set_role_arn(Option<String>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::set_role_arn):<br>required: **false**<br><p>The ARN of an IAM role used by Amazon Q to access the basic authentication credentials stored in a Secrets Manager secret.</p><br>
/// - [`client_token(impl Into<String>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::set_client_token):<br>required: **false**<br><p>A token that you provide to identify the request to create your Amazon Q application retriever.</p><br>
/// - [`tags(Tag)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::set_tags):<br>required: **false**<br><p>A list of key-value pairs that identify or categorize the retriever. You can also use tags to help control access to the retriever. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.</p><br>
/// - On success, responds with [`CreateRetrieverOutput`](crate::operation::create_retriever::CreateRetrieverOutput) with field(s):
/// - [`retriever_id(Option<String>)`](crate::operation::create_retriever::CreateRetrieverOutput::retriever_id): <p>The identifier of the retriever you are using.</p>
/// - [`retriever_arn(Option<String>)`](crate::operation::create_retriever::CreateRetrieverOutput::retriever_arn): <p>The Amazon Resource Name (ARN) of an IAM role associated with a retriever.</p>
/// - On failure, responds with [`SdkError<CreateRetrieverError>`](crate::operation::create_retriever::CreateRetrieverError)
pub fn create_retriever(&self) -> crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder {
crate::operation::create_retriever::builders::CreateRetrieverFluentBuilder::new(self.handle.clone())
}
}