Skip to content

User roles and permissions

listmonk supports (>= v4.0.0) creating systems users with granular permissions to various features, including list-specific permissions. Users can login with a username and password, or via an OIDC (OpenID Connect) handshake if an auth provider is connected. Various permissions can be grouped into "user roles", which can be assigned to users. List-specific permissions can be grouped into "list roles".

User roles

A user role is a collection of user related permissions. User roles are attached to user accounts. User roles can be managed in Admin -> Users -> User roles The permissions are described below.

Group Permission Description
lists lists:get_all Get details of all lists
lists:manage_all Create, update, and delete all lists
subscribers subscribers:get Get individual subscriber details
subscribers:get_all Get all subscribers and their details
subscribers:manage Add, update, and delete subscribers
subscribers:import Import subscribers from external files
subscribers:sql_query Run SQL queries on subscriber data. WARNING: This permission will allow the querying of all lists and subscribers directly from the database with SQL expressions, superceding individual list and subscriber permissions above.
tx:send Send transactional messages to subscribers
campaigns campaigns:get Get campaign details
campaigns:get_analytics Access campaign performance metrics
campaigns:manage Create, update, and delete campaigns
bounces bounces:get Get email bounce records
bounces:manage Process and handle bounced emails
webhooks:post_bounce Receive bounce notifications via webhook
media media:get Get uploaded media files
media:manage Upload, update, and delete media
templates templates:get Get email templates
templates:manage Create, update, and delete templates
users users:get Get system user accounts
users:manage Create, update, and delete user accounts
roles:get Get user roles and permissions
roles:manage Create and modify user roles
settings settings:get Get system settings
settings:manage Modify system configuration
settings:maintain Perform system maintenance tasks

List roles

A list role is a collection of permissions assigned per list. Each list can be assigned a view (read) or manage (update) permission. List roles are attached to user accounts. Only the lists defined in a list role is accessible by the user, be it on the admin UI or via API calls. Do note that the lists:get_all and lists:manage_all permissions in user roles override all per-list permissions.

API users

A user account can be of two types, a regular user or an API user. API users are meant for intertacting with the listmonk APIs programmatically. Unlike regular user accounts that have custom passwords or OIDC for authentication, API users get an automatically generated secret token.