// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`GetPlugin`](crate::operation::get_plugin::builders::GetPluginFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`application_id(impl Into<String>)`](crate::operation::get_plugin::builders::GetPluginFluentBuilder::application_id) / [`set_application_id(Option<String>)`](crate::operation::get_plugin::builders::GetPluginFluentBuilder::set_application_id):<br>required: **true**<br><p>The identifier of the application which contains the plugin.</p><br>
/// - [`plugin_id(impl Into<String>)`](crate::operation::get_plugin::builders::GetPluginFluentBuilder::plugin_id) / [`set_plugin_id(Option<String>)`](crate::operation::get_plugin::builders::GetPluginFluentBuilder::set_plugin_id):<br>required: **true**<br><p>The identifier of the plugin.</p><br>
/// - On success, responds with [`GetPluginOutput`](crate::operation::get_plugin::GetPluginOutput) with field(s):
/// - [`application_id(Option<String>)`](crate::operation::get_plugin::GetPluginOutput::application_id): <p>The identifier of the application which contains the plugin.</p>
/// - [`plugin_id(Option<String>)`](crate::operation::get_plugin::GetPluginOutput::plugin_id): <p>The identifier of the plugin.</p>
/// - [`display_name(Option<String>)`](crate::operation::get_plugin::GetPluginOutput::display_name): <p>The name of the plugin.</p>
/// - [`r#type(Option<PluginType>)`](crate::operation::get_plugin::GetPluginOutput::type): <p>The type of the plugin.</p>
/// - [`server_url(Option<String>)`](crate::operation::get_plugin::GetPluginOutput::server_url): <p>The source URL used for plugin configuration.</p>
/// - [`auth_configuration(Option<PluginAuthConfiguration>)`](crate::operation::get_plugin::GetPluginOutput::auth_configuration): <p>Authentication configuration information for an Amazon Q Business plugin.</p>
/// - [`custom_plugin_configuration(Option<CustomPluginConfiguration>)`](crate::operation::get_plugin::GetPluginOutput::custom_plugin_configuration): <p>Configuration information required to create a custom plugin.</p>
/// - [`build_status(Option<PluginBuildStatus>)`](crate::operation::get_plugin::GetPluginOutput::build_status): <p>The current status of a plugin. A plugin is modified asynchronously.</p>
/// - [`plugin_arn(Option<String>)`](crate::operation::get_plugin::GetPluginOutput::plugin_arn): <p>The Amazon Resource Name (ARN) of the role with permission to access resources needed to create the plugin.</p>
/// - [`state(Option<PluginState>)`](crate::operation::get_plugin::GetPluginOutput::state): <p>The current state of the plugin.</p>
/// - [`created_at(Option<DateTime>)`](crate::operation::get_plugin::GetPluginOutput::created_at): <p>The timestamp for when the plugin was created.</p>
/// - [`updated_at(Option<DateTime>)`](crate::operation::get_plugin::GetPluginOutput::updated_at): <p>The timestamp for when the plugin was last updated.</p>
/// - On failure, responds with [`SdkError<GetPluginError>`](crate::operation::get_plugin::GetPluginError)
pub fn get_plugin(&self) -> crate::operation::get_plugin::builders::GetPluginFluentBuilder {
crate::operation::get_plugin::builders::GetPluginFluentBuilder::new(self.handle.clone())
}
}