Users API
Manage user accounts and permissions through the users API.Get All Users
Retrieve a list of all users in the system.Unique user ID
User email address (used for login)
Display name
User type:
user (regular user with 2FA support) or api (API-only user without 2FA)Account status:
enabled or disabledAssigned role with permissions
Get Single User
Retrieve details for a specific user.cURL
users:get
Create User
Create a new user account.User email address
Display name
User password (minimum 8 characters recommended)
User type:
user or apiAccount status:
enabled or disabledID of the role to assign to this user
users:manage
Update User
Update an existing user’s details.User email address
Display name
New password (optional, only provide if changing)
User type:
user or apiAccount status:
enabled or disabledRole ID to assign
users:manage
Delete User
Delete a user account.cURL
users:manage
Bulk Delete Users
Delete multiple users by ID.cURL
users:manage
User Profile
Get Current User Profile
Get the authenticated user’s profile information.cURL
Update Current User Profile
Update the authenticated user’s own profile.Display name
New password
Current password (required when changing password)
Two-Factor Authentication (2FA)
Generate TOTP QR Code
Generate a QR code for setting up TOTP 2FA.cURL
url can be encoded as a QR code for scanning with authenticator apps.
Enable TOTP 2FA
Enable TOTP 2FA for a user account.The TOTP secret from the QR code generation step
6-digit verification code from the authenticator app
2FA is only available for regular users (type:
user). API users (type: api) cannot enable 2FA.Disable TOTP 2FA
Disable TOTP 2FA for a user account.cURL
Roles API
Manage role-based access control (RBAC) for users and lists.Get User Roles
Retrieve all user roles and their permissions.cURL
roles:get
Get List Roles
Retrieve all list roles (for list-level permissions).cURL
roles:get
Create User Role
Create a new user role with specified permissions.Role name
Array of permission strings (e.g.,
["subscribers:get", "campaigns:manage"])Array of list IDs this role can access (empty array for all lists)
roles:manage
Create List Role
Create a new list role for list-level permissions.Role name
Array of list-specific permission strings
Array of list IDs this role applies to
roles:manage
Update User Role
Update an existing user role.Role name
Updated permissions array
Updated list IDs array
roles:manage
Update List Role
Update an existing list role.roles:manage
Delete Role
Delete a user or list role.cURL
roles:manage
Permission Reference
Common permissions used in roles:| Permission | Description |
|---|---|
* | Super admin - all permissions |
subscribers:get | View subscribers |
subscribers:get_all | View all subscribers across all lists |
subscribers:manage | Create, update, delete subscribers |
subscribers:import | Import subscribers |
lists:get | View lists |
lists:manage | Create, update, delete lists |
lists:manage_all | Manage all lists (bypass list role restrictions) |
campaigns:get | View campaigns |
campaigns:get_all | View all campaigns |
campaigns:manage | Create, update, delete campaigns |
campaigns:manage_all | Manage all campaigns |
campaigns:get_analytics | View campaign analytics |
templates:get | View templates |
templates:manage | Create, update, delete templates |
media:get | View media files |
media:manage | Upload, delete media files |
bounces:get | View bounces |
bounces:manage | Delete bounces, blocklist subscribers |
settings:get | View settings |
settings:manage | Update settings |
settings:maintain | Run maintenance operations |
users:get | View users |
users:manage | Create, update, delete users |
roles:get | View roles |
roles:manage | Create, update, delete roles |
tx:send | Send transactional emails |
webhooks:post_bounce | Post to bounce webhooks |
Use Cases
Create a Campaign Manager Role
Create a Campaign Manager Role
Create a role for users who can manage campaigns but not subscribers or settings:
Create a Read-Only Analyst Role
Create a Read-Only Analyst Role
Create a role for analytics and reporting without edit permissions:
Create an API User for Integrations
Create an API User for Integrations
Create an API-only user for external integrations:
Best Practices
Principle of Least Privilege
Assign users only the permissions they need for their role. Start with minimal permissions and add more as needed.
Separate API Users
Create dedicated API users (type:
api) for integrations rather than using regular user accounts.Regular Audits
Periodically review user accounts and permissions to ensure they’re still appropriate.
Document Custom Roles
Maintain documentation of your custom roles and their intended use cases.