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.