// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`ChatSync`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`application_id(impl Into<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::application_id) / [`set_application_id(Option<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_application_id):<br>required: **true**<br><p>The identifier of the Amazon Q application linked to the Amazon Q conversation.</p><br>
/// - [`user_id(impl Into<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::user_id) / [`set_user_id(Option<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_user_id):<br>required: **true**<br><p>The identifier of the user attached to the chat input.</p><br>
/// - [`user_groups(impl Into<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::user_groups) / [`set_user_groups(Option<Vec::<String>>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_user_groups):<br>required: **false**<br><p>The groups that a user associated with the chat input belongs to.</p><br>
/// - [`user_message(impl Into<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::user_message) / [`set_user_message(Option<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_user_message):<br>required: **false**<br><p>A end user message in a conversation.</p><br>
/// - [`attachments(AttachmentInput)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::attachments) / [`set_attachments(Option<Vec::<AttachmentInput>>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_attachments):<br>required: **false**<br><p>A list of files uploaded directly during chat. You can upload a maximum of 5 files of upto 10 MB each.</p><br>
/// - [`action_execution(ActionExecution)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::action_execution) / [`set_action_execution(Option<ActionExecution>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_action_execution):<br>required: **false**<br><p>A request from an end user to perform an Amazon Q plugin action.</p><br>
/// - [`conversation_id(impl Into<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::conversation_id) / [`set_conversation_id(Option<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_conversation_id):<br>required: **false**<br><p>The identifier of the Amazon Q conversation.</p><br>
/// - [`parent_message_id(impl Into<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::parent_message_id) / [`set_parent_message_id(Option<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_parent_message_id):<br>required: **false**<br><p>The identifier of the previous end user text input message in a conversation.</p><br>
/// - [`attribute_filter(AttributeFilter)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::attribute_filter) / [`set_attribute_filter(Option<AttributeFilter>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_attribute_filter):<br>required: **false**<br><p>Enables filtering of Amazon Q web experience responses based on document attributes or metadata fields.</p><br>
/// - [`client_token(impl Into<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::chat_sync::builders::ChatSyncFluentBuilder::set_client_token):<br>required: **false**<br><p>A token that you provide to identify a chat request.</p><br>
/// - On success, responds with [`ChatSyncOutput`](crate::operation::chat_sync::ChatSyncOutput) with field(s):
/// - [`conversation_id(Option<String>)`](crate::operation::chat_sync::ChatSyncOutput::conversation_id): <p>The identifier of the Amazon Q conversation.</p>
/// - [`system_message(Option<String>)`](crate::operation::chat_sync::ChatSyncOutput::system_message): <p>An AI-generated message in a conversation.</p>
/// - [`system_message_id(Option<String>)`](crate::operation::chat_sync::ChatSyncOutput::system_message_id): <p>The identifier of an Amazon Q AI generated message within the conversation.</p>
/// - [`user_message_id(Option<String>)`](crate::operation::chat_sync::ChatSyncOutput::user_message_id): <p>The identifier of an Amazon Q end user text input message within the conversation.</p>
/// - [`action_review(Option<ActionReview>)`](crate::operation::chat_sync::ChatSyncOutput::action_review): <p>A request from Amazon Q to the end user for information Amazon Q needs to successfully complete a requested plugin action.</p>
/// - [`source_attributions(Option<Vec::<Option<SourceAttribution>>>)`](crate::operation::chat_sync::ChatSyncOutput::source_attributions): <p>The source documents used to generate the conversation response.</p>
/// - [`failed_attachments(Option<Vec::<AttachmentOutput>>)`](crate::operation::chat_sync::ChatSyncOutput::failed_attachments): <p>A list of files which failed to upload during chat.</p>
/// - On failure, responds with [`SdkError<ChatSyncError>`](crate::operation::chat_sync::ChatSyncError)
pub fn chat_sync(&self) -> crate::operation::chat_sync::builders::ChatSyncFluentBuilder {
crate::operation::chat_sync::builders::ChatSyncFluentBuilder::new(self.handle.clone())
}
}