{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-cognito/refs/heads/main/json-schema/user-pools-create-user-pool-request-schema.json", "title": "CreateUserPoolRequest", "description": "Represents the request to create a user pool.", "type": "object", "properties": { "PoolName": { "allOf": [ { "$ref": "#/components/schemas/UserPoolNameType" }, { "description": "A string used to name the user pool." } ] }, "Policies": { "allOf": [ { "$ref": "#/components/schemas/UserPoolPolicyType" }, { "description": "The policies associated with the new user pool." } ] }, "DeletionProtection": { "allOf": [ { "$ref": "#/components/schemas/DeletionProtectionType" }, { "description": "
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.
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 .
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."
}
]
},
"DeviceConfiguration": {
"allOf": [
{
"$ref": "#/components/schemas/DeviceConfigurationType"
},
{
"description": "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.
AdminCreateUser requests."
}
]
},
"Schema": {
"allOf": [
{
"$ref": "#/components/schemas/SchemaAttributesListType"
},
{
"description": "An array of schema attributes for the new user pool. These attributes can be standard or custom attributes."
}
]
},
"UserPoolAddOns": {
"allOf": [
{
"$ref": "#/components/schemas/UserPoolAddOnsType"
},
{
"description": "User pool add-ons. Contains settings for activation of advanced security features. To log user security information but take no action, set to AUDIT. To configure automatic security responses to risky traffic to your user pool, set to ENFORCED.
For more information, see Adding advanced security to a user pool.
" } ] }, "UsernameConfiguration": { "allOf": [ { "$ref": "#/components/schemas/UsernameConfigurationType" }, { "description": "Case sensitivity on 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@example.com or EMaiL@eXamplE.Com. 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.
This configuration is immutable after you set it. For more information, see UsernameConfigurationType.
" } ] }, "AccountRecoverySetting": { "allOf": [ { "$ref": "#/components/schemas/AccountRecoverySettingType" }, { "description": "The available verified method a user can use to recover their password when they callForgotPassword. 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."
}
]
}
},
"required": [
"PoolName"
]
}