Skip to main content

Permissions Reference

AdamRMS uses a two-tier permission system to control what users can do across the platform. Understanding this system is key to managing your team effectively and keeping your data secure.

  • Instance permissions (also called "business permissions") control what a user can do within a specific business. These cover day-to-day actions such as managing assets, projects, locations, and users within your business.
  • Server permissions control what a user can do at the platform level. These are reserved for system administrators and cover actions like managing all users across the server, administering instances, and editing global configuration.

Most users will only ever interact with instance permissions. Server permissions are typically only relevant if you are self-hosting AdamRMS or are a platform administrator.

tip

If you are looking for information on how to create Role Groups and assign permissions to users, see the User Management page.

How permissions are assigned

Permissions are assigned to users via Role Groups. Each business can create its own Role Groups, and each Role Group has a set of permissions associated with it. When you add a user to a business, you assign them a Role Group, which determines what they can do.

By default, every business has an "Administrator" Role Group that grants access to all instance permissions. You can create additional Role Groups with more limited access to suit different roles in your organisation.

note

A user's Role Group is set per business. If a user belongs to multiple businesses, they may have different Role Groups (and therefore different permissions) in each one.

Token types

Some permissions support different token types, which control how the permission can be exercised:

Token TypeDescription
web-sessionThe standard web browser session. Almost all permissions support this.
app-v1The legacy mobile app (v1). Only some permissions are available through this token type.
app-v2-magic-emailThe newer app authentication flow using magic email links. A limited set of permissions support this.

Where a permission only supports web-session, it can only be used through the web interface. Permissions that also support app-v1 or app-v2-magic-email can be exercised through the respective mobile apps as well.


Instance permissions

Instance permissions control what a user can do within a specific business. They are grouped by category below.

Assets

Permission KeyTypeDetailDescriptionDependenciesCaution
ASSETS:ASSET_BARCODES:DELETEDelete--Delete asset barcodesASSETS:ASSET_BARCODES:VIEW--
ASSETS:ASSET_BARCODES:EDIT:ASSOCIATE_UNNASOCIATED_BARCODES_WITH_ASSETSEditAssociate unassociated barcodes with assetsAssociate any unassociated barcode with an asset----
ASSETS:ASSET_BARCODES:VIEWView--View asset barcodes----
ASSETS:ASSET_BARCODES:VIEW:SCAN_IN_APPViewScan in AppScan barcodes in the mobile app----
ASSETS:ASSET_CATEGORIES:CREATECreate--Add a new custom categoryASSETS:ASSET_CATEGORIES:VIEW, ASSETS:ASSET_CATEGORIES:EDIT--
ASSETS:ASSET_CATEGORIES:DELETEDelete--Delete a custom categoryASSETS:ASSET_CATEGORIES:VIEW--
ASSETS:ASSET_CATEGORIES:EDITEdit--Edit a custom categoryASSETS:ASSET_CATEGORIES:VIEW--
ASSETS:ASSET_CATEGORIES:VIEWView--View a list of custom categories----
ASSETS:ASSET_FILE_ATTACHMENTS:CREATECreate--Upload asset file attachments----
ASSETS:ASSET_FILE_ATTACHMENTS:VIEWView--View asset file attachments----
ASSETS:ASSET_GROUPS:CREATECreate--Create a new asset group----
ASSETS:ASSET_GROUPS:DELETE:ASSETS_WITHIN_GROUPDeleteAssets within GroupDelete assets within a group----
ASSETS:ASSET_GROUPS:EDITEdit--Edit an existing asset group----
ASSETS:ASSET_GROUPS:EDIT:ASSETS_WITHIN_GROUPEditAssets within GroupAdd or remove group members----
ASSETS:ASSET_TYPE_FILE_ATTACHMENTS:CREATECreate--Upload asset type file attachmentsASSETS:ASSET_TYPE_FILE_ATTACHMENTS:VIEW--
ASSETS:ASSET_TYPE_FILE_ATTACHMENTS:VIEWView--View asset type file attachments----
ASSETS:ASSET_TYPES:CREATECreate--Create a new asset typeASSETS:CREATE--
ASSETS:ASSET_TYPES:EDITEdit--Edit an asset type----
ASSETS:ARCHIVEArchive--Archive assets----
ASSETS:CREATECreate--Create new assets----
ASSETS:DELETEDelete--Delete assets----
ASSETS:EDITEdit--Edit assets----
ASSETS:EDIT:OVVERRIDESEditOverridesEdit asset overridesASSETS:EDIT--
ASSETS:FILE_ATTACHMENTS:DELETEDelete--Delete a file attachment----
ASSETS:FILE_ATTACHMENTS:EDITEdit--Rename a file attachment----
ASSETS:MANUFACTURERS:CREATECreate--Create a new manufacturer----
ASSETS:MANUFACTURERS:EDITEdit--Edit a manufacturer----
ASSETS:TRANSFERTransfer--Transfer assets to another businessASSETS:CREATE, ASSETS:EDIT, ASSETS:DELETE, ASSETS:ASSET_TYPES:CREATE, ASSETS:ASSET_TYPES:EDIT, ASSETS:ASSET_CATEGORIES:VIEW, ASSETS:MANUFACTURERS:CREATEAllows user to transfer assets to another business
caution

The ASSETS:TRANSFER permission allows a user to move assets out of your business entirely. Only grant this to trusted users.

Business

Permission KeyTypeDetailDescriptionDependenciesCaution
BUSINESS:BUSINESS_SETTINGS:EDITEdit--Edit business settingsBUSINESS:BUSINESS_SETTINGS:VIEW--
BUSINESS:BUSINESS_SETTINGS:VIEWView--View business settings page----
BUSINESS:BUSINESS_STATS:VIEWView--View business statistics----
BUSINESS:ROLES_AND_PERMISSIONS:CREATECreate--Add new role groupsBUSINESS:ROLES_AND_PERMISSIONS:VIEW--
BUSINESS:ROLES_AND_PERMISSIONS:EDITEdit--Edit role group permissions--Super Administrator position -- can give anyone (including themselves) any permissions
BUSINESS:ROLES_AND_PERMISSIONS:VIEWView--View a list of roles and their permissions----
BUSINESS:SETTINGS:EDIT:TRUSTED_DOMAINSEditTrusted DomainsManage trusted domains for automatic user sign-up----
BUSINESS:USER_SIGNUP_CODES:CREATECreate--Add a new signup codeBUSINESS:USER_SIGNUP_CODES:VIEW--
BUSINESS:USER_SIGNUP_CODES:DELETEDelete--Delete a signup codeBUSINESS:USER_SIGNUP_CODES:VIEW--
BUSINESS:USER_SIGNUP_CODES:EDITEdit--Edit a signup codeBUSINESS:USER_SIGNUP_CODES:VIEW--
BUSINESS:USER_SIGNUP_CODES:VIEWView--View a list of signup codes----
BUSINESS:USERS:CREATE:ADD_USER_BY_EMAILCreateAdd user by emailAdd a user to the business by email addressBUSINESS:USERS:VIEW:LIST--
BUSINESS:USERS:DELETE:REMOVE_FORM_BUSINESSDeleteRemove from businessRemove a user from the businessBUSINESS:USERS:VIEW:LIST--
BUSINESS:USERS:EDIT:CHANGE_ROLEEditChange roleChange a user's role within the businessBUSINESS:USERS:VIEW:LISTAllows user to change their own role to any role
BUSINESS:USERS:EDIT:USER_THUMBNAILEditUser ThumbnailSet a user's thumbnail imageBUSINESS:USERS:DELETE:REMOVE_FORM_BUSINESS--
BUSINESS:USERS:EDIT:ARCHIVEEditArchiveArchive a user within the businessBUSINESS:USERS:VIEW:LIST--
BUSINESS:USERS:EDIT:ROLES_AND_PERMISSIONSEditRoles and PermissionsChange a user's role groupBUSINESS:USERS:DELETE:REMOVE_FORM_BUSINESS--
BUSINESS:USERS:VIEW:LISTViewListView a list of users in the business----
BUSINESS:USERS:VIEW:INDIVIDUAL_USERViewIndividual UserView details about a specific user----
caution

The BUSINESS:ROLES_AND_PERMISSIONS:EDIT permission is effectively a super administrator permission. A user with this permission can grant themselves (or others) any permission, so only assign it to fully trusted administrators.

Clients

Permission KeyTypeDetailDescriptionDependenciesCaution
CLIENTS:CREATECreate--Create a new clientCLIENTS:VIEW--
CLIENTS:EDITEdit--Edit client detailsCLIENTS:VIEW--
CLIENTS:VIEWView--View a list of clients----

CMS

Permission KeyTypeDetailDescriptionDependenciesCaution
CMS:CMS_PAGES:CREATECreate--Create and manage CMS pages----
CMS:CMS_PAGES:EDITEdit--Edit any CMS pageCMS:CMS_PAGES:CREATE--
CMS:CMS_PAGES:EDIT:CUSTOM_DASHBOARDSEditCustom DashboardsManage custom dashboardsCMS:CMS_PAGES:CREATE--
CMS:CMS_PAGES:VIEW:ACCESS_LOGViewAccess LogView CMS page access logsCMS:CMS_PAGES:CREATE--

Files

Permission KeyTypeDetailDescriptionDependenciesCaution
FILES:FILE_ATTACHMENTS:EDIT:SHARING_SETTINGSEditSharing SettingsManage a file's sharing status----

Finance

Permission KeyTypeDetailDescriptionDependenciesCaution
FINANCE:PAYMENTS_LEDGER:VIEWView--View a list of payments for all projects----

Locations

Permission KeyTypeDetailDescriptionDependenciesCaution
LOCATIONS:LOCATION_BARCODES:VIEWView--View location barcodesLOCATIONS:VIEW--
LOCATIONS:LOCATION_FILE_ATTACHMENTS:CREATECreate--Upload location file attachmentsLOCATIONS:LOCATION_FILE_ATTACHMENTS:VIEW--
LOCATIONS:LOCATION_FILE_ATTACHMENTS:VIEWView--View location file attachmentsLOCATIONS:VIEW--
LOCATIONS:CREATECreate--Add a new locationLOCATIONS:VIEW--
LOCATIONS:EDITEdit--Edit a locationLOCATIONS:VIEW--
LOCATIONS:VIEWView--View a list of locations----

Maintenance Jobs

Permission KeyTypeDetailDescriptionDependenciesCaution
MAINTENANCE_JOBS:DELETEDelete--Delete a maintenance jobMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDIT:JOB_DUE_DATEEditJob Due DateChange a job's due dateMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDIT:USER_ASSIGNED_TO_JOBEditUser Assigned to JobChange the user assigned to a jobMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDIT:USERS_TAGGED_IN_JOBEditUsers Tagged in JobEdit users tagged in a jobMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDIT:NAMEEditNameEdit the job nameMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDIT:ADD_MESSAGE_TO_JOBEditAdd Message to JobAdd a message to a jobMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDIT:STATUSEditStatusChange a job's statusMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDIT:ADD_ASSETSEditAdd AssetsAdd assets to a jobMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDITEdit--Remove assets from a jobMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDIT:JOB_PRIORITYEditJob PriorityChange a job's priorityMAINTENANCE_JOBS:VIEW--
MAINTENANCE_JOBS:EDIT:ASSET_FLAGSEditAsset FlagsFlag assets against a job----
MAINTENANCE_JOBS:EDIT:ASSET_BLOCKSEditAsset BlocksBlock asset assignments via a job----
MAINTENANCE_JOBS:VIEWView--Access the maintenance jobs list----
MAINTENANCE_JOBS:MAINTENANCE_JOBS_FILE_ATTACHMENTS:CREATECreate--Upload files to a jobMAINTENANCE_JOBS:VIEW, MAINTENANCE_JOBS:EDIT:ADD_MESSAGE_TO_JOB--

Projects

Permission KeyTypeDetailDescriptionDependenciesCaution
PROJECTS:PROJECT_ASSETS:CREATE:ASSIGN_AND_UNASSIGNCreateAssign and UnassignAssign or unassign assets to a projectPROJECTS:VIEW--
PROJECTS:PROJECT_ASSETS:CREATE:ASSIGN_ALL_BUSINESS_ASSETSCreateAssign all Business AssetsAssign all assets in the business to a projectPROJECTS:PROJECT_ASSETS:CREATE:ASSIGN_AND_UNASSIGN--
PROJECTS:PROJECT_ASSETS:EDIT:ASSIGNMNET_COMMENTEditAssignment CommentEdit an asset assignment comment----
PROJECTS:PROJECT_ASSETS:EDIT:CUSTOM_PRICEEditCustom PriceEdit an asset assignment's custom price----
PROJECTS:PROJECT_ASSETS:EDIT:DISCOUNTEditDiscountEdit an asset assignment discount----
PROJECTS:PROJECT_ASSETS:EDIT:ASSIGNMENT_STATUSEditAssignment StatusChange the assignment status for an asset (e.g. mark as packed)----
PROJECTS:PROJECT_CREW:CREATECreate--Add crew to a projectPROJECTS:PROJECT_CREW:VIEW--
PROJECTS:PROJECT_CREW:EDITEdit--Edit or delete crew assignmentsPROJECTS:PROJECT_CREW:VIEW--
PROJECTS:PROJECT_CREW:EDIT:CREW_RANKSEditCrew RanksEdit crew ranksPROJECTS:PROJECT_CREW:VIEW--
PROJECTS:PROJECT_CREW:EDIT:CREW_RECRUITMENTEditCrew RecruitmentManage crew recruitment for a projectPROJECTS:PROJECT_CREW:VIEW--
PROJECTS:PROJECT_CREW:VIEW:VIEW_AND_APPLY_FOR_CREW_ROLESViewView and Apply for Crew RolesView and apply for crew roles on the recruitment pagePROJECTS:VIEW--
PROJECTS:PROJECT_CREW:VIEWView--View project crew----
PROJECTS:PROJECT_CREW:VIEW:EMAIL_CREWViewEmail CrewEmail project crew membersPROJECTS:PROJECT_CREW:VIEW--
PROJECTS:PROJECT_FLIE_ATTACHMENTS:CREATECreate--Upload project file attachments----
PROJECTS:PROJECT_NOTES:CREATE:NOTESCreateNotesAdd project notesPROJECTS:PROJECT_NOTES:EDIT:NOTES--
PROJECTS:PROJECT_NOTES:EDIT:NOTESEditNotesEdit project notesPROJECTS:VIEW--
PROJECTS:PROJECT_PAYMENTS:CREATECreate--Add a new project paymentPROJECTS:PROJECT_PAYMENTS:VIEW--
PROJECTS:PROJECT_PAYMENTS:CREATE:FILE_ATTACHMENTSCreateFile AttachmentsUpload payment file attachmentsFINANCE:PAYMENTS_LEDGER:VIEW--
PROJECTS:PROJECT_PAYMENTS:DELETEDelete--Delete a project paymentPROJECTS:PROJECT_PAYMENTS:VIEW--
PROJECTS:PROJECT_PAYMENTS:VIEWView--View project paymentsPROJECTS:VIEW--
PROJECTS:PROJECT_PAYMENTS:VIEW:FILE_ATTACHMENTSViewFile AttachmentsView payment file attachmentsFINANCE:PAYMENTS_LEDGER:VIEW--
PROJECTS:PROJECT_STATUSES:CREATECreate--Add a new project statusPROJECTS:PROJECT_STATUSES:VIEW, PROJECTS:PROJECT_STATUSES:EDIT--
PROJECTS:PROJECT_STATUSES:DELETEDelete--Delete a project statusPROJECTS:PROJECT_STATUSES:VIEW, PROJECTS:PROJECT_STATUSES:EDIT--
PROJECTS:PROJECT_STATUSES:EDITEdit--Edit project statusesPROJECTS:PROJECT_STATUSES:VIEW--
PROJECTS:PROJECT_STATUSES:VIEWView--View a list of project statuses----
PROJECTS:PROJECT_TYPES:CREATECreate--Add a new project typePROJECTS:PROJECT_TYPES:VIEW--
PROJECTS:PROJECT_TYPES:DELETEDelete--Delete a project typePROJECTS:PROJECT_TYPES:EDIT, PROJECTS:PROJECT_TYPES:VIEW--
PROJECTS:PROJECT_TYPES:EDITEdit--Edit a project typePROJECTS:PROJECT_TYPES:VIEW--
PROJECTS:PROJECT_TYPES:VIEWView--View a list of project types----
PROJECTS:ARCHIVEArchive--Archive a projectPROJECTS:VIEW--
PROJECTS:CREATECreate--Create a new projectPROJECTS:VIEW, PROJECTS:EDIT:PROJECT_TYPE, PROJECTS:EDIT:LEAD--
PROJECTS:DELETEDelete--Delete a projectPROJECTS:VIEW--
PROJECTS:EDIT:CLIENTEditClientChange a project's clientPROJECTS:VIEW--
PROJECTS:EDIT:LEADEditLeadChange a project's leadPROJECTS:VIEW--
PROJECTS:EDIT:DESCRIPTION_AND_SUB_PROJECTSEditDescription and Sub ProjectsChange a project's description and sub-projectsPROJECTS:VIEW--
PROJECTS:EDIT:DATESEditDatesChange a project's datesPROJECTS:VIEW--
PROJECTS:EDIT:NAMEEditNameChange a project's namePROJECTS:VIEW--
PROJECTS:EDIT:STATUSEditStatusChange a project's statusPROJECTS:VIEW, PROJECTS:PROJECT_STATUSES:VIEW--
PROJECTS:EDIT:ADDRESSEditAddressChange a project's addressPROJECTS:VIEW--
PROJECTS:EDIT:INVOICE_NOTESEditInvoice NotesChange a project's invoice notesPROJECTS:VIEW--
PROJECTS:EDIT:DELIVERY_NOTESEditDelivery NotesChange a project's delivery notesPROJECTS:VIEW--
PROJECTS:EDIT:PROJECT_TYPEEditProject TypeChange a project's type----
PROJECTS:VIEWView--View projects----

Training

Permission KeyTypeDetailDescriptionDependenciesCaution
TRAINING:CREATECreate--Add a training moduleTRAINING:EDIT--
TRAINING:EDITEdit--Edit training modulesTRAINING:VIEW:DRAFT_MODULES--
TRAINING:EDIT:CERTIFY_USEREditCertify UserCertify a user's trainingTRAINING:VIEW:USER_PROGRESS_IN_MODULES--
TRAINING:EDIT:REVOKE_USER_CERTIFICATIONEditRevoke User CertificationRevoke a user's training certificationTRAINING:EDIT:CERTIFY_USER--
TRAINING:VIEWView--Access the training page to complete training----
TRAINING:VIEW:DRAFT_MODULESViewDraft ModulesView draft (unpublished) training modulesTRAINING:VIEW--
TRAINING:VIEW:USER_PROGRESS_IN_MODULESViewUser progress in modulesView a list of users that have completed a training moduleBUSINESS:USERS:VIEW:LIST, TRAINING:VIEW--

Server permissions

Server permissions are platform-level permissions intended for system administrators. These are not tied to a specific business and instead govern actions across the entire AdamRMS server.

note

Server permissions are only relevant if you are a platform administrator or are self-hosting AdamRMS. Most users will not need these.

Assets

Permission KeyTypeDetailDescriptionDependenciesCaution
ASSETS:EDIT:ANY_ASSET_TYPEEditAny asset type (including those with no instance ID)Edit any asset type, including system-level asset types written by AdamRMS----

User Management

Permission KeyTypeDetailDescriptionDependenciesCaution
USERS:VIEWView--Access a list of all users on the server----
USERS:EDITEdit--Edit details about any user----
USERS:EDIT:THUMBNAILEditThumbnailSet any user's thumbnailUSERS:EDIT--
USERS:EDIT:NOTIFICATION_SETTINGSEditNotification SettingsChange another user's notification settingsUSERS:EDIT--
USERS:EDIT:SUSPENDEditSuspendSuspend a userUSERS:VIEW--
USERS:DELETEDelete--Delete a userUSERS:VIEW--
USERS:VIEW:MAILINGSViewMailingsView mailings for a userUSERS:VIEW--
USERS:VIEW_SITE_AS--View Site AsView the site as another userUSERS:VIEW, USERS:EDIT, USERS:VIEW:MAILINGS, USERS:EDIT:SUSPEND--

Permissions Management

Permission KeyTypeDetailDescriptionDependenciesCaution
USERS:VIEW:OWN_POSITIONSViewOwn PositionsView your own server-level positions----
PERMISSIONS:VIEWView--View a list of server permissions----
PERMISSIONS:EDITEdit--Edit server permissions----
PERMISSIONS:EDIT:USER_POSITIONEditUser positionChange a user's server-level permissionsUSERS:EDIT, USERS:VIEW:OWN_POSITIONS--

Instances

Permission KeyTypeDetailDescriptionDependenciesCaution
INSTANCES:VIEWView--Access a list of all instances (businesses)----
INSTANCES:CREATECreateHas no impact if NEW_INSTANCE_ENABLED is set in configurationCreate a new instance----
INSTANCES:FULL_PERMISSIONS_IN_INSTANCE--Full Permissions in InstanceLog in to any instance with full permissionsINSTANCES:VIEW--
INSTANCES:IMPORT:ASSETSImportImport Assets to any InstanceImport assets into any instanceINSTANCES:VIEW--
INSTANCES:DELETEDelete--Delete an instanceINSTANCES:VIEW--
INSTANCES:PERMANENTLY_DELETEPermanently Delete--Permanently delete an instance (cannot be undone)INSTANCES:DELETE--
INSTANCES:EDITEdit--Edit instance detailsINSTANCES:VIEW--
USE-DEV----Use the development site----

General sys admin

Permission KeyTypeDetailDescriptionDependenciesCaution
VIEW-AUDIT-LOG----View the server audit log----
VIEW-ANALYTICS----View server analyticsINSTANCES:VIEW--
CONFIG:SET----Set system configuration values----

Understanding dependencies

Many permissions have dependencies -- other permissions that must also be granted for the permission to function correctly. When you assign a permission that has dependencies, you should ensure that all of its dependencies are also assigned to the same Role Group. AdamRMS will not automatically grant dependencies for you.

For example, PROJECTS:CREATE depends on PROJECTS:VIEW, PROJECTS:EDIT:PROJECT_TYPE, and PROJECTS:EDIT:LEAD. If you grant PROJECTS:CREATE without also granting PROJECTS:VIEW, the user may not be able to access the project creation page at all.

tip

When building a custom Role Group, start with the "View" permissions for each category, then layer on "Edit", "Create", and "Delete" permissions as needed. This ensures that users can see the areas of the system they need before you grant them the ability to make changes.