// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateOauth2CredentialProvider`](crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`name(impl Into<String>)`](crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder::set_name):<br>required: **true**<br><p>The name of the OAuth2 credential provider. The name must be unique within your account.</p><br>
/// - [`credential_provider_vendor(CredentialProviderVendorType)`](crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder::credential_provider_vendor) / [`set_credential_provider_vendor(Option<CredentialProviderVendorType>)`](crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder::set_credential_provider_vendor):<br>required: **true**<br><p>The vendor of the OAuth2 credential provider. This specifies which OAuth2 implementation to use.</p><br>
/// - [`oauth2_provider_config_input(Oauth2ProviderConfigInput)`](crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder::oauth2_provider_config_input) / [`set_oauth2_provider_config_input(Option<Oauth2ProviderConfigInput>)`](crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder::set_oauth2_provider_config_input):<br>required: **true**<br><p>The configuration settings for the OAuth2 provider, including client ID, client secret, and other vendor-specific settings.</p><br>
/// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder::set_tags):<br>required: **false**<br><p>A map of tag keys and values to assign to the OAuth2 credential provider. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.</p><br>
/// - On success, responds with [`CreateOauth2CredentialProviderOutput`](crate::operation::create_oauth2_credential_provider::CreateOauth2CredentialProviderOutput) with field(s):
/// - [`client_secret_arn(Option<Secret>)`](crate::operation::create_oauth2_credential_provider::CreateOauth2CredentialProviderOutput::client_secret_arn): <p>The Amazon Resource Name (ARN) of the client secret in AWS Secrets Manager.</p>
/// - [`name(String)`](crate::operation::create_oauth2_credential_provider::CreateOauth2CredentialProviderOutput::name): <p>The name of the OAuth2 credential provider.</p>
/// - [`credential_provider_arn(String)`](crate::operation::create_oauth2_credential_provider::CreateOauth2CredentialProviderOutput::credential_provider_arn): <p>The Amazon Resource Name (ARN) of the OAuth2 credential provider.</p>
/// - [`callback_url(Option<String>)`](crate::operation::create_oauth2_credential_provider::CreateOauth2CredentialProviderOutput::callback_url): <p>Callback URL to register on the OAuth2 credential provider as an allowed callback URL. This URL is where the OAuth2 authorization server redirects users after they complete the authorization flow.</p>
/// - [`oauth2_provider_config_output(Option<Oauth2ProviderConfigOutput>)`](crate::operation::create_oauth2_credential_provider::CreateOauth2CredentialProviderOutput::oauth2_provider_config_output): <p>Contains the output configuration for an OAuth2 provider.</p>
/// - On failure, responds with [`SdkError<CreateOauth2CredentialProviderError>`](crate::operation::create_oauth2_credential_provider::CreateOauth2CredentialProviderError)
pub fn create_oauth2_credential_provider(
&self,
) -> crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder {
crate::operation::create_oauth2_credential_provider::builders::CreateOauth2CredentialProviderFluentBuilder::new(self.handle.clone())
}
}