// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateIdentityPool`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`identity_pool_name(impl Into<String>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::identity_pool_name) / [`set_identity_pool_name(Option<String>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::set_identity_pool_name):<br>required: **true**<br><p>A string that you provide.</p><br>
/// - [`allow_unauthenticated_identities(bool)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::allow_unauthenticated_identities) / [`set_allow_unauthenticated_identities(Option<bool>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::set_allow_unauthenticated_identities):<br>required: **true**<br><p>TRUE if the identity pool supports unauthenticated logins.</p><br>
/// - [`allow_classic_flow(bool)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::allow_classic_flow) / [`set_allow_classic_flow(Option<bool>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::set_allow_classic_flow):<br>required: **false**<br><p>Enables or disables the Basic (Classic) authentication flow. For more information, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/authentication-flow.html">Identity Pools (Federated Identities) Authentication Flow</a> in the <i>Amazon Cognito Developer Guide</i>.</p><br>
/// - [`supported_login_providers(impl Into<String>, impl Into<String>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::supported_login_providers) / [`set_supported_login_providers(Option<HashMap::<String, String>>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::set_supported_login_providers):<br>required: **false**<br><p>Optional key:value pairs mapping provider names to provider app IDs.</p><br>
/// - [`developer_provider_name(impl Into<String>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::developer_provider_name) / [`set_developer_provider_name(Option<String>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::set_developer_provider_name):<br>required: **false**<br><p>The "domain" by which Cognito will refer to your users. This name acts as a placeholder that allows your backend and the Cognito service to communicate about the developer provider. For the <code>DeveloperProviderName</code>, you can use letters as well as period (<code>.</code>), underscore (<code>_</code>), and dash (<code>-</code>).</p> <p>Once you have set a developer provider name, you cannot change it. Please take care in setting this parameter.</p><br>
/// - [`open_id_connect_provider_arns(impl Into<String>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::open_id_connect_provider_arns) / [`set_open_id_connect_provider_arns(Option<Vec::<String>>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::set_open_id_connect_provider_arns):<br>required: **false**<br><p>The Amazon Resource Names (ARN) of the OpenID Connect providers.</p><br>
/// - [`cognito_identity_providers(CognitoIdentityProvider)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::cognito_identity_providers) / [`set_cognito_identity_providers(Option<Vec::<CognitoIdentityProvider>>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::set_cognito_identity_providers):<br>required: **false**<br><p>An array of Amazon Cognito user pools and their client IDs.</p><br>
/// - [`saml_provider_arns(impl Into<String>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::saml_provider_arns) / [`set_saml_provider_arns(Option<Vec::<String>>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::set_saml_provider_arns):<br>required: **false**<br><p>An array of Amazon Resource Names (ARNs) of the SAML provider for your identity pool.</p><br>
/// - [`identity_pool_tags(impl Into<String>, impl Into<String>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::identity_pool_tags) / [`set_identity_pool_tags(Option<HashMap::<String, String>>)`](crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::set_identity_pool_tags):<br>required: **false**<br><p>Tags to assign to the identity pool. A tag is a label that you can apply to identity pools to categorize and manage them in different ways, such as by purpose, owner, environment, or other criteria.</p><br>
/// - On success, responds with [`CreateIdentityPoolOutput`](crate::operation::create_identity_pool::CreateIdentityPoolOutput) with field(s):
/// - [`identity_pool_id(String)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::identity_pool_id): <p>An identity pool ID in the format REGION:GUID.</p>
/// - [`identity_pool_name(String)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::identity_pool_name): <p>A string that you provide.</p>
/// - [`allow_unauthenticated_identities(bool)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::allow_unauthenticated_identities): <p>TRUE if the identity pool supports unauthenticated logins.</p>
/// - [`allow_classic_flow(Option<bool>)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::allow_classic_flow): <p>Enables or disables the Basic (Classic) authentication flow. For more information, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/authentication-flow.html">Identity Pools (Federated Identities) Authentication Flow</a> in the <i>Amazon Cognito Developer Guide</i>.</p>
/// - [`supported_login_providers(Option<HashMap::<String, String>>)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::supported_login_providers): <p>Optional key:value pairs mapping provider names to provider app IDs.</p>
/// - [`developer_provider_name(Option<String>)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::developer_provider_name): <p>The "domain" by which Cognito will refer to your users.</p>
/// - [`open_id_connect_provider_arns(Option<Vec::<String>>)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::open_id_connect_provider_arns): <p>The ARNs of the OpenID Connect providers.</p>
/// - [`cognito_identity_providers(Option<Vec::<CognitoIdentityProvider>>)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::cognito_identity_providers): <p>A list representing an Amazon Cognito user pool and its client ID.</p>
/// - [`saml_provider_arns(Option<Vec::<String>>)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::saml_provider_arns): <p>An array of Amazon Resource Names (ARNs) of the SAML provider for your identity pool.</p>
/// - [`identity_pool_tags(Option<HashMap::<String, String>>)`](crate::operation::create_identity_pool::CreateIdentityPoolOutput::identity_pool_tags): <p>The tags that are assigned to the identity pool. A tag is a label that you can apply to identity pools to categorize and manage them in different ways, such as by purpose, owner, environment, or other criteria.</p>
/// - On failure, responds with [`SdkError<CreateIdentityPoolError>`](crate::operation::create_identity_pool::CreateIdentityPoolError)
pub fn create_identity_pool(&self) -> crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder {
crate::operation::create_identity_pool::builders::CreateIdentityPoolFluentBuilder::new(self.handle.clone())
}
}