Staff shell at /admin. Default home for ADMIN / SUPER_ADMIN. Sidebar gates use permission strings (not only roles).
Operations
| Route | Purpose | Typical permission |
|---|
/admin | Stats / ops home | staff shell |
/admin/users | User management | users:read |
/admin/roles | Roles & permissions | roles:read (+ super-admin) |
/admin/teams | Platform teams | teams:read |
/admin/courses (+ categories / tags) | Catalog admin | (sidebar courses) |
/admin/career/tracks | Tracks & skills | career_tracks:manage |
/admin/analytics | Platform analytics | analytics:read |
/admin/reports | Reports | |
/admin/activities | Activity feed | |
/admin/settings | Admin settings | |
/admin/inbox | Messaging | |
Content & growth
| Route | Purpose | Permission |
|---|
/admin/content/blog | Blog CMS | content:read |
/admin/content/pricing | Pricing plans CMS | content:read |
/admin/content/site | Site & social | content:read |
/admin/content/newsletter | Subscribers | content:read |
/admin/promo-codes | Promos | promo_codes:manage |
/admin/email | Send tooling | email:manage |
Requests & money
| Route | Purpose | Permission |
|---|
/admin/requests/user | User / instructor approval requests | requests:manage |
/admin/requests/contact | Contact form inbox | requests:manage |
/admin/requests/quotes | Enterprise plan quotes | requests:manage |
/admin/instructor-earnings | Payout ops / mark paid | instructor_earnings:manage |
CMH ops checklist (admin)
- Approve instructors
- Manage tracks & skills at
/admin/career/tracks
- Match override via career admin API
- Mark employer seat invoices paid
APIs
/admin, /admin/rbac, /admin/teams, /admin/blog, /admin/pricing, /admin/site-settings, /admin/newsletter, /admin/plan-quotes, plus career admin under /career/admin/*.