/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace CognitoIdentityProvider { namespace Model { /** *

Represents the request to create a user pool.

See Also:

AWS * API Reference

*/ class CreateUserPoolRequest : public CognitoIdentityProviderRequest { public: AWS_COGNITOIDENTITYPROVIDER_API CreateUserPoolRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateUserPool"; } AWS_COGNITOIDENTITYPROVIDER_API Aws::String SerializePayload() const override; AWS_COGNITOIDENTITYPROVIDER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

A string used to name the user pool.

*/ inline const Aws::String& GetPoolName() const{ return m_poolName; } /** *

A string used to name the user pool.

*/ inline bool PoolNameHasBeenSet() const { return m_poolNameHasBeenSet; } /** *

A string used to name the user pool.

*/ inline void SetPoolName(const Aws::String& value) { m_poolNameHasBeenSet = true; m_poolName = value; } /** *

A string used to name the user pool.

*/ inline void SetPoolName(Aws::String&& value) { m_poolNameHasBeenSet = true; m_poolName = std::move(value); } /** *

A string used to name the user pool.

*/ inline void SetPoolName(const char* value) { m_poolNameHasBeenSet = true; m_poolName.assign(value); } /** *

A string used to name the user pool.

*/ inline CreateUserPoolRequest& WithPoolName(const Aws::String& value) { SetPoolName(value); return *this;} /** *

A string used to name the user pool.

*/ inline CreateUserPoolRequest& WithPoolName(Aws::String&& value) { SetPoolName(std::move(value)); return *this;} /** *

A string used to name the user pool.

*/ inline CreateUserPoolRequest& WithPoolName(const char* value) { SetPoolName(value); return *this;} /** *

The policies associated with the new user pool.

*/ inline const UserPoolPolicyType& GetPolicies() const{ return m_policies; } /** *

The policies associated with the new user pool.

*/ inline bool PoliciesHasBeenSet() const { return m_policiesHasBeenSet; } /** *

The policies associated with the new user pool.

*/ inline void SetPolicies(const UserPoolPolicyType& value) { m_policiesHasBeenSet = true; m_policies = value; } /** *

The policies associated with the new user pool.

*/ inline void SetPolicies(UserPoolPolicyType&& value) { m_policiesHasBeenSet = true; m_policies = std::move(value); } /** *

The policies associated with the new user pool.

*/ inline CreateUserPoolRequest& WithPolicies(const UserPoolPolicyType& value) { SetPolicies(value); return *this;} /** *

The policies associated with the new user pool.

*/ inline CreateUserPoolRequest& WithPolicies(UserPoolPolicyType&& value) { SetPolicies(std::move(value)); return *this;} /** *

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.

*/ inline const DeletionProtectionType& GetDeletionProtection() const{ return m_deletionProtection; } /** *

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.

*/ inline bool DeletionProtectionHasBeenSet() const { return m_deletionProtectionHasBeenSet; } /** *

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.

*/ inline void SetDeletionProtection(const DeletionProtectionType& value) { m_deletionProtectionHasBeenSet = true; m_deletionProtection = value; } /** *

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.

*/ inline void SetDeletionProtection(DeletionProtectionType&& value) { m_deletionProtectionHasBeenSet = true; m_deletionProtection = std::move(value); } /** *

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.

*/ inline CreateUserPoolRequest& WithDeletionProtection(const DeletionProtectionType& value) { SetDeletionProtection(value); return *this;} /** *

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.

*/ inline CreateUserPoolRequest& WithDeletionProtection(DeletionProtectionType&& value) { SetDeletionProtection(std::move(value)); return *this;} /** *

The Lambda trigger configuration information for the new user pool.

*

In a push model, event sources (such as Amazon S3 and custom * applications) need permission to invoke a function. So you must make an extra * call to add permission for these event sources to invoke your Lambda * function.

For more information on using the Lambda API to add * permission, see * AddPermission .

For adding permission using the CLI, see * add-permission .

*/ inline const LambdaConfigType& GetLambdaConfig() const{ return m_lambdaConfig; } /** *

The Lambda trigger configuration information for the new user pool.

*

In a push model, event sources (such as Amazon S3 and custom * applications) need permission to invoke a function. So you must make an extra * call to add permission for these event sources to invoke your Lambda * function.

For more information on using the Lambda API to add * permission, see * AddPermission .

For adding permission using the CLI, see * add-permission .

*/ inline bool LambdaConfigHasBeenSet() const { return m_lambdaConfigHasBeenSet; } /** *

The Lambda trigger configuration information for the new user pool.

*

In a push model, event sources (such as Amazon S3 and custom * applications) need permission to invoke a function. So you must make an extra * call to add permission for these event sources to invoke your Lambda * function.

For more information on using the Lambda API to add * permission, see * AddPermission .

For adding permission using the CLI, see * add-permission .

*/ inline void SetLambdaConfig(const LambdaConfigType& value) { m_lambdaConfigHasBeenSet = true; m_lambdaConfig = value; } /** *

The Lambda trigger configuration information for the new user pool.

*

In a push model, event sources (such as Amazon S3 and custom * applications) need permission to invoke a function. So you must make an extra * call to add permission for these event sources to invoke your Lambda * function.

For more information on using the Lambda API to add * permission, see * AddPermission .

For adding permission using the CLI, see * add-permission .

*/ inline void SetLambdaConfig(LambdaConfigType&& value) { m_lambdaConfigHasBeenSet = true; m_lambdaConfig = std::move(value); } /** *

The Lambda trigger configuration information for the new user pool.

*

In a push model, event sources (such as Amazon S3 and custom * applications) need permission to invoke a function. So you must make an extra * call to add permission for these event sources to invoke your Lambda * function.

For more information on using the Lambda API to add * permission, see * AddPermission .

For adding permission using the CLI, see * add-permission .

*/ inline CreateUserPoolRequest& WithLambdaConfig(const LambdaConfigType& value) { SetLambdaConfig(value); return *this;} /** *

The Lambda trigger configuration information for the new user pool.

*

In a push model, event sources (such as Amazon S3 and custom * applications) need permission to invoke a function. So you must make an extra * call to add permission for these event sources to invoke your Lambda * function.

For more information on using the Lambda API to add * permission, see * AddPermission .

For adding permission using the CLI, see * add-permission .

*/ inline CreateUserPoolRequest& WithLambdaConfig(LambdaConfigType&& value) { SetLambdaConfig(std::move(value)); return *this;} /** *

The attributes to be auto-verified. Possible values: email, * phone_number.

*/ inline const Aws::Vector& GetAutoVerifiedAttributes() const{ return m_autoVerifiedAttributes; } /** *

The attributes to be auto-verified. Possible values: email, * phone_number.

*/ inline bool AutoVerifiedAttributesHasBeenSet() const { return m_autoVerifiedAttributesHasBeenSet; } /** *

The attributes to be auto-verified. Possible values: email, * phone_number.

*/ inline void SetAutoVerifiedAttributes(const Aws::Vector& value) { m_autoVerifiedAttributesHasBeenSet = true; m_autoVerifiedAttributes = value; } /** *

The attributes to be auto-verified. Possible values: email, * phone_number.

*/ inline void SetAutoVerifiedAttributes(Aws::Vector&& value) { m_autoVerifiedAttributesHasBeenSet = true; m_autoVerifiedAttributes = std::move(value); } /** *

The attributes to be auto-verified. Possible values: email, * phone_number.

*/ inline CreateUserPoolRequest& WithAutoVerifiedAttributes(const Aws::Vector& value) { SetAutoVerifiedAttributes(value); return *this;} /** *

The attributes to be auto-verified. Possible values: email, * phone_number.

*/ inline CreateUserPoolRequest& WithAutoVerifiedAttributes(Aws::Vector&& value) { SetAutoVerifiedAttributes(std::move(value)); return *this;} /** *

The attributes to be auto-verified. Possible values: email, * phone_number.

*/ inline CreateUserPoolRequest& AddAutoVerifiedAttributes(const VerifiedAttributeType& value) { m_autoVerifiedAttributesHasBeenSet = true; m_autoVerifiedAttributes.push_back(value); return *this; } /** *

The attributes to be auto-verified. Possible values: email, * phone_number.

*/ inline CreateUserPoolRequest& AddAutoVerifiedAttributes(VerifiedAttributeType&& value) { m_autoVerifiedAttributesHasBeenSet = true; m_autoVerifiedAttributes.push_back(std::move(value)); return *this; } /** *

Attributes supported as an alias for this user pool. Possible values: * phone_number, email, or preferred_username.

*/ inline const Aws::Vector& GetAliasAttributes() const{ return m_aliasAttributes; } /** *

Attributes supported as an alias for this user pool. Possible values: * phone_number, email, or preferred_username.

*/ inline bool AliasAttributesHasBeenSet() const { return m_aliasAttributesHasBeenSet; } /** *

Attributes supported as an alias for this user pool. Possible values: * phone_number, email, or preferred_username.

*/ inline void SetAliasAttributes(const Aws::Vector& value) { m_aliasAttributesHasBeenSet = true; m_aliasAttributes = value; } /** *

Attributes supported as an alias for this user pool. Possible values: * phone_number, email, or preferred_username.

*/ inline void SetAliasAttributes(Aws::Vector&& value) { m_aliasAttributesHasBeenSet = true; m_aliasAttributes = std::move(value); } /** *

Attributes supported as an alias for this user pool. Possible values: * phone_number, email, or preferred_username.

*/ inline CreateUserPoolRequest& WithAliasAttributes(const Aws::Vector& value) { SetAliasAttributes(value); return *this;} /** *

Attributes supported as an alias for this user pool. Possible values: * phone_number, email, or preferred_username.

*/ inline CreateUserPoolRequest& WithAliasAttributes(Aws::Vector&& value) { SetAliasAttributes(std::move(value)); return *this;} /** *

Attributes supported as an alias for this user pool. Possible values: * phone_number, email, or preferred_username.

*/ inline CreateUserPoolRequest& AddAliasAttributes(const AliasAttributeType& value) { m_aliasAttributesHasBeenSet = true; m_aliasAttributes.push_back(value); return *this; } /** *

Attributes supported as an alias for this user pool. Possible values: * phone_number, email, or preferred_username.

*/ inline CreateUserPoolRequest& AddAliasAttributes(AliasAttributeType&& value) { m_aliasAttributesHasBeenSet = true; m_aliasAttributes.push_back(std::move(value)); return *this; } /** *

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

*/ inline const Aws::Vector& GetUsernameAttributes() const{ return m_usernameAttributes; } /** *

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

*/ inline bool UsernameAttributesHasBeenSet() const { return m_usernameAttributesHasBeenSet; } /** *

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

*/ inline void SetUsernameAttributes(const Aws::Vector& value) { m_usernameAttributesHasBeenSet = true; m_usernameAttributes = value; } /** *

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

*/ inline void SetUsernameAttributes(Aws::Vector&& value) { m_usernameAttributesHasBeenSet = true; m_usernameAttributes = std::move(value); } /** *

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

*/ inline CreateUserPoolRequest& WithUsernameAttributes(const Aws::Vector& value) { SetUsernameAttributes(value); return *this;} /** *

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

*/ inline CreateUserPoolRequest& WithUsernameAttributes(Aws::Vector&& value) { SetUsernameAttributes(std::move(value)); return *this;} /** *

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

*/ inline CreateUserPoolRequest& AddUsernameAttributes(const UsernameAttributeType& value) { m_usernameAttributesHasBeenSet = true; m_usernameAttributes.push_back(value); return *this; } /** *

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

*/ inline CreateUserPoolRequest& AddUsernameAttributes(UsernameAttributeType&& value) { m_usernameAttributesHasBeenSet = true; m_usernameAttributes.push_back(std::move(value)); return *this; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline const Aws::String& GetSmsVerificationMessage() const{ return m_smsVerificationMessage; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline bool SmsVerificationMessageHasBeenSet() const { return m_smsVerificationMessageHasBeenSet; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline void SetSmsVerificationMessage(const Aws::String& value) { m_smsVerificationMessageHasBeenSet = true; m_smsVerificationMessage = value; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline void SetSmsVerificationMessage(Aws::String&& value) { m_smsVerificationMessageHasBeenSet = true; m_smsVerificationMessage = std::move(value); } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline void SetSmsVerificationMessage(const char* value) { m_smsVerificationMessageHasBeenSet = true; m_smsVerificationMessage.assign(value); } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline CreateUserPoolRequest& WithSmsVerificationMessage(const Aws::String& value) { SetSmsVerificationMessage(value); return *this;} /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline CreateUserPoolRequest& WithSmsVerificationMessage(Aws::String&& value) { SetSmsVerificationMessage(std::move(value)); return *this;} /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline CreateUserPoolRequest& WithSmsVerificationMessage(const char* value) { SetSmsVerificationMessage(value); return *this;} /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline const Aws::String& GetEmailVerificationMessage() const{ return m_emailVerificationMessage; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline bool EmailVerificationMessageHasBeenSet() const { return m_emailVerificationMessageHasBeenSet; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline void SetEmailVerificationMessage(const Aws::String& value) { m_emailVerificationMessageHasBeenSet = true; m_emailVerificationMessage = value; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline void SetEmailVerificationMessage(Aws::String&& value) { m_emailVerificationMessageHasBeenSet = true; m_emailVerificationMessage = std::move(value); } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline void SetEmailVerificationMessage(const char* value) { m_emailVerificationMessageHasBeenSet = true; m_emailVerificationMessage.assign(value); } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline CreateUserPoolRequest& WithEmailVerificationMessage(const Aws::String& value) { SetEmailVerificationMessage(value); return *this;} /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline CreateUserPoolRequest& WithEmailVerificationMessage(Aws::String&& value) { SetEmailVerificationMessage(std::move(value)); return *this;} /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline CreateUserPoolRequest& WithEmailVerificationMessage(const char* value) { SetEmailVerificationMessage(value); return *this;} /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline const Aws::String& GetEmailVerificationSubject() const{ return m_emailVerificationSubject; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline bool EmailVerificationSubjectHasBeenSet() const { return m_emailVerificationSubjectHasBeenSet; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline void SetEmailVerificationSubject(const Aws::String& value) { m_emailVerificationSubjectHasBeenSet = true; m_emailVerificationSubject = value; } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline void SetEmailVerificationSubject(Aws::String&& value) { m_emailVerificationSubjectHasBeenSet = true; m_emailVerificationSubject = std::move(value); } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline void SetEmailVerificationSubject(const char* value) { m_emailVerificationSubjectHasBeenSet = true; m_emailVerificationSubject.assign(value); } /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline CreateUserPoolRequest& WithEmailVerificationSubject(const Aws::String& value) { SetEmailVerificationSubject(value); return *this;} /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline CreateUserPoolRequest& WithEmailVerificationSubject(Aws::String&& value) { SetEmailVerificationSubject(std::move(value)); return *this;} /** *

This parameter is no longer used. See VerificationMessageTemplateType.

*/ inline CreateUserPoolRequest& WithEmailVerificationSubject(const char* value) { SetEmailVerificationSubject(value); return *this;} /** *

The template for the verification message that the user sees when the app * requests permission to access the user's information.

*/ inline const VerificationMessageTemplateType& GetVerificationMessageTemplate() const{ return m_verificationMessageTemplate; } /** *

The template for the verification message that the user sees when the app * requests permission to access the user's information.

*/ inline bool VerificationMessageTemplateHasBeenSet() const { return m_verificationMessageTemplateHasBeenSet; } /** *

The template for the verification message that the user sees when the app * requests permission to access the user's information.

*/ inline void SetVerificationMessageTemplate(const VerificationMessageTemplateType& value) { m_verificationMessageTemplateHasBeenSet = true; m_verificationMessageTemplate = value; } /** *

The template for the verification message that the user sees when the app * requests permission to access the user's information.

*/ inline void SetVerificationMessageTemplate(VerificationMessageTemplateType&& value) { m_verificationMessageTemplateHasBeenSet = true; m_verificationMessageTemplate = std::move(value); } /** *

The template for the verification message that the user sees when the app * requests permission to access the user's information.

*/ inline CreateUserPoolRequest& WithVerificationMessageTemplate(const VerificationMessageTemplateType& value) { SetVerificationMessageTemplate(value); return *this;} /** *

The template for the verification message that the user sees when the app * requests permission to access the user's information.

*/ inline CreateUserPoolRequest& WithVerificationMessageTemplate(VerificationMessageTemplateType&& value) { SetVerificationMessageTemplate(std::move(value)); return *this;} /** *

A string representing the SMS authentication message.

*/ inline const Aws::String& GetSmsAuthenticationMessage() const{ return m_smsAuthenticationMessage; } /** *

A string representing the SMS authentication message.

*/ inline bool SmsAuthenticationMessageHasBeenSet() const { return m_smsAuthenticationMessageHasBeenSet; } /** *

A string representing the SMS authentication message.

*/ inline void SetSmsAuthenticationMessage(const Aws::String& value) { m_smsAuthenticationMessageHasBeenSet = true; m_smsAuthenticationMessage = value; } /** *

A string representing the SMS authentication message.

*/ inline void SetSmsAuthenticationMessage(Aws::String&& value) { m_smsAuthenticationMessageHasBeenSet = true; m_smsAuthenticationMessage = std::move(value); } /** *

A string representing the SMS authentication message.

*/ inline void SetSmsAuthenticationMessage(const char* value) { m_smsAuthenticationMessageHasBeenSet = true; m_smsAuthenticationMessage.assign(value); } /** *

A string representing the SMS authentication message.

*/ inline CreateUserPoolRequest& WithSmsAuthenticationMessage(const Aws::String& value) { SetSmsAuthenticationMessage(value); return *this;} /** *

A string representing the SMS authentication message.

*/ inline CreateUserPoolRequest& WithSmsAuthenticationMessage(Aws::String&& value) { SetSmsAuthenticationMessage(std::move(value)); return *this;} /** *

A string representing the SMS authentication message.

*/ inline CreateUserPoolRequest& WithSmsAuthenticationMessage(const char* value) { SetSmsAuthenticationMessage(value); return *this;} /** *

Specifies MFA configuration details.

*/ inline const UserPoolMfaType& GetMfaConfiguration() const{ return m_mfaConfiguration; } /** *

Specifies MFA configuration details.

*/ inline bool MfaConfigurationHasBeenSet() const { return m_mfaConfigurationHasBeenSet; } /** *

Specifies MFA configuration details.

*/ inline void SetMfaConfiguration(const UserPoolMfaType& value) { m_mfaConfigurationHasBeenSet = true; m_mfaConfiguration = value; } /** *

Specifies MFA configuration details.

*/ inline void SetMfaConfiguration(UserPoolMfaType&& value) { m_mfaConfigurationHasBeenSet = true; m_mfaConfiguration = std::move(value); } /** *

Specifies MFA configuration details.

*/ inline CreateUserPoolRequest& WithMfaConfiguration(const UserPoolMfaType& value) { SetMfaConfiguration(value); return *this;} /** *

Specifies MFA configuration details.

*/ inline CreateUserPoolRequest& WithMfaConfiguration(UserPoolMfaType&& value) { SetMfaConfiguration(std::move(value)); return *this;} /** *

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.

*/ inline const UserAttributeUpdateSettingsType& GetUserAttributeUpdateSettings() const{ return m_userAttributeUpdateSettings; } /** *

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.

*/ inline bool UserAttributeUpdateSettingsHasBeenSet() const { return m_userAttributeUpdateSettingsHasBeenSet; } /** *

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.

*/ inline void SetUserAttributeUpdateSettings(const UserAttributeUpdateSettingsType& value) { m_userAttributeUpdateSettingsHasBeenSet = true; m_userAttributeUpdateSettings = value; } /** *

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.

*/ inline void SetUserAttributeUpdateSettings(UserAttributeUpdateSettingsType&& value) { m_userAttributeUpdateSettingsHasBeenSet = true; m_userAttributeUpdateSettings = std::move(value); } /** *

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.

*/ inline CreateUserPoolRequest& WithUserAttributeUpdateSettings(const UserAttributeUpdateSettingsType& value) { SetUserAttributeUpdateSettings(value); return *this;} /** *

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.

*/ inline CreateUserPoolRequest& WithUserAttributeUpdateSettings(UserAttributeUpdateSettingsType&& value) { SetUserAttributeUpdateSettings(std::move(value)); return *this;} /** *

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.

*/ inline const DeviceConfigurationType& GetDeviceConfiguration() const{ return m_deviceConfiguration; } /** *

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.

*/ inline bool DeviceConfigurationHasBeenSet() const { return m_deviceConfigurationHasBeenSet; } /** *

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.

*/ inline void SetDeviceConfiguration(const DeviceConfigurationType& value) { m_deviceConfigurationHasBeenSet = true; m_deviceConfiguration = value; } /** *

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.

*/ inline void SetDeviceConfiguration(DeviceConfigurationType&& value) { m_deviceConfigurationHasBeenSet = true; m_deviceConfiguration = std::move(value); } /** *

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.

*/ inline CreateUserPoolRequest& WithDeviceConfiguration(const DeviceConfigurationType& value) { SetDeviceConfiguration(value); return *this;} /** *

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.

*/ inline CreateUserPoolRequest& WithDeviceConfiguration(DeviceConfigurationType&& value) { SetDeviceConfiguration(std::move(value)); return *this;} /** *

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.

*/ inline const EmailConfigurationType& GetEmailConfiguration() const{ return m_emailConfiguration; } /** *

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.

*/ inline bool EmailConfigurationHasBeenSet() const { return m_emailConfigurationHasBeenSet; } /** *

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.

*/ inline void SetEmailConfiguration(const EmailConfigurationType& value) { m_emailConfigurationHasBeenSet = true; m_emailConfiguration = value; } /** *

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.

*/ inline void SetEmailConfiguration(EmailConfigurationType&& value) { m_emailConfigurationHasBeenSet = true; m_emailConfiguration = std::move(value); } /** *

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.

*/ inline CreateUserPoolRequest& WithEmailConfiguration(const EmailConfigurationType& value) { SetEmailConfiguration(value); return *this;} /** *

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.

*/ inline CreateUserPoolRequest& WithEmailConfiguration(EmailConfigurationType&& value) { SetEmailConfiguration(std::move(value)); return *this;} /** *

The SMS configuration with the settings that your Amazon Cognito user pool * must use to send an SMS message from your Amazon Web Services account through * 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.

*/ inline const SmsConfigurationType& GetSmsConfiguration() const{ return m_smsConfiguration; } /** *

The SMS configuration with the settings that your Amazon Cognito user pool * must use to send an SMS message from your Amazon Web Services account through * 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.

*/ inline bool SmsConfigurationHasBeenSet() const { return m_smsConfigurationHasBeenSet; } /** *

The SMS configuration with the settings that your Amazon Cognito user pool * must use to send an SMS message from your Amazon Web Services account through * 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.

*/ inline void SetSmsConfiguration(const SmsConfigurationType& value) { m_smsConfigurationHasBeenSet = true; m_smsConfiguration = value; } /** *

The SMS configuration with the settings that your Amazon Cognito user pool * must use to send an SMS message from your Amazon Web Services account through * 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.

*/ inline void SetSmsConfiguration(SmsConfigurationType&& value) { m_smsConfigurationHasBeenSet = true; m_smsConfiguration = std::move(value); } /** *

The SMS configuration with the settings that your Amazon Cognito user pool * must use to send an SMS message from your Amazon Web Services account through * 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.

*/ inline CreateUserPoolRequest& WithSmsConfiguration(const SmsConfigurationType& value) { SetSmsConfiguration(value); return *this;} /** *

The SMS configuration with the settings that your Amazon Cognito user pool * must use to send an SMS message from your Amazon Web Services account through * 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.

*/ inline CreateUserPoolRequest& WithSmsConfiguration(SmsConfigurationType&& value) { SetSmsConfiguration(std::move(value)); return *this;} /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline const Aws::Map& GetUserPoolTags() const{ return m_userPoolTags; } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline bool UserPoolTagsHasBeenSet() const { return m_userPoolTagsHasBeenSet; } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline void SetUserPoolTags(const Aws::Map& value) { m_userPoolTagsHasBeenSet = true; m_userPoolTags = value; } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline void SetUserPoolTags(Aws::Map&& value) { m_userPoolTagsHasBeenSet = true; m_userPoolTags = std::move(value); } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline CreateUserPoolRequest& WithUserPoolTags(const Aws::Map& value) { SetUserPoolTags(value); return *this;} /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline CreateUserPoolRequest& WithUserPoolTags(Aws::Map&& value) { SetUserPoolTags(std::move(value)); return *this;} /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline CreateUserPoolRequest& AddUserPoolTags(const Aws::String& key, const Aws::String& value) { m_userPoolTagsHasBeenSet = true; m_userPoolTags.emplace(key, value); return *this; } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline CreateUserPoolRequest& AddUserPoolTags(Aws::String&& key, const Aws::String& value) { m_userPoolTagsHasBeenSet = true; m_userPoolTags.emplace(std::move(key), value); return *this; } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline CreateUserPoolRequest& AddUserPoolTags(const Aws::String& key, Aws::String&& value) { m_userPoolTagsHasBeenSet = true; m_userPoolTags.emplace(key, std::move(value)); return *this; } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline CreateUserPoolRequest& AddUserPoolTags(Aws::String&& key, Aws::String&& value) { m_userPoolTagsHasBeenSet = true; m_userPoolTags.emplace(std::move(key), std::move(value)); return *this; } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline CreateUserPoolRequest& AddUserPoolTags(const char* key, Aws::String&& value) { m_userPoolTagsHasBeenSet = true; m_userPoolTags.emplace(key, std::move(value)); return *this; } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline CreateUserPoolRequest& AddUserPoolTags(Aws::String&& key, const char* value) { m_userPoolTagsHasBeenSet = true; m_userPoolTags.emplace(std::move(key), value); return *this; } /** *

The tag keys and values to assign to the user pool. A tag is a label that you * can use to categorize and manage user pools in different ways, such as by * purpose, owner, environment, or other criteria.

*/ inline CreateUserPoolRequest& AddUserPoolTags(const char* key, const char* value) { m_userPoolTagsHasBeenSet = true; m_userPoolTags.emplace(key, value); return *this; } /** *

The configuration for AdminCreateUser requests.

*/ inline const AdminCreateUserConfigType& GetAdminCreateUserConfig() const{ return m_adminCreateUserConfig; } /** *

The configuration for AdminCreateUser requests.

*/ inline bool AdminCreateUserConfigHasBeenSet() const { return m_adminCreateUserConfigHasBeenSet; } /** *

The configuration for AdminCreateUser requests.

*/ inline void SetAdminCreateUserConfig(const AdminCreateUserConfigType& value) { m_adminCreateUserConfigHasBeenSet = true; m_adminCreateUserConfig = value; } /** *

The configuration for AdminCreateUser requests.

*/ inline void SetAdminCreateUserConfig(AdminCreateUserConfigType&& value) { m_adminCreateUserConfigHasBeenSet = true; m_adminCreateUserConfig = std::move(value); } /** *

The configuration for AdminCreateUser requests.

*/ inline CreateUserPoolRequest& WithAdminCreateUserConfig(const AdminCreateUserConfigType& value) { SetAdminCreateUserConfig(value); return *this;} /** *

The configuration for AdminCreateUser requests.

*/ inline CreateUserPoolRequest& WithAdminCreateUserConfig(AdminCreateUserConfigType&& value) { SetAdminCreateUserConfig(std::move(value)); return *this;} /** *

An array of schema attributes for the new user pool. These attributes can be * standard or custom attributes.

*/ inline const Aws::Vector& GetSchema() const{ return m_schema; } /** *

An array of schema attributes for the new user pool. These attributes can be * standard or custom attributes.

*/ inline bool SchemaHasBeenSet() const { return m_schemaHasBeenSet; } /** *

An array of schema attributes for the new user pool. These attributes can be * standard or custom attributes.

*/ inline void SetSchema(const Aws::Vector& value) { m_schemaHasBeenSet = true; m_schema = value; } /** *

An array of schema attributes for the new user pool. These attributes can be * standard or custom attributes.

*/ inline void SetSchema(Aws::Vector&& value) { m_schemaHasBeenSet = true; m_schema = std::move(value); } /** *

An array of schema attributes for the new user pool. These attributes can be * standard or custom attributes.

*/ inline CreateUserPoolRequest& WithSchema(const Aws::Vector& value) { SetSchema(value); return *this;} /** *

An array of schema attributes for the new user pool. These attributes can be * standard or custom attributes.

*/ inline CreateUserPoolRequest& WithSchema(Aws::Vector&& value) { SetSchema(std::move(value)); return *this;} /** *

An array of schema attributes for the new user pool. These attributes can be * standard or custom attributes.

*/ inline CreateUserPoolRequest& AddSchema(const SchemaAttributeType& value) { m_schemaHasBeenSet = true; m_schema.push_back(value); return *this; } /** *

An array of schema attributes for the new user pool. These attributes can be * standard or custom attributes.

*/ inline CreateUserPoolRequest& AddSchema(SchemaAttributeType&& value) { m_schemaHasBeenSet = true; m_schema.push_back(std::move(value)); return *this; } /** *

Enables advanced security risk detection. Set the key * AdvancedSecurityMode to the value "AUDIT".

*/ inline const UserPoolAddOnsType& GetUserPoolAddOns() const{ return m_userPoolAddOns; } /** *

Enables advanced security risk detection. Set the key * AdvancedSecurityMode to the value "AUDIT".

*/ inline bool UserPoolAddOnsHasBeenSet() const { return m_userPoolAddOnsHasBeenSet; } /** *

Enables advanced security risk detection. Set the key * AdvancedSecurityMode to the value "AUDIT".

*/ inline void SetUserPoolAddOns(const UserPoolAddOnsType& value) { m_userPoolAddOnsHasBeenSet = true; m_userPoolAddOns = value; } /** *

Enables advanced security risk detection. Set the key * AdvancedSecurityMode to the value "AUDIT".

*/ inline void SetUserPoolAddOns(UserPoolAddOnsType&& value) { m_userPoolAddOnsHasBeenSet = true; m_userPoolAddOns = std::move(value); } /** *

Enables advanced security risk detection. Set the key * AdvancedSecurityMode to the value "AUDIT".

*/ inline CreateUserPoolRequest& WithUserPoolAddOns(const UserPoolAddOnsType& value) { SetUserPoolAddOns(value); return *this;} /** *

Enables advanced security risk detection. Set the key * AdvancedSecurityMode to the value "AUDIT".

*/ inline CreateUserPoolRequest& WithUserPoolAddOns(UserPoolAddOnsType&& value) { SetUserPoolAddOns(std::move(value)); return *this;} /** *

Case sensitivity on the username input for the selected sign-in option. For * example, when case sensitivity is set to False, users can sign in * using either "username" or "Username". This configuration is immutable once it * has been set. For more information, see UsernameConfigurationType.

*/ inline const UsernameConfigurationType& GetUsernameConfiguration() const{ return m_usernameConfiguration; } /** *

Case sensitivity on the username input for the selected sign-in option. For * example, when case sensitivity is set to False, users can sign in * using either "username" or "Username". This configuration is immutable once it * has been set. For more information, see UsernameConfigurationType.

*/ inline bool UsernameConfigurationHasBeenSet() const { return m_usernameConfigurationHasBeenSet; } /** *

Case sensitivity on the username input for the selected sign-in option. For * example, when case sensitivity is set to False, users can sign in * using either "username" or "Username". This configuration is immutable once it * has been set. For more information, see UsernameConfigurationType.

*/ inline void SetUsernameConfiguration(const UsernameConfigurationType& value) { m_usernameConfigurationHasBeenSet = true; m_usernameConfiguration = value; } /** *

Case sensitivity on the username input for the selected sign-in option. For * example, when case sensitivity is set to False, users can sign in * using either "username" or "Username". This configuration is immutable once it * has been set. For more information, see UsernameConfigurationType.

*/ inline void SetUsernameConfiguration(UsernameConfigurationType&& value) { m_usernameConfigurationHasBeenSet = true; m_usernameConfiguration = std::move(value); } /** *

Case sensitivity on the username input for the selected sign-in option. For * example, when case sensitivity is set to False, users can sign in * using either "username" or "Username". This configuration is immutable once it * has been set. For more information, see UsernameConfigurationType.

*/ inline CreateUserPoolRequest& WithUsernameConfiguration(const UsernameConfigurationType& value) { SetUsernameConfiguration(value); return *this;} /** *

Case sensitivity on the username input for the selected sign-in option. For * example, when case sensitivity is set to False, users can sign in * using either "username" or "Username". This configuration is immutable once it * has been set. For more information, see UsernameConfigurationType.

*/ inline CreateUserPoolRequest& WithUsernameConfiguration(UsernameConfigurationType&& value) { SetUsernameConfiguration(std::move(value)); return *this;} /** *

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.

*/ inline const AccountRecoverySettingType& GetAccountRecoverySetting() const{ return m_accountRecoverySetting; } /** *

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.

*/ inline bool AccountRecoverySettingHasBeenSet() const { return m_accountRecoverySettingHasBeenSet; } /** *

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.

*/ inline void SetAccountRecoverySetting(const AccountRecoverySettingType& value) { m_accountRecoverySettingHasBeenSet = true; m_accountRecoverySetting = value; } /** *

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.

*/ inline void SetAccountRecoverySetting(AccountRecoverySettingType&& value) { m_accountRecoverySettingHasBeenSet = true; m_accountRecoverySetting = std::move(value); } /** *

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.

*/ inline CreateUserPoolRequest& WithAccountRecoverySetting(const AccountRecoverySettingType& value) { SetAccountRecoverySetting(value); return *this;} /** *

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.

*/ inline CreateUserPoolRequest& WithAccountRecoverySetting(AccountRecoverySettingType&& value) { SetAccountRecoverySetting(std::move(value)); return *this;} private: Aws::String m_poolName; bool m_poolNameHasBeenSet = false; UserPoolPolicyType m_policies; bool m_policiesHasBeenSet = false; DeletionProtectionType m_deletionProtection; bool m_deletionProtectionHasBeenSet = false; LambdaConfigType m_lambdaConfig; bool m_lambdaConfigHasBeenSet = false; Aws::Vector m_autoVerifiedAttributes; bool m_autoVerifiedAttributesHasBeenSet = false; Aws::Vector m_aliasAttributes; bool m_aliasAttributesHasBeenSet = false; Aws::Vector m_usernameAttributes; bool m_usernameAttributesHasBeenSet = false; Aws::String m_smsVerificationMessage; bool m_smsVerificationMessageHasBeenSet = false; Aws::String m_emailVerificationMessage; bool m_emailVerificationMessageHasBeenSet = false; Aws::String m_emailVerificationSubject; bool m_emailVerificationSubjectHasBeenSet = false; VerificationMessageTemplateType m_verificationMessageTemplate; bool m_verificationMessageTemplateHasBeenSet = false; Aws::String m_smsAuthenticationMessage; bool m_smsAuthenticationMessageHasBeenSet = false; UserPoolMfaType m_mfaConfiguration; bool m_mfaConfigurationHasBeenSet = false; UserAttributeUpdateSettingsType m_userAttributeUpdateSettings; bool m_userAttributeUpdateSettingsHasBeenSet = false; DeviceConfigurationType m_deviceConfiguration; bool m_deviceConfigurationHasBeenSet = false; EmailConfigurationType m_emailConfiguration; bool m_emailConfigurationHasBeenSet = false; SmsConfigurationType m_smsConfiguration; bool m_smsConfigurationHasBeenSet = false; Aws::Map m_userPoolTags; bool m_userPoolTagsHasBeenSet = false; AdminCreateUserConfigType m_adminCreateUserConfig; bool m_adminCreateUserConfigHasBeenSet = false; Aws::Vector m_schema; bool m_schemaHasBeenSet = false; UserPoolAddOnsType m_userPoolAddOns; bool m_userPoolAddOnsHasBeenSet = false; UsernameConfigurationType m_usernameConfiguration; bool m_usernameConfigurationHasBeenSet = false; AccountRecoverySettingType m_accountRecoverySetting; bool m_accountRecoverySettingHasBeenSet = false; }; } // namespace Model } // namespace CognitoIdentityProvider } // namespace Aws