Skip to main content
Version: 25.3

Custom roles

Seqera Platform supports custom roles to define permissions-based access control at a more granular level than the six default workspace participant roles.

Create custom roles

Organization owners can add custom roles and assign read, write, execute, admin, and delete permissions for every Seqera resource type:

  1. Select your organization name from the organization and workspace switcher in the top navigation.
  2. Select Access control to view the list of default and custom roles available in your organization.
  3. Select Add role.
  4. Enter a role Name and optional Description.
  5. From the Permissions list, select the Read, Write, Execute, Admin, and Delete permissions your custom role requires for each resource type.
  6. Select Add to create the custom role and return to the Access control roles list.

Select Edit or Delete to manage existing custom roles in the list.

Permissions

Individual permissions grant read, write, execute, admin, or delete access for each Seqera entity. Individual read and write permissions may grant access for multiple operations via the Platform UI, API, and other programmatic tools such as Platform CLI. For example, the action:read permission allows a user to view the list of actions in a workspace, view the details of a specific action, and view available action types.

Compute

PermissionDescriptionAPI endpoint
compute_environment:readList all compute environmentsGET /compute-envs
View compute environment detailsGET /compute-envs/{computeEnvId}
compute_environment:writeCreate a new compute environmentPOST /compute-envs
Edit an existing compute environmentPUT /compute-envs/{computeEnvId}
Set a compute environment as primaryPOST /compute-envs/{computeEnvId}/primary
Validate compute environment name availabilityGET /compute-envs/validate
compute_environment:deleteDelete a compute environmentDELETE /compute-envs/{computeEnvId}
credentials:readList all credentials in workspaceGET /credentials
View credential detailsGET /credentials/{credentialsId}
credentials:writeAdd new credentialsPOST /credentials
Edit existing credentialsPUT /credentials/{credentialsId}
Validate credentials(Used by Platform)
Validate credential name availabilityGET /credentials/validate
credentials:deleteDelete credentialsDELETE /credentials/{credentialsId}
credentials_encrypted:readGet encrypted credentials(Used by Platform)
pipeline_secrets:readList all pipeline secretsGET /pipeline-secrets
View pipeline secret detailsGET /pipeline-secrets/{secretId}
pipeline_secrets:writeCreate a new pipeline secretPOST /pipeline-secrets
Validate secret name availabilityGET /pipeline-secrets/validate
Edit an existing pipeline secretPUT /pipeline-secrets/{secretId}
pipeline_secrets:deleteDelete a pipeline secretDELETE /pipeline-secrets/{secretId}
platform:readList available platformsGET /platforms
List platform regionsGET /platforms/{platformId}/regions
View platform detailsGET /platforms/{platformId}
essential:readList available features(Used by Platform)

Data

PermissionDescriptionAPI endpoint
data_link:readList all data-links (cloud buckets)GET /data-links
Browse data-link contentsGET /data-links/{dataLinkId}/browse
View data-link detailsGET /data-links/{dataLinkId}
data_link:writeRefresh data-link cacheGET /data-links/cache/refresh
Browse data-link directory treeGET /data-links/{dataLinkId}/browse-tree
Download files from data-linkGET /data-links/{dataLinkId}/download
Generate download URL for data-link filesGET /data-links/{dataLinkId}/generate-download-url
Generate download scriptGET /data-links/{dataLinkId}/script/download
Upload files to data-linkPOST /data-links/{dataLinkId}/upload
Complete file upload to data-linkPOST /data-links/{dataLinkId}/upload/finish
Create a custom data-linkPOST /data-links
Edit data-link metadataPUT /data-links/{dataLinkId}
data_link:deleteDelete files from data-linkDELETE /data-links/{dataLinkId}/content
Remove a data-link from workspaceDELETE /data-links/{dataLinkId}
data_link:adminHide data-links(Used by Platform)
Show data-links(Used by Platform)
dataset:readList datasets (legacy endpoint)GET /workspaces/{workspaceId}/datasets
List workspace dataset versions (legacy endpoint)GET /workspaces/{workspaceId}/datasets/versions
List dataset versions (legacy endpoint)GET /workspaces/{workspaceId}/datasets/{datasetId}/versions
View dataset metadata (legacy endpoint)GET /workspaces/{workspaceId}/datasets/{datasetId}/metadata
Download dataset files (legacy endpoint)GET /workspaces/{workspaceId}/datasets/{datasetId}/v/{version}/n/{fileName}
List all datasetsGET /datasets
List latest dataset versionsGET /datasets/versions
List versions for a specific datasetGET /datasets/{datasetId}/versions
List datasets used in a pipeline launchGET /launch/{launchId}/datasets
View dataset metadataGET /datasets/{datasetId}/metadata
Download dataset filesGET /datasets/{datasetId}/v/{version}/n/{fileName}
dataset:writeCreate dataset (legacy endpoint)POST /workspaces/{workspaceId}/datasets
Edit dataset (legacy endpoint)PUT /workspaces/{workspaceId}/datasets/{datasetId}
Upload dataset (legacy endpoint)POST /workspaces/{workspaceId}/datasets/{datasetId}/upload
Create a new datasetPOST /datasets
Edit dataset metadataPUT /datasets/{datasetId}
Upload files to datasetPOST /datasets/{datasetId}/upload
dataset:deleteDelete dataset (legacy endpoint)DELETE /workspaces/{workspaceId}/datasets/{datasetId}
Delete a single datasetDELETE /datasets/{datasetId}
Delete multiple datasetsDELETE /datasets
dataset:adminHide datasetsPOST /datasets/hide
Show datasetsPOST /datasets/show
Disable dataset versionPOST /datasets/{datasetId}/versions/{version}/disable
dataset_label:writeAdd labels to datasetsPOST /datasets/labels/add
Remove labels from datasetsPOST /datasets/labels/remove
Apply label sets to datasetsPOST /datasets/labels/apply

Pipelines

PermissionDescriptionAPI endpoint
action:readView action detailsGET /actions/{actionId}
View available action typesGET /actions/types
List all actions in workspaceGET /actions
action:executeTrigger an action to runPOST /actions/{actionId}/launch
action:writeCreate a new actionPOST /actions
Edit an existing actionPUT /actions/{actionId}
Test action configuration(Used by Platform)
Pause a running actionPOST /actions/{actionId}/pause
Validate action name availabilityGET /actions/validate
action:deleteDelete an actionDELETE /actions/{actionId}
action_label:writeApply resource labels when creating actionsSub-operation on POST /actions
Apply resource labels when updating actionsSub-operation on PUT /actions/{actionId}
Add labels to actionsPOST /actions/labels/add
Remove labels from actionsPOST /actions/labels/remove
Apply label sets to actionsPOST /actions/labels/apply
container:readView container details(Used by Platform)
List containers(Used by Platform)
List workflow containers(Used by Platform)
launch:readView launch detailsGET /launch/{launchId}
pipeline:readView pipeline repository informationGET /pipelines/info
View pipeline schema and parametersGET /pipelines/{pipelineId}/schema
View pipeline schema from repository URL(Used by Platform)
View pipeline launch configurationGET /pipelines/{pipelineId}/launch
List available pipeline repositoriesGET /pipelines/repositories
List all pipelines in workspaceGET /pipelines
View pipeline detailsGET /pipelines/{pipelineId}
Fetch pipeline optimization(Used by Platform)
List pipeline versions(Used by Platform)
pipeline:writeOverwrite fields when creating workflow launchSub-operation on POST /workflow/launch
Add a new pipeline to workspacePOST /pipelines
Edit pipeline configurationPUT /pipelines/{pipelineId}
Configure pipeline(Used by Platform)
Validate pipeline name availabilityGET /pipelines/validate
Validate pipeline version name(Used by Platform)
Manage pipeline version(Used by Platform)
pipeline:deleteDelete a pipelineDELETE /pipelines/{pipelineId}
pipeline_label:writeApply resource labels when launching workflowsSub-operation on POST /workflow/launch
Add labels to pipelinesPOST /pipelines/labels/add
Apply resource labels when creating pipelinesSub-operation on POST /pipelines
Apply resource labels when updating pipelinesSub-operation on PUT /pipelines/{pipelineId}
Remove labels from pipelinesPOST /pipelines/labels/remove
Apply label sets to pipelinesPOST /pipelines/labels/apply
workflow:readView run detailsGET /workflow/{workflowId}
View run progressGET /workflow/{workflowId}/progress
List tasks in a runGET /workflow/{workflowId}/tasks
View individual task detailsGET /workflow/{workflowId}/task/{taskId}
View run metricsGET /workflow/{workflowId}/metrics
List all runs in workspaceGET /workflow
View run launch configurationGET /workflow/{workflowId}/launch
View run execution logsGET /workflow/{workflowId}/log
View task-specific logsGET /workflow/{workflowId}/log/{taskId}
Download run logsGET /workflow/{workflowId}/download
Download workflow workspace content(Used by Platform)
Download task logsGET /workflow/{workflowId}/download/{taskId}
View workflow reports(Used by Platform)
Download workflow report(Used by Platform)
Fetch workflow optimization(Used by Platform)
Check optimized workflow list(Used by Platform)
workflow:executeLaunch a pipeline runPOST /workflow/launch
Cancel a running pipelinePOST /workflow/{workflowId}/cancel
Launch pipeline(Used by Platform)
workflow:writeCreate execution tracePOST /trace/create
Update trace heartbeatPUT /trace/{workflowId}/heartbeat
Mark trace beginPUT /trace/{workflowId}/begin
Mark trace completePUT /trace/{workflowId}/complete
Update trace progressPUT /trace/{workflowId}/progress
workflow:deleteDelete a single runDELETE /workflow/{workflowId}
Delete multiple runsPOST /workflow/delete
workflow_label:writeAdd labels to runsPOST /workflow/labels/add
Remove labels from runsPOST /workflow/labels/remove
Apply label sets to runsPOST /workflow/labels/apply
workflow_quick:executeCreate quick launch when creating workflow launchSub-operation on POST /workflow/launch
Launch quick pipeline(Used by Platform)
Create GA4GH workflow runPOST /ga4gh/wes/v1/runs
workflow_star:readCheck if run is starred (favourited)GET /workflow/{workflowId}/star
workflow_star:writeStar (favourite) a runPOST /workflow/{workflowId}/star
workflow_star:deleteUnstar (unfavourite) a runDELETE /workflow/{workflowId}/star

Settings

PermissionDescriptionAPI endpoint
label:readList all workspace labelsGET /labels
label:writeCreate a new labelPOST /labels
Edit an existing labelPUT /labels/{labelId}
label:deleteDelete a labelDELETE /labels/{labelId}
workspace:readView workspace detailsGET /orgs/{orgId}/workspaces/{workspaceId}
List workspace participantsGET /orgs/{orgId}/workspaces/{workspaceId}/participants
workspace:writeEdit workspace settingsPUT /orgs/{orgId}/workspaces/{workspaceId}
Add a workspace participantPUT /orgs/{orgId}/workspaces/{workspaceId}/participants/add
Find workspace participant candidates(Used by Platform)
Change participant rolePUT /orgs/{orgId}/workspaces/{workspaceId}/participants/{participantId}/role
Remove a workspace participantDELETE /orgs/{orgId}/workspaces/{workspaceId}/participants/{participantId}
workspace:deleteDelete the workspaceDELETE /orgs/{orgId}/workspaces/{workspaceId}
workspace:adminModify workspace ownership when updating participant roleSub-operation on PUT /orgs/{orgId}/workspaces/{workspaceId}/participants/{participantId}/role
Delete workspace owner when deleting participantSub-operation on DELETE /orgs/{orgId}/workspaces/{workspaceId}/participants/{participantId}
workspace_self:deleteLeave workspace (remove self as participant)DELETE /orgs/{orgId}/workspaces/{workspaceId}/participants
workspace_studio:readView studio settings for workspaceGET /orgs/{orgId}/workspaces/{workspaceId}/settings/studios
workspace_studio:writeEdit studio session lifespan settingsPUT /orgs/{orgId}/workspaces/{workspaceId}/settings/studios

Studios

PermissionDescriptionAPI endpoint
studio:readView studio session detailsGET /studios/{sessionId}
View studio repository details(Used by Platform)
List all studios in workspaceGET /studios
List available studio templatesGET /studios/templates
List checkpoints for a studioGET /studios/{sessionId}/checkpoints
View checkpoint detailsGET /studios/{sessionId}/checkpoints/{checkpointId}
studio:executeList mounted data-links for studiosGET /studios/data-links
Start a studio sessionPUT /studios/{sessionId}/start
Stop a studio sessionPUT /studios/{sessionId}/stop
studio:writeCreate a new studioPOST /studios
Edit checkpoint namePUT /studios/{sessionId}/checkpoints/{checkpointId}
Validate studio name availabilityGET /studios/validate
studio:deleteDelete a studioDELETE /studios/{sessionId}
studio:adminAdmin operations on other users' Studios
Delete studioSub-operation on DELETE /studios/{sessionId}
Start studioSub-operation on PUT /studios/{sessionId}/start
Stop studioSub-operation on PUT /studios/{sessionId}/stop
Extend studio lifespan (iframe)(Used by Platform)
Extend studio lifespanSub-operation on POST /studios/{sessionId}/lifespan
Admin access to studio(Used by Platform)
studio_label:writeApply resource labels when starting studiosSub-operation on PUT /studios/{sessionId}/start
Edit studio resource labels(Used by Platform)
studio_session:readOpen studio(Used by Platform)
studio_session:executeExtend studio lifespan (iframe)(Used by Platform)
Extend studio session lifespanPOST /studios/{sessionId}/lifespan