Skip to content

UserPoolType

Source code in docs_src/capo_cognito_identity_provider/types/user_pool_type.py
class UserPoolType(TypedDict, closed=True):
    id: NotRequired[
        "capo_cognito_identity_provider.types.user_pool_id_type.UserPoolIdType"
    ]
    """<p>The ID of the user pool.</p>"""
    name: NotRequired[
        "capo_cognito_identity_provider.types.user_pool_name_type.UserPoolNameType"
    ]
    """<p>The name of the user pool.</p>"""
    policies: NotRequired[
        "capo_cognito_identity_provider.types.user_pool_policy_type.UserPoolPolicyType"
    ]
    """<p>A list of user pool policies. Contains the policy that sets password-complexity requirements.</p>"""
    deletion_protection: NotRequired[
        "capo_cognito_identity_provider.types.deletion_protection_type.DeletionProtectionType"
    ]
    """<p>When active, <code>DeletionProtection</code> prevents accidental deletion of your user pool. Before you can delete a user pool that you have protected against deletion, you must deactivate this feature.</p> <p>When you try to delete a protected user pool in a <code>DeleteUserPool</code> API request, Amazon Cognito returns an <code>InvalidParameterException</code> error. To delete a protected user pool, send a new <code>DeleteUserPool</code> request after you deactivate deletion protection in an <code>UpdateUserPool</code> API request.</p>"""
    lambda_config: NotRequired[
        "capo_cognito_identity_provider.types.lambda_config_type.LambdaConfigType"
    ]
    """<p>A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible stages of user pool operations. Triggers can modify the outcome of the operations that invoked them.</p>"""
    status: NotRequired["capo_cognito_identity_provider.types.status_type.StatusType"]
    """<p>This parameter is no longer used.</p>"""
    last_modified_date: NotRequired[
        "capo_cognito_identity_provider.types.date_type.DateType"
    ]
    """<p>The date and time when the item was modified. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a human-readable format like ISO 8601 or a Java <code>Date</code> object.</p>"""
    creation_date: NotRequired[
        "capo_cognito_identity_provider.types.date_type.DateType"
    ]
    """<p>The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a human-readable format like ISO 8601 or a Java <code>Date</code> object.</p>"""
    schema_attributes: NotRequired[
        "capo_cognito_identity_provider.types.schema_attributes_list_type.SchemaAttributesListType"
    ]
    """<p>A list of the user attributes and their properties in your user pool. The attribute schema contains standard attributes, custom attributes with a <code>custom:</code> prefix, and developer attributes with a <code>dev:</code> prefix. For more information, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html">User pool attributes</a>.</p> <p>Developer-only attributes are a legacy feature of user pools, and are read-only to all app clients. You can create and update developer-only attributes only with IAM-authenticated API operations. Use app client read/write permissions instead.</p>"""
    auto_verified_attributes: NotRequired[
        "capo_cognito_identity_provider.types.verified_attributes_list_type.VerifiedAttributesListType"
    ]
    """<p>The attributes that are auto-verified in a user pool.</p>"""
    alias_attributes: NotRequired[
        "capo_cognito_identity_provider.types.alias_attributes_list_type.AliasAttributesListType"
    ]
    """<p>Attributes supported as an alias for this user pool. An alias is an attribute that users can enter as an alternative username. Possible values: <b>phone_number</b>, <b>email</b>, or <b>preferred_username</b>.</p>"""
    username_attributes: NotRequired[
        "capo_cognito_identity_provider.types.username_attributes_list_type.UsernameAttributesListType"
    ]
    """<p>Specifies whether a user can use an email address or phone number as a username when they sign up.</p>"""
    sms_verification_message: NotRequired[
        "capo_cognito_identity_provider.types.sms_verification_message_type.SmsVerificationMessageType"
    ]
    """<p>This parameter is no longer used.</p>"""
    email_verification_message: NotRequired[
        "capo_cognito_identity_provider.types.email_verification_message_type.EmailVerificationMessageType"
    ]
    """<p>This parameter is no longer used.</p>"""
    email_verification_subject: NotRequired[
        "capo_cognito_identity_provider.types.email_verification_subject_type.EmailVerificationSubjectType"
    ]
    """<p>This parameter is no longer used.</p>"""
    verification_message_template: NotRequired[
        "capo_cognito_identity_provider.types.verification_message_template_type.VerificationMessageTemplateType"
    ]
    """<p>The template for the verification message that your user pool delivers to users who set an email address or phone number attribute.</p>"""
    sms_authentication_message: NotRequired[
        "capo_cognito_identity_provider.types.sms_verification_message_type.SmsVerificationMessageType"
    ]
    """<p>The contents of the SMS authentication message.</p>"""
    user_attribute_update_settings: NotRequired[
        "capo_cognito_identity_provider.types.user_attribute_update_settings_type.UserAttributeUpdateSettingsType"
    ]
    """<p>The settings for updates to user attributes. These settings include the property <code>AttributesRequireVerificationBeforeUpdate</code>, a user-pool setting that tells Amazon Cognito how to handle changes to the value of your users' email address and phone number attributes. For more information, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-email-phone-verification.html#user-pool-settings-verifications-verify-attribute-updates"> Verifying updates to email addresses and phone numbers</a>.</p>"""
    mfa_configuration: NotRequired[
        "capo_cognito_identity_provider.types.user_pool_mfa_type.UserPoolMfaType"
    ]
    """<p>Can be one of the following values:</p> <ul> <li> <p> <code>OFF</code> - MFA tokens aren't required and can't be specified during user registration.</p> </li> <li> <p> <code>ON</code> - MFA tokens are required for all user registrations. You can only specify required when you're initially creating a user pool.</p> </li> <li> <p> <code>OPTIONAL</code> - Users have the option when registering to create an MFA token.</p> </li> </ul>"""
    device_configuration: NotRequired[
        "capo_cognito_identity_provider.types.device_configuration_type.DeviceConfigurationType"
    ]
    """<p>The device-remembering configuration for a user pool. A null value indicates that you have deactivated device remembering in your user pool.</p> <note> <p>When you provide a value for any <code>DeviceConfiguration</code> field, you activate the Amazon Cognito device-remembering feature.</p> </note>"""
    estimated_number_of_users: (
        "capo_cognito_identity_provider.types.integer_type.IntegerType"
    )
    """<p>A number estimating the size of the user pool.</p>"""
    email_configuration: NotRequired[
        "capo_cognito_identity_provider.types.email_configuration_type.EmailConfigurationType"
    ]
    """<p>The email configuration of your user pool. The email configuration type sets your preferred sending method, Amazon Web Services Region, and sender for messages from your user pool.</p>"""
    sms_configuration: NotRequired[
        "capo_cognito_identity_provider.types.sms_configuration_type.SmsConfigurationType"
    ]
    """<p>User pool configuration for delivery of SMS messages with Amazon Simple Notification Service. To send SMS messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access Management (IAM) role in your Amazon Web Services account.</p>"""
    user_pool_tags: NotRequired[
        "capo_cognito_identity_provider.types.user_pool_tags_type.UserPoolTagsType"
    ]
    """<p>The tags that are assigned to the user pool. A tag is a label that you can apply to user pools to categorize and manage them in different ways, such as by purpose, owner, environment, or other criteria.</p>"""
    sms_configuration_failure: NotRequired[
        "capo_cognito_identity_provider.types.string_type.StringType"
    ]
    """<p>The reason why the SMS configuration can't send the messages to your users.</p> <p>This message might include comma-separated values to describe why your SMS configuration can't send messages to user pool end users.</p> <dl> <dt>InvalidSmsRoleAccessPolicyException</dt> <dd> <p>The Identity and Access Management role that Amazon Cognito uses to send SMS messages isn't properly configured. For more information, see <a href="https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_SmsConfigurationType.html">SmsConfigurationType</a>.</p> </dd> <dt>SNSSandbox</dt> <dd> <p>The Amazon Web Services account is in the SNS SMS Sandbox and messages will only reach verified end users. This parameter won’t get populated with SNSSandbox if the user creating the user pool doesn’t have SNS permissions. To learn how to move your Amazon Web Services account out of the sandbox, see <a href="https://docs.aws.amazon.com/sns/latest/dg/sns-sms-sandbox-moving-to-production.html">Moving out of the SMS sandbox</a>.</p> </dd> </dl>"""
    email_configuration_failure: NotRequired[
        "capo_cognito_identity_provider.types.string_type.StringType"
    ]
    """<p>Deprecated. Review error codes from API requests with <code>EventSource:cognito-idp.amazonaws.com</code> in CloudTrail for information about problems with user pool email configuration.</p>"""
    domain: NotRequired["capo_cognito_identity_provider.types.domain_type.DomainType"]
    """<p>The domain prefix, if the user pool has a domain associated with it.</p>"""
    custom_domain: NotRequired[
        "capo_cognito_identity_provider.types.domain_type.DomainType"
    ]
    """<p>A custom domain name that you provide to Amazon Cognito. This parameter applies only if you use a custom domain to host the sign-up and sign-in pages for your application. An example of a custom domain name might be <code>auth.example.com</code>.</p> <p>For more information about adding a custom domain to your user pool, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-add-custom-domain.html">Using Your Own Domain for the Hosted UI</a>.</p>"""
    admin_create_user_config: NotRequired[
        "capo_cognito_identity_provider.types.admin_create_user_config_type.AdminCreateUserConfigType"
    ]
    """<p>The configuration for <code>AdminCreateUser</code> requests.</p>"""
    user_pool_add_ons: NotRequired[
        "capo_cognito_identity_provider.types.user_pool_add_ons_type.UserPoolAddOnsType"
    ]
    """<p>Contains settings for activation of threat protection, including the operating mode and additional authentication types. To log user security information but take no action, set to <code>AUDIT</code>. To configure automatic security responses to potentially unwanted traffic to your user pool, set to <code>ENFORCED</code>.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html">Adding advanced security to a user pool</a>. To activate this setting, your user pool must be on the <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-plus.html"> Plus tier</a>.</p>"""
    username_configuration: NotRequired[
        "capo_cognito_identity_provider.types.username_configuration_type.UsernameConfigurationType"
    ]
    """<p>Case sensitivity of the username input for the selected sign-in option. When case sensitivity is set to <code>False</code> (case insensitive), users can sign in with any combination of capital and lowercase letters. For example, <code>username</code>, <code>USERNAME</code>, or <code>UserName</code>, or for email, <code>[email protected]</code> or <code>[email protected]</code>. For most use cases, set case sensitivity to <code>False</code> (case insensitive) as a best practice. When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from being assigned to the same attribute for a different user.</p>"""
    arn: NotRequired["capo_cognito_identity_provider.types.arn_type.ArnType"]
    """<p>The Amazon Resource Name (ARN) of the user pool.</p>"""
    account_recovery_setting: NotRequired[
        "capo_cognito_identity_provider.types.account_recovery_setting_type.AccountRecoverySettingType"
    ]
    """<p>The available verified method a user can use to recover their password when they call <code>ForgotPassword</code>. You can use this setting to define a preferred method when a user has more than one method available. With this setting, SMS doesn't qualify for a valid password recovery mechanism if the user also has SMS multi-factor authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy behavior to determine the recovery method where SMS is preferred through email.</p>"""
    user_pool_tier: NotRequired[
        "capo_cognito_identity_provider.types.user_pool_tier_type.UserPoolTierType"
    ]
    """<p>The user pool <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html">feature plan</a>, or tier. This parameter determines the eligibility of the user pool for features like managed login, access-token customization, and threat protection. Defaults to <code>ESSENTIALS</code>.</p>"""
    key_configuration: NotRequired[
        "capo_cognito_identity_provider.types.key_configuration_type.KeyConfigurationType"
    ]
    """<p>The key configuration for the user pool, including encryption settings.</p>"""
    issuer_configuration: NotRequired[
        "capo_cognito_identity_provider.types.issuer_configuration_type.IssuerConfigurationType"
    ]
    """<p>The issuer configuration for the user pool, including token issuing settings.</p>"""
    acr_configuration: NotRequired[
        "capo_cognito_identity_provider.types.acr_configuration_type.AcrConfigurationType"
    ]
    """<p>The names of the authentication context class reference (ACR) levels for the user pool. Amazon Cognito always returns the effective configuration, with default names merged in for any level that you haven't customized.</p> <p>Configuring custom ACR level names requires the Essentials or Plus feature plan. To activate this setting, your user pool must be in the <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-essentials.html"> Essentials tier</a> or higher.</p>"""

account_recovery_setting instance-attribute

account_recovery_setting: NotRequired[AccountRecoverySettingType]

The available verified method a user can use to recover their password when they call ForgotPassword. You can use this setting to define a preferred method when a user has more than one method available. With this setting, SMS doesn't qualify for a valid password recovery mechanism if the user also has SMS multi-factor authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy behavior to determine the recovery method where SMS is preferred through email.

acr_configuration instance-attribute

acr_configuration: NotRequired[AcrConfigurationType]

The names of the authentication context class reference (ACR) levels for the user pool. Amazon Cognito always returns the effective configuration, with default names merged in for any level that you haven't customized.

Configuring custom ACR level names requires the Essentials or Plus feature plan. To activate this setting, your user pool must be in the Essentials tier or higher.

admin_create_user_config instance-attribute

admin_create_user_config: NotRequired[AdminCreateUserConfigType]

The configuration for AdminCreateUser requests.

alias_attributes instance-attribute

alias_attributes: NotRequired[AliasAttributesListType]

Attributes supported as an alias for this user pool. An alias is an attribute that users can enter as an alternative username. Possible values: phone_number, email, or preferred_username.

arn instance-attribute

arn: NotRequired[ArnType]

The Amazon Resource Name (ARN) of the user pool.

auto_verified_attributes instance-attribute

auto_verified_attributes: NotRequired[VerifiedAttributesListType]

The attributes that are auto-verified in a user pool.

creation_date instance-attribute

creation_date: NotRequired[DateType]

The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a human-readable format like ISO 8601 or a Java Date object.

custom_domain instance-attribute

custom_domain: NotRequired[DomainType]

A custom domain name that you provide to Amazon Cognito. This parameter applies only if you use a custom domain to host the sign-up and sign-in pages for your application. An example of a custom domain name might be auth.example.com.

For more information about adding a custom domain to your user pool, see Using Your Own Domain for the Hosted UI.

deletion_protection instance-attribute

deletion_protection: NotRequired[DeletionProtectionType]

When active, DeletionProtection prevents accidental deletion of your user pool. Before you can delete a user pool that you have protected against deletion, you must deactivate this feature.

When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito returns an InvalidParameterException error. To delete a protected user pool, send a new DeleteUserPool request after you deactivate deletion protection in an UpdateUserPool API request.

device_configuration instance-attribute

device_configuration: NotRequired[DeviceConfigurationType]

The device-remembering configuration for a user pool. A null value indicates that you have deactivated device remembering in your user pool.

When you provide a value for any DeviceConfiguration field, you activate the Amazon Cognito device-remembering feature.

domain instance-attribute

domain: NotRequired[DomainType]

The domain prefix, if the user pool has a domain associated with it.

email_configuration instance-attribute

email_configuration: NotRequired[EmailConfigurationType]

The email configuration of your user pool. The email configuration type sets your preferred sending method, Amazon Web Services Region, and sender for messages from your user pool.

email_configuration_failure instance-attribute

email_configuration_failure: NotRequired[StringType]

Deprecated. Review error codes from API requests with EventSource:cognito-idp.amazonaws.com in CloudTrail for information about problems with user pool email configuration.

email_verification_message instance-attribute

email_verification_message: NotRequired[EmailVerificationMessageType]

This parameter is no longer used.

email_verification_subject instance-attribute

email_verification_subject: NotRequired[EmailVerificationSubjectType]

This parameter is no longer used.

estimated_number_of_users instance-attribute

estimated_number_of_users: IntegerType

A number estimating the size of the user pool.

id instance-attribute

id: NotRequired[UserPoolIdType]

The ID of the user pool.

issuer_configuration instance-attribute

issuer_configuration: NotRequired[IssuerConfigurationType]

The issuer configuration for the user pool, including token issuing settings.

key_configuration instance-attribute

key_configuration: NotRequired[KeyConfigurationType]

The key configuration for the user pool, including encryption settings.

lambda_config instance-attribute

lambda_config: NotRequired[LambdaConfigType]

A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible stages of user pool operations. Triggers can modify the outcome of the operations that invoked them.

last_modified_date instance-attribute

last_modified_date: NotRequired[DateType]

The date and time when the item was modified. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a human-readable format like ISO 8601 or a Java Date object.

mfa_configuration instance-attribute

mfa_configuration: NotRequired[UserPoolMfaType]

Can be one of the following values:

  • OFF - MFA tokens aren't required and can't be specified during user registration.

  • ON - MFA tokens are required for all user registrations. You can only specify required when you're initially creating a user pool.

  • OPTIONAL - Users have the option when registering to create an MFA token.

name instance-attribute

name: NotRequired[UserPoolNameType]

The name of the user pool.

policies instance-attribute

policies: NotRequired[UserPoolPolicyType]

A list of user pool policies. Contains the policy that sets password-complexity requirements.

schema_attributes instance-attribute

schema_attributes: NotRequired[SchemaAttributesListType]

A list of the user attributes and their properties in your user pool. The attribute schema contains standard attributes, custom attributes with a custom: prefix, and developer attributes with a dev: prefix. For more information, see User pool attributes.

Developer-only attributes are a legacy feature of user pools, and are read-only to all app clients. You can create and update developer-only attributes only with IAM-authenticated API operations. Use app client read/write permissions instead.

sms_authentication_message instance-attribute

sms_authentication_message: NotRequired[SmsVerificationMessageType]

The contents of the SMS authentication message.

sms_configuration instance-attribute

sms_configuration: NotRequired[SmsConfigurationType]

User pool configuration for delivery of SMS messages with Amazon Simple Notification Service. To send SMS messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access Management (IAM) role in your Amazon Web Services account.

sms_configuration_failure instance-attribute

sms_configuration_failure: NotRequired[StringType]

The reason why the SMS configuration can't send the messages to your users.

This message might include comma-separated values to describe why your SMS configuration can't send messages to user pool end users.

InvalidSmsRoleAccessPolicyException

The Identity and Access Management role that Amazon Cognito uses to send SMS messages isn't properly configured. For more information, see SmsConfigurationType.

SNSSandbox

The Amazon Web Services account is in the SNS SMS Sandbox and messages will only reach verified end users. This parameter won’t get populated with SNSSandbox if the user creating the user pool doesn’t have SNS permissions. To learn how to move your Amazon Web Services account out of the sandbox, see Moving out of the SMS sandbox.

sms_verification_message instance-attribute

sms_verification_message: NotRequired[SmsVerificationMessageType]

This parameter is no longer used.

status instance-attribute

status: NotRequired[StatusType]

This parameter is no longer used.

user_attribute_update_settings instance-attribute

user_attribute_update_settings: NotRequired[UserAttributeUpdateSettingsType]

The settings for updates to user attributes. These settings include the property AttributesRequireVerificationBeforeUpdate, a user-pool setting that tells Amazon Cognito how to handle changes to the value of your users' email address and phone number attributes. For more information, see Verifying updates to email addresses and phone numbers.

user_pool_add_ons instance-attribute

user_pool_add_ons: NotRequired[UserPoolAddOnsType]

Contains settings for activation of threat protection, including the operating mode and additional authentication types. To log user security information but take no action, set to AUDIT. To configure automatic security responses to potentially unwanted traffic to your user pool, set to ENFORCED.

For more information, see Adding advanced security to a user pool. To activate this setting, your user pool must be on the Plus tier.

user_pool_tags instance-attribute

user_pool_tags: NotRequired[UserPoolTagsType]

The tags that are assigned to the user pool. A tag is a label that you can apply to user pools to categorize and manage them in different ways, such as by purpose, owner, environment, or other criteria.

user_pool_tier instance-attribute

user_pool_tier: NotRequired[UserPoolTierType]

The user pool feature plan, or tier. This parameter determines the eligibility of the user pool for features like managed login, access-token customization, and threat protection. Defaults to ESSENTIALS.

username_attributes instance-attribute

username_attributes: NotRequired[UsernameAttributesListType]

Specifies whether a user can use an email address or phone number as a username when they sign up.

username_configuration instance-attribute

username_configuration: NotRequired[UsernameConfigurationType]

Case sensitivity of the username input for the selected sign-in option. When case sensitivity is set to False (case insensitive), users can sign in with any combination of capital and lowercase letters. For example, username, USERNAME, or UserName, or for email, [email protected] or [email protected]. For most use cases, set case sensitivity to False (case insensitive) as a best practice. When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from being assigned to the same attribute for a different user.

verification_message_template instance-attribute

verification_message_template: NotRequired[VerificationMessageTemplateType]

The template for the verification message that your user pool delivers to users who set an email address or phone number attribute.