Skip to content
ImplementedFor administrators, auditors, anyone deciding who gets what

Roles and permissions

Last updated Oct 21, 2026

What this is, and who it is for

Access in Trialion is decided by permissions. A role is a named set of permissions, and a person is given a role on the organization, on a study or at a site. This page lists the 15 standard roles and the 68 permissions they are made from, exactly as the system holds them. The rules that sit on top of the roles (who may not hold two seats, who may not act on their own work) are on Who can and cannot; what each role does day to day is under Roles.

Where to find it

Roles & Permissions in the main menu (an Organization Admin; the permission is rbac.manage) lists the standard roles and the organization's own, and is where a custom role is drawn up. A person's own permissions are shown by what the screens offer them. The interactive explorer below lights up what a role holds, or who holds a permission.

Interactive · Permission & RBAC ExplorerOpen full screen →
PermissionOAPMEDCRADMMOSMSSMAUDPICRCPHSTMCDCRM
Studies
study.read
study.write
study.create
study.state.change
study.lock
study.archive
Versioning
study.version.read
study.amendment.start
study.version.submit_uat
study.uat.close_cycle
study.uat_issue.read
study.uat_issue.write
study.version.signoff
study.version.go_live
study.version.withdraw
Sites
site.read
site.write
site.activate
site.transition
Subjects
subject.read
subject.write
subject.delete
clinical.contact.write
clinical.consent.write
subject.eligibility
Visits
visit.read
visit.write
Forms
form.read
form.write
form.design
form.publish
form.freeze
form.write_dispensing
Queries
clinical.query.read
clinical.query.raise
clinical.query.answer
clinical.query.close
clinical.query.reopen
Monitoring
sdv.configure
sdv.perform
Audit
audit.read
audit.verify
Exports
export.read
export.run
Admin
rbac.manage
user.manage
system.monitor
org.audit.read
org.read
org.manage
user.directory.read
Workflow
workflow.design
E-Sign
signature.sign
Documents
document.read
document.write
document.manage
Team
team.assign
team.manage
team.training_complete
delegation.sign
Library
library.write
AI
ai.generate
Safety
clinical.event.read
clinical.event.write
clinical.event.report
clinical.event.review
clinical.event.reconcile
deviation.report

Click a role (column) to see everything it can do, or a permission (row) to see who holds it. Access is further narrowed by study membership, site scope, and environment (ABAC).

What you can do

  • Read the standard roles and permissions (this page, or the Roles & Permissions screen).
  • Create a custom role from a standard role as its starting point, adding or removing permissions within the rules below (Manage organization roles). A role has the level of the role it starts from, and the setup wizard creates a set of up to 40 roles together, all of it or none of it.
  • Suspend and restore a custom role, and change it; each change is kept as a revision with the reason.
  • Ask the role assistant for suggestions of permissions that fit a role and for an explanation of a warning. It decides nothing: what it proposes is checked like anything typed (Not built yet says what the AI does and does not do).

Every option

The standard roles

A standard role is a template in the code, with a version that changes whenever its permissions do. It cannot be changed or suspended by anyone; a custom role starts from one. The number is how many of the 68 permissions the role holds.

RoleIdentifierShortHeld atPermissionsWhat it is for
Organization Adminorg_adminOAThe organization48Governs org users, the role catalog, and studies with read-only clinical oversight.
Project Managerproject_managerPMOne study42Runs study execution — staffs the team, creates sites, tracks quality; can raise queries.
eCRF Designerecrf_designerEDOne study12Builds forms, libraries, mappings. No clinical data access.
Clinical Research AssociatecraCRAOne study16Monitors site data quality (SDV), views data, raises queries (cannot edit or answer).
Data Managerdata_managerDMOne study22Cleans data, owns queries (raise/close/reopen), runs exports.
Medical Officermedical_monitorMOOne study15Reviews safety/AE and manages medical queries.
Sponsor ManagersponsorSMOne study13Read-only portfolio / enrollment oversight.
Sponsor Supply Managersponsor_supplySSMOne study8Read-only supply-focused oversight.
AuditorauditorAUDOne study13Read access plus the full audit trail. Read-only.
Principal InvestigatorpiPIOne site24Site investigator-of-record — enters/verifies data, answers queries, applies the investigator e-signature.
Clinical Research CoordinatorcrcCRCOne site19Site coordinator — enters data, answers queries; no investigator signature.
PharmacypharmacyPHOne site9Drug dispensing / accountability; answers dispensing queries.
Site Monitorsite_monitorSTMOne study11Oversees site regulatory compliance, monitors protocol adherence, and raises queries on site performance.
Clinical Data Coordinatorclinical_data_coordinatorCDCOne study10Supports data cleaning and query resolution; entry-level data management.
Regulatory Managerregulatory_managerRMOne study9Manages regulatory document submissions and compliance tracking.

Where a permission is held

LevelMeaning
organizationHeld by a role of the organization as a whole
studyHeld through a role on one study
siteHeld through a role at one site. Data entry is held here and nowhere else

A permission held at the wrong level does not count: a role cannot carry a permission its level does not allow, and a grant of the wrong level confers none of it.

Risk

27 of the 68 permissions are above standard risk (elevated or critical). They are governance permissions: every decision to allow them is written to the audit trail, and a person who does not hold one cannot pass it on to someone else. The custom-role editor warns when a role holds them.

The permission catalogue

Role short names: OA Organization Admin · PM Project Manager · ED eCRF Designer · CRA Clinical Research Associate · DM Data Manager · MO Medical Officer · SM Sponsor Manager · SSM Sponsor Supply Manager · AUD Auditor · PI Principal Investigator · CRC Clinical Research Coordinator · PH Pharmacy · STM Site Monitor · CDC Clinical Data Coordinator · RM Regulatory Manager.

Studies

PermissionWhat it allowsHeld atRiskRulesHeld by
study.readView study details and dashboardsorganization, study, sitestandardnoneEvery role
study.writeEdit study settings and teamsorganization, studystandardnoneOA, PM
study.createCreate a new studyorganization, studyelevatednoneOA
study.state.changeHold, resume, close to enrollment and complete a studyorganization, studyelevatedseparation of duties: enter-vs-lock, side BOA, PM
study.lockLock and unlock the study database (two different people, each with an e-signature)organization, studycriticale-signature; separation of duties: enter-vs-lock, side BOA, PM
study.archiveArchive / retire a study (soft-delete)organization, studyelevatednoneOA

Versioning

PermissionWhat it allowsHeld atRiskRulesHeld by
study.version.readView the study's versions: the version list, UAT cycles, sign-offs and the changes between versionsorganization, studystandardnoneOA, PM, ED, CRA, DM, MO, SM, SSM, AUD, STM, CDC, RM
study.amendment.startStart an amendment (the next version of a Live study)organization, studyelevatednoneOA, PM
study.version.submit_uatSubmit a version in Build to UAT (freezes its design and opens a UAT cycle)organization, studyelevatednoneOA, PM
study.uat.close_cyclePass or fail the open UAT cycle (a failed cycle returns the version to Build)organization, studyelevatednoneOA, PM
study.uat_issue.readView the issues and results of a UAT cycle (what testers found, and what became of it)organization, study, sitestandardnoneOA, PM, ED, CRA, DM, SM, AUD, PI, CRC
study.uat_issue.writeRaise, edit, resolve, accept and reopen the issues of the open UAT cycleorganization, study, sitestandardnoneOA, PM, CRA, DM, PI, CRC
study.version.signoffSign off a version that passed UAT (author, QA or approver; three different people)organization, studycriticale-signaturePM, DM, SM
study.version.go_liveTake an approved version Live (supersedes the version that was Live)organization, studycriticalnoneOA, PM
study.version.withdrawWithdraw a version that has not gone Liveorganization, studyelevatednoneOA, PM

Sites

PermissionWhat it allowsHeld atRiskRulesHeld by
site.readView site detailsorganization, study, sitestandardnoneOA, PM, CRA, SM, SSM, AUD, PI, CRC, PH, STM, RM
site.writeCreate / edit sites and stafforganization, studystandardnoneOA, PM
site.activateActivate a registered siteorganization, studyelevatednoneOA, PM
site.transitionTransition site lifecycle (suspend / resume / close)organization, studyelevatednoneOA, PM

Subjects

PermissionWhat it allowsHeld atRiskRulesHeld by
subject.readView subject dataorganization, study, sitestandardnoneOA, PM, CRA, DM, MO, SM, SSM, AUD, PI, CRC, PH, STM, CDC
subject.writeEnroll subjects, edit datasitestandardseparation of duties: enter-vs-lock, side API, CRC
subject.deleteWithdraw / archive subjectsorganization, study, siteelevatednoneOA, PI
clinical.contact.writeRecord, and remove with a reason, a contact with a subjectsitestandardnonePI, CRC
clinical.consent.writeRecord a subject's consent, or refusal, when an amendment asks them to consent againsitestandardnonePI, CRC
subject.eligibilityDetermine subject eligibility (investigator attestation)organization, study, sitecriticalinvestigator roles onlyPI

Visits

PermissionWhat it allowsHeld atRiskRulesHeld by
visit.readView visit schedule and dataorganization, study, sitestandardnoneOA, PM, ED, CRA, DM, MO, SM, SSM, AUD, PI, CRC, PH, STM, CDC
visit.writeVisit-schedule participation (visit-instance edits are gated by subject.write)sitestandardnonePI, CRC

Forms

PermissionWhat it allowsHeld atRiskRulesHeld by
form.readOpen forms and view answersorganization, study, sitestandardnoneOA, PM, ED, CRA, DM, MO, SM, SSM, AUD, PI, CRC, PH, STM, CDC
form.writeEnter / edit form datasitestandardseparation of duties: enter-vs-lock, side API, CRC
form.designEdit form templates in builderorganization, studystandardnoneOA, PM, ED
form.publishPublish form versions to liveorganization, studystandardnoneOA, PM, ED
form.freezeMarks a role as data-locking authority (separation of duties: cannot also enter data)organization, studystandardseparation of duties: enter-vs-lock, side BOA, PM, ED
form.write_dispensingEnter data on drug dispensing / accountability forms onlysitestandardseparation of duties: enter-vs-lock, side APH

Queries

PermissionWhat it allowsHeld atRiskRulesHeld by
clinical.query.readView queriesorganization, study, sitestandardnoneOA, PM, CRA, DM, MO, SM, AUD, PI, CRC, PH, STM, CDC
clinical.query.raiseOpen a new manual queryorganization, studystandardseparation of duties: query-raise-vs-answer, side APM, CRA, DM, MO, STM
clinical.query.answerRespond to a query on behalf of the sitesitestandardseparation of duties: query-raise-vs-answer, side BPI, CRC, PH
clinical.query.closeClose / resolve a query after answer reviewedorganization, studystandardnoneDM, MO, CDC
clinical.query.reopenReopen a closed query when answer is unsatisfactoryorganization, studystandardnoneCRA, DM, MO

Monitoring

PermissionWhat it allowsHeld atRiskRulesHeld by
sdv.configureDefine the SDV / risk-based targeting plan (which fields require source verification)organization, studystandardnoneOA, PM, DM
sdv.performVerify captured data against source documents (perform SDV)organization, studystandardnoneCRA

Audit

PermissionWhat it allowsHeld atRiskRulesHeld by
audit.readAccess audit trailorganization, study, sitestandardnoneOA, PM, CRA, DM, MO, SM, AUD, PI, CRC, STM, CDC, RM
audit.verifyVerify the audit-trail hash chainorganization, studyelevatednoneOA, AUD

Exports

PermissionWhat it allowsHeld atRiskRulesHeld by
export.readView export historyorganization, studystandardnoneOA, PM, DM, SM, SSM, AUD, RM
export.runTrigger ad-hoc and signed exportsorganization, studycriticalnoneOA, PM, DM, RM

Admin

PermissionWhat it allowsHeld atRiskRulesHeld by
rbac.manageManage roles, policies, permissionsorganizationcriticalnoneOA
user.manageInvite / suspend / impersonate usersorganizationcriticalnoneOA
system.monitorView system health and queuesorganizationelevatednoneOA
org.audit.readAccess the organization audit trailorganizationelevatednoneOA
org.readView the organization and its teamorganizationstandardnoneOA
org.manageManage organization settings and user provisioningorganizationcriticalnoneOA
user.directory.readBrowse the organization user directory (for team staffing)organization, studystandardnoneOA, PM

Workflow

PermissionWhat it allowsHeld atRiskRulesHeld by
workflow.designBuild and edit workflowsorganization, studyelevatednoneOA, PM, ED

E-Sign

PermissionWhat it allowsHeld atRiskRulesHeld by
signature.signApply e-signatures to recordssitecriticale-signature; investigator roles onlyPI

Documents

PermissionWhat it allowsHeld atRiskRulesHeld by
document.readView, download, and preview study documentsorganization, study, sitestandardnoneEvery role
document.writeUpload documents, add versions, edit metadataorganization, studystandardnoneOA, PM, DM, RM
document.manageApprove and archive study documentsorganization, studystandardnoneOA, PM, RM

Team

PermissionWhat it allowsHeld atRiskRulesHeld by
team.assignAssign / provision a study team roleorganization, studyelevatednoneOA, PM
team.manageSuspend / resume / retire team assignmentsorganization, studyelevatednoneOA, PM
team.training_completeMark a team member as protocol-training completeorganization, studystandardnoneOA, PM
delegation.signSign the delegation-of-authority for a site assignmentorganization, study, sitecriticale-signature; investigator roles onlyPI

Library

PermissionWhat it allowsHeld atRiskRulesHeld by
library.writeCreate / edit shared library formsorganization, studyelevatednoneOA, ED

AI

PermissionWhat it allowsHeld atRiskRulesHeld by
ai.generateGenerate or edit forms with AIorganization, studystandardnoneOA, PM, ED

Safety

PermissionWhat it allowsHeld atRiskRulesHeld by
clinical.event.readRead a subject’s events and the adverse event and SAE logsorganization, study, sitestandardnoneOA, PM, CRA, DM, MO, SM, AUD, PI, CRC, STM, CDC
clinical.event.writeRecord, upgrade to serious, and remove an event (adverse event, concomitant medication)sitestandardnonePI, CRC
clinical.event.reportSet the safety report status of a serious adverse event and its awareness timeorganization, study, sitestandardnonePM, DM, MO, PI
clinical.event.reviewRecord the medical review of a serious adverse event (agreed, disagreed, or needs information)organization, studystandardnoneMO
clinical.event.reconcileRecord the reconciliation of a serious adverse event with the safety databaseorganization, studystandardnonePM, DM
deviation.reportReport and update protocol deviation statusorganization, study, sitestandardnonePM, CRA, DM, MO, PI, CRC

What the system records

Creating, changing, suspending and restoring a custom role, accepting a warning with a reason, and asking the role assistant are in the organization's audit trail (rbac.custom_role.created, rbac.custom_role.updated with the earlier version kept as a revision, rbac.custom_role.suspended, rbac.custom_role.restored, rbac.custom_role.warning_overridden, rbac.ai.suggestion_requested). Every allow decision on a governance permission is recorded (authz.decision). See Audit events.

What you cannot do, and why

  • Change a standard role. It is a versioned template; make a custom role instead.
  • Give a role both sides of a separation of duties. The catalogue marks the permissions that pair; the editor refuses the role.
  • Put an investigator-only or site-only permission on a role that cannot hold it.
  • Create a role whose name is a standard role's or another's.

The full set of rules, with where each is enforced and what you see, is on Who can and cannot.

Compliance Q&A

Compliance Q&ABuiltPart 11 11.10(d)Part 11 11.10(g)Annex 11 12ICH E6 data-governance
Is access limited to authorized people, by role?

Yes. Every operation of the API declares the permissions it needs, and a request is refused before it reaches any data if the person's role at that level does not hold one. The permissions are fixed by the platform; roles are composed from them; and the table above is generated from the code, so it is what is enforced. Limits: whether the right people hold the right roles is your organization's decision and review (Review organization access and audit).

Evidence: server/src/modules/platform/rbac/domain (permission.ts, role-catalog.ts)server/src/api/middleware/authorize.tsthis page is generated from them

Compliance Q&ABuiltPart 11 11.10(g)Annex 11 12
Can a role be given both sides of a separation of duties, such as entering data and locking it?

No. Permissions on opposite sides of a pair are marked in the catalogue, and a role holding both is refused with a hard error that no administrator can accept.

Evidence: server/src/modules/platform/rbac/domain/sod.tsserver role guardrails (hard error in the role editor, whoever is editing)

Who can and cannot · Screens and who sees them · Roles · Audit events · Statuses