Roles & Permissions
Roles & Permissions
Roles and permissions let you control what each team member can do within a project.
For an overview of how roles, policies, and permissions work together, see the RBAC overview.
Default Roles
Every project comes with three preset roles. Each preset role includes all project permissions unless noted otherwise.
Owner
Full access to all resources in the project. No permission exclusions.
Manager
Includes all permissions. Managers have the same access as Owners.
Member
Includes everything except project:delete, retentionConfig:manage, user:manage, user:delete, and iam:manage. Members cannot delete the project, manage retention settings, assign roles to project members, remove members from the project, or manage roles and policies.
Custom Roles
You can create custom roles to fit your team’s needs. To create a new role:
- Navigate to Project Settings → Roles & Permissions
- Click New Role
- Enter a name and description for the role
- Assign a policy to the role
- Click Save
Common custom roles include “Annotator” roles that only allow a certain group of users for read and write access to datasets.
Custom Policies
Policies define the specific permissions a role has. Each permission controls access to a particular action, like dataset:read, dataset:create, golden:update, or trace:delete.
To create a custom policy:
- Navigate to Project Settings → Roles & Permissions
- Scroll to Custom Policies and click New Policy
- Enter a name for the policy
- Select the permissions you want to include
- Click Save
Once created, you can assign your custom policy to any role.
Custom roles are useful for creating specialized access levels—like an Annotator role that can only view and edit datasets, without access to traces or test runs.
Permission Syntax
Permissions follow a resource:action format. For example, dataset:read grants read access to datasets, while trace:evaluate allows running evaluations on traces.
Actions:
create— Create new resourcesread— View resourcesupdate— Modify existing resourcesdelete— Remove resourcesevaluate— Run evaluations on the resourceassign— Assign resources to users or queuesmanage— Includescreate,update, anddelete(varies by resource)
Permission resources:
dataset,golden— Datasets and their goldensmetric,metricCollection— Metric scores and collectionstrace,span,thread,endUser— Observability datatestRun,testCase,experiment— Evaluation runsprompt,promptVersion,promptLabel— Prompts and their versionsannotationQueue,queue_item— Annotation queues and their itemsproject,apiKey,modelCredential,modelCost,evaluationModel— Project settings and configurationretentionConfig— Data retention settings for traces, spans, test runs, datasets, and prompts (how long each is kept)iam— Project roles and policiestransformer,aiConnection,alertConfig,integration— Integrations and toolsuser— Team member management;user:managecontrols assigning roles to members, whileuser:deletecontrols removing members from the project
Not every resource will have all actions. For example, dataset doens’t have project_member, while annotation_queue doesn’t have evaluate. You can find the full list of permissions on the roles & permissions page.