Authentication
All endpoints require a valid Bearer token in the Authorization header.Base URL
Endpoints Overview
Role Endpoints
Create Role
Create a new custom role within an organization.POST /api/roles/create
Query Parameters:
Request Body:
Requires
roles:write permission. System roles (owner, admin, member, guest) cannot be created this way - they are automatically created with each organization.Update Role
Update an existing custom role.PUT /api/roles/update
Query Parameters:
Request Body:
All fields are optional - only include fields you want to update:
Delete Role
Delete a custom role from an organization.DELETE /api/roles/remove
Query Parameters:
List Roles
Retrieve all roles for an organization (includes both system roles and custom roles).GET /api/roles/list_roles
Query Parameters:
Returns both system roles (owner, admin, member, guest) and organization-specific custom roles. System roles have
is_system_role: true and organization_id: null.Permission Endpoints
List All Permissions
Retrieve all available permissions in the system.GET /api/roles/list_permissions
This returns all system-wide permissions. Use these permission IDs when creating or updating roles.
Create Permission
Create a new system-wide permission.POST /api/roles/permission
Request Body:
Permissions follow the
resource:action naming convention (e.g., kb:read, agent:execute, *:admin).Delete Permission
Delete a permission from the system.DELETE /api/roles/permission
Query Parameters:
Managing User Roles
To assign or update a userβs role within an organization, use the Users Service endpoints:- Update User Role:
PUT /api/users/update- Change a userβs role (requires owner permission) - List Users:
GET /api/users/list- See all users and their roles in an organization
Error Responses
Implementation Notes
System Roles
Four system roles are automatically created with each organization:
System roles cannot be created, updated, or deleted via the API.
Custom Roles
- Custom roles are organization-specific
- Hierarchy levels determine role precedence (0-100)
- Higher levels generally have more privileges
- Role names must be unique within an organization
- Roles assigned to members cannot be deleted
Permission Format
Permissions follow theresource:action pattern:
- Resources:
kb,conversation,agent,tool,organization,users,roles - Actions:
read,write,delete,admin,execute - Wildcards:
*:read(read all resources),kb:*(all kb actions),*:*(full access)
Required Permissions
- Create/Update/Delete Roles: Requires
roles:writepermission - Delete Roles: Requires
roles:deletepermission - View Roles: Requires
roles:readpermission - Manage Permissions: Requires system-level admin access