Permission presets

Redefine what any of the five built-in roles can do for your company, or create your own named presets anchored to a base role.

What it is

Settings → Roles & Access → Permission presets lists the five built-in roles with their current permissions, plus any custom presets. Editing a built-in saves a company-specific override; the platform defaults remain as the fallback and can be restored. Custom presets are named, sortable and deletable.

Also called: role templates · customise a role · make my own role · change what a role can do

See it
Permission presets
Area
Platform & Admin
Group
Roles & permissions
System
Team & Access
Solves
2 named problems
01Rows are built by combining the hardcoded role defaults with any saved override rows, in display order admin → sales → PM → crew lead → worker, then custom presets.
02A row that has never been overridden is marked as default, so Reset only fires when there is something to delete.
03Saving a default row creates an override; saving an already-overridden or custom row updates it by id.
The presets list with the five role rows, one expanded into the category grid, and Reset / Duplicate / Delete actions. PermissionPresetsTab.tsx. Sample data — no customer information appears here.
How it works
  1. 1Rows are built by combining the hardcoded role defaults with any saved override rows, in display order admin → sales → PM → crew lead → worker, then custom presets.
  2. 2A row that has never been overridden is marked as default, so Reset only fires when there is something to delete.
  3. 3Saving a default row creates an override; saving an already-overridden or custom row updates it by id.
  4. 4Duplicate copies a row into a new custom preset; Reset restores platform defaults behind a branded confirm.
  5. 5resolveBuiltinPermissions is the single read path for what a role looks like at this tenant.
Why we built it

The library comment sets out the model: two flavours of preset, with the canonical role map as fallback for any built-in without an override row. Companies do not agree on what a Project Manager is allowed to do, and the alternative — editing every person individually — does not scale past a handful of staff.

The problem
  • Role definitions were fixed platform-wide and could not match a company's structure.
  • Custom access had to be re-applied per person.
Sound familiar?
What you get
A role means what your company means by it.
New hires inherit the right access from the role alone.
Platform defaults are one click away if a customisation goes wrong.
What's inside

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →