UserPoolUser
The UserPoolUser resource allows you to manage AWS Cognito UserPoolUsers that represent individual users in your Cognito User Pool.
Minimal Example
Section titled “Minimal Example”Create a basic UserPoolUser with required properties and one optional property:
import AWS from "alchemy/aws/control";
const userPoolUser = await AWS.Cognito.UserPoolUser("newUser", { UserPoolId: "us-east-1_examplepool", Username: "john.doe@example.com", UserAttributes: [ { Name: "email", Value: "john.doe@example.com" }, { Name: "phone_number", Value: "+15555551234" } ]});
Advanced Configuration
Section titled “Advanced Configuration”Create a UserPoolUser with additional configurations including validation data and message action:
const advancedUserPoolUser = await AWS.Cognito.UserPoolUser("advancedUser", { UserPoolId: "us-east-1_examplepool", Username: "jane.doe@example.com", UserAttributes: [ { Name: "email", Value: "jane.doe@example.com" }, { Name: "name", Value: "Jane Doe" } ], ValidationData: [ { Name: "custom:role", Value: "admin" } ], MessageAction: "SUPPRESS" // Suppresses the welcome message});
User with Alias Creation
Section titled “User with Alias Creation”Create a UserPoolUser with alias creation enabled for seamless sign-in:
const aliasUser = await AWS.Cognito.UserPoolUser("aliasUser", { UserPoolId: "us-east-1_examplepool", Username: "alias@example.com", UserAttributes: [ { Name: "email", Value: "alias@example.com" }, { Name: "preferred_username", Value: "aliasUser" } ], ForceAliasCreation: true // Forces alias creation for the user});
User with Custom Client Metadata
Section titled “User with Custom Client Metadata”Create a UserPoolUser while passing client metadata for custom handling in your application:
const metadataUser = await AWS.Cognito.UserPoolUser("metadataUser", { UserPoolId: "us-east-1_examplepool", Username: "metadata@example.com", UserAttributes: [ { Name: "email", Value: "metadata@example.com" } ], ClientMetadata: { source: "signupForm", referralCode: "REF123" }});