Roles & Permissions
Dacard.ai uses hierarchical role-based access control (RBAC). Each user is assigned exactly one role, and higher roles inherit all permissions from lower roles.Six roles
Member
Lead
Executive
Admin
Super Admin
Dacard Admin
Roles are hierarchical. An
admin (level 40) automatically inherits all permissions from member (10), lead (20), and executive (30).Permission matrix
- Scoring
- Products
- Reports
- Account
- Platform Admin
Role assignment
Roles are assigned during onboarding based on the user’s self-reported title:
Account admins can change any member’s role up to their own level via
PATCH /api/account/members. Admins can assign member, lead, executive, or admin. Only dacard_admin can assign super_admin or dacard_admin.
How roles are stored
Roles are stored in two places for resilience:- Clerk publicMetadata, fast path, read from session claims (no DB call)
- Database, source of truth, synced to Clerk on role change