Documentation Index¶
Fetch the complete documentation index at: https://makakoo-traylinx-35.mintlify.app/llms.txt Use this file to discover all available pages before exploring further.
Role-Based Access Control¶
Understand the Owner, Admin, and Member roles and their permissions in TrayLinx.
TrayLinx uses role-based access control (RBAC) to determine what each user can do within an organization and its projects. Roles are assigned at the organization level and can be overridden at the project level.
The three roles¶
Every organization member has one of three roles:
Permissions matrix¶
The following table shows what each role can do at the organization level.
| Permission | Owner | Admin | Member |
|---|---|---|---|
| View organization | ✓ | ✓ | ✓ |
| View member list | ✓ | ✓ | ✓ |
| Update organization name | ✓ | ✓ | — |
| Access organization settings | ✓ | ✓ | — |
| Invite members | ✓ | ✓ | — |
| Update member roles | ✓ | ✓ | — |
| Remove members | ✓ | ✓ | — |
| Create projects | ✓ | ✓ | — |
| Delete projects | ✓ | ✓ | — |
| Manage billing and subscriptions | ✓ | ✓ | — |
| Manage organization wallet | ✓ | ✓ | — |
| Delete organization | ✓ | — | — |
Project-level permissions¶
Roles also apply within projects. When a member joins an organization, their organization role determines their default access across all projects. A project-specific role can override this default for individual projects.
| Permission | Owner/Admin | Member |
|---|---|---|
| View project | ✓ | ✓ |
| Create and manage API keys | ✓ | — |
| Add LLM credentials | ✓ | — |
| Manage project members | ✓ | — |
| Create and edit notebooks | ✓ | ✓ |
| Access AI Studio tools | ✓ | ✓ |
| View project analytics | ✓ | ✓ |
| Delete project | ✓ | — |
Access types¶
Beyond roles, TrayLinx tracks two access types for organization members:
- Organization Member (
ORGANIZATION_MEMBER) — Has organization-wide membership. Automatically has access to all projects within the organization, with their role determining what they can do in each. - Project-Only Member (
PROJECT_ONLY_MEMBER) — Has no organization-wide membership. Access is limited to the specific projects they were explicitly added to.
You can convert an organization member to a project-only member through the Member Management dialog. This removes their organization membership and grants them direct access to the projects you specify.
Denied project access¶
Owners and Admins can explicitly deny a member access to a specific project, even if that member has organization-wide membership. A denied member's project role is set to DENIED and they cannot view or interact with that project.
To restore access, click Restore on the denied project in the member management dialog.
Permission guards in the UI¶
TrayLinx enforces permissions at two layers:
-
Route guards — The
OrganizationPermissionGuardandOrganizationSettingsGuardcomponents check permissions before rendering protected pages. If a user navigates to a settings URL without sufficient permissions, they are redirected to the organization overview page. -
Element-level guards — Buttons and controls in the UI are conditionally rendered based on the current user's permissions. For example, the Create Project button is only shown when
canCreateProjectistrue, and the Add Member button is only active whencanAddUseristrue.
Permissions are derived from the meta.can object returned by the API and cached locally. They are automatically refreshed when a 403 response is received or when a role-change event is dispatched.
Changing a member's role¶
INSUFFICIENT_PERMISSIONS error code if attempted.
Built with Mintlify.