Skip to content

Permission System ​

xtra audio uses a granular permission system. Each user receives permissions through roles, direct assignments, and overrides.

Permission Levels ​

Permissions are assigned at two levels:

LevelScope
ProjectApplies across the entire project
StationApplies to specific stations

Project Permissions ​

PermissionDescription
project:viewView project details, settings, and dashboard
project:editEdit project name, description, timezone, avatar, and settings
api:viewView public API configurations and keys
api:editCreate and update API configurations and keys
api:deleteDelete API configurations and keys
adtrigger:viewView ad triggers
adtrigger:editCreate and update ad triggers
adtrigger:deleteDelete ad triggers

Station Permissions ​

Station permissions are assigned per station or for all stations at once.

PermissionDescription
station:viewView station details and dashboard
station:editEdit station settings, encoders, and configuration
media:viewView media library items and playlists
media:editUpload, edit, and delete media files
media:deleteDelete media files permanently
planner:viewView planner sequences, week templates, and rotations
planner:editCreate and edit sequences, week templates, and planner actions
studio:viewView the live studio interface
studio:editControl studio playback, manage the playlist queue, and use the mixer
relay:viewView external sources and relay configuration
relay:editConfigure external sources and relay settings

Wildcard Permissions ​

Grant full access by assigning the wildcard (*) permission. This grants access to all features within the scope. The Admin toggle in the permission editor sets this wildcard.

Namespace wildcards (e.g., api:*) grant all permissions within that category.

The Owner role holds the wildcard (*) permission. This grants full access to all project and station features and cannot be restricted.

Roles ​

Roles group permissions together for reusable assignment.

Managing Roles ​

  1. Create roles with a name and a set of permissions
  2. Assign a scope to the role:
ScopeDescription
ProjectPermissions apply at project level
All StationsPermissions apply to every station
Specific StationsPermissions apply to selected stations only
  1. Assign the role to one or more users

Role CRUD ​

Roles can be created, edited, and deleted from the team management interface. Deleting a role removes it from all users.

Overrides ​

Overrides allow granting or denying individual permissions regardless of role assignments.

Override TypeEffect
GrantExplicitly allows a permission, even if no role includes it
DenyExplicitly blocks a permission, even if a role includes it

Overrides take precedence over role-based permissions. They exist at both project and station level.

Permission Editor ​

The permission editor opens when editing a user's access rights.

Configure Permissions ​

  1. Open the user's detail page from the team list
  2. Toggle Admin for full access, or configure individually:
    • Assign one or more roles
    • Set overrides for specific permissions
  3. For station-specific permissions, add station permission entries
  4. Save changes

Permissions from roles, direct assignments, and overrides are combined. The final permission set is evaluated in this order: overrides (deny) > overrides (grant) > role permissions.

External Invites ​

Team members can be invited by email. The invited person receives an email with a link to accept or decline the invitation.

Invitations are valid for 7 days. After expiry, the invitation must be sent again.