// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateIntegration`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`integration_type(IntegrationType)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::integration_type) / [`set_integration_type(Option<IntegrationType>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_integration_type):<br>required: **true**<br>The type of third-party provider to integrate with.<br>
/// - [`name(impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_name):<br>required: **true**<br>The name for the new integration; unique within the account.<br>
/// - [`credential(IntegrationCredential)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::credential) / [`set_credential(Option<IntegrationCredential>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_credential):<br>required: **false**<br>The credential used to authenticate with the third-party provider.<br>
/// - [`integration_attributes(impl Into<String>, impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::integration_attributes) / [`set_integration_attributes(Option<HashMap::<String, String>>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_integration_attributes):<br>required: **false**<br>Provider-specific attributes to associate with the integration.<br>
/// - [`role_arn(impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::role_arn) / [`set_role_arn(Option<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_role_arn):<br>required: **false**<br>The Amazon Resource Name of the IAM role assumed to access the integration.<br>
/// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_tags):<br>required: **false**<br>Tags to apply to the integration at creation time (Tagris tag-on-create).<br>
/// - [`client_token(impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_client_token):<br>required: **false**<br>Idempotency token for safe retries. Retrying with the same token returns the original integration instead of creating a duplicate.<br>
/// - On success, responds with [`CreateIntegrationOutput`](crate::operation::create_integration::CreateIntegrationOutput) with field(s):
/// - [`integration(Option<Integration>)`](crate::operation::create_integration::CreateIntegrationOutput::integration): The details of the created integration. This is the same object returned by GetIntegration and UpdateIntegration.
/// - On failure, responds with [`SdkError<CreateIntegrationError>`](crate::operation::create_integration::CreateIntegrationError)
pub fn create_integration(&self) -> crate::operation::create_integration::builders::CreateIntegrationFluentBuilder {
crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::new(self.handle.clone())
}
}