Skip to main content

Cognito Users

Fetches users from a specific user pool in AWS Cognito.

Details

AWS Cognito is a user identity and access management service that lets you add user sign-up, sign-in, and access control to your web and mobile apps. This input connector retrieves user information from a specified Cognito User Pool, allowing you to monitor and analyze user accounts, their status, and attributes.

Functionality

On initialization, Monad connects to the specified AWS Cognito User Pool in the configured region and retrieves user data. The connector supports optional filtering to narrow down the users retrieved based on specific attributes like user status or custom attributes. The connector maintains state to ensure efficient processing and can handle large user pools through automatic pagination.

Requirements

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Action": [
"cognito-idp:ListUsers",
"cognito-idp:DescribeUserPool"
],
"Resource": "*"
}
]
}

Configuration

The following configuration defines the input parameters. Each field's specifications, such as type, requirements, and descriptions, are detailed below.

Settings

SettingTypeRequiredDescription
RegionstringYesThe AWS region where the Cognito User Pool is located.
Role ARNstringYesThe ARN of the IAM role to assume for accessing AWS Cognito.
CronstringYesCron expression for scheduling the input.
User Pool IDstringYesThe ID of the AWS Cognito User Pool to extract users from.
FilterobjectNoOptional filter for the ListUsers API to narrow down results.

Filter Object Properties

SettingTypeRequiredDescription
AttributestringNoThe attribute to filter on (e.g., 'cognito:user_status').
ValuestringNoThe value to filter by (e.g., 'CONFIRMED').
OperatorstringNoThe operator to use for filtering.

Secrets (Static Credentials Only)

SettingTypeRequiredDescription
Access KeystringConditionalAWS Access Key ID
Secret KeystringConditionalAWS Secret Access Key

⚠️ Authentication: Choose either Role ARN (recommended) or static credentials. See AWS Authentication Guide for setup instructions.

Sample Record

{
"Attributes": [
{
"Name": "email",
"Value": "Alice Brown@mail.net"
},
{
"Name": "given_name",
"Value": "Tom Johnson"
},
{
"Name": "family_name",
"Value": "Miller"
},
{
"Name": "email_verified",
"Value": "true"
},
{
"Name": "sub",
"Value": "36a8a82e-2a23-ccae-da21-7d982ba6afc0"
},
{
"Name": "preferred_username",
"Value": "+1234567890"
}
],
"Enabled": "true",
"MFAOptions": [
{
"AttributeName": "phone_number",
"DeliveryMedium": "EMAIL"
}
],
"UserCreateDate": "2025-08-11T23:46:56.201762Z",
"UserLastModifiedDate": "2025-08-11T23:46:56.201767Z",
"UserStatus": "RESET_REQUIRED",
"Username": "peterjones@example.com"
}