Roles & Permissions
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.
Every project comes with three preset roles. Each preset role includes all project permissions unless noted otherwise.
Full access to all resources in the project. No permission exclusions.
Includes all permissions. Managers have the same access as Owners.
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.
You can create custom roles to fit your team’s needs. To create a new role:
Common custom roles include “Annotator” roles that only allow a certain group of users for read and write access to datasets.
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:
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.
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 — Includes create, update, and delete (varies by resource)Permission resources:
dataset, golden — Datasets and their goldensmetric, metricCollection — Metric scores and collectionsevaluationRule — Rules that automatically run metric collections on incoming traces, spans, and threadstrace, 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:manage controls assigning roles to members, while user:delete controls removing members from the projectNot 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.