Academy — learn.onoots.com
The Academy is the ecosystem’s on-demand training platform: Onoots’ own video courses so agents, operations teams, and clients learn to run the OS and their vertical. It is not a third-party catalog — the content is produced and published by the Onoots team.
The Academy is included in the Pro, Max, and Enterprise plans. Starter has no access. See Platform → plans.
For the student
Sign in with your Onoots account
Same session as the OS. If your plan doesn’t include the Academy, the app sends you to the Platform to change plans.
Pick a course from the catalog
The home page lists the courses available in your language (es/en). Each course is an ordered set of video lessons with its cover, title, and summary.
Watch the lessons
The player serves video through a signed, short-lived playback token: the video is not downloadable via a pasteable URL, and the token is only issued if your plan and session allow it.
Progress saves itself
Each lesson records how far you got as you watch, so you resume where you left off — from any device, because progress lives in your account, not the browser.
Content model
| Concept | What it is |
|---|---|
| Course group | The “logical” course, grouping its per-language versions |
| Course | A group’s version in one language (es/en), with slug, title, summary, cover |
| Lesson | A video unit inside the course, with its order in the syllabus |
| Progress | The student’s per-lesson progress, saved per account |
Keeping the course per language inside a group lets the same program ship in Spanish and English without duplicating the course’s identity: the student sees only their language and the catalog never mixes.
For the content team (admin)
The Academy has an admin panel restricted to Onoots staff authors — it is not opened by plan or by organization role: you must be explicitly enrolled as an author. Without that enrollment, the panel denies everyone.
From the panel the team can:
- Create and edit courses — title, summary, slug, language, order, and cover.
- Upload covers to public storage.
- Create lessons and upload the video — the upload goes directly to the video provider through a single-use upload URL, so the file never passes through the app.
- Track video status — after upload the video stays processing until the provider confirms transcoding and it flips to ready; only then is it playable.
API
All routes live under /api/learn on learn.onoots.com and require a session.
Student
| Method | Route | What it does |
|---|---|---|
GET | /api/learn/courses | Course catalog for the student’s language |
POST | /api/learn/lessons/{id}/playback-token | Issues the signed playback token for a lesson |
GET · POST | /api/learn/progress | Reads / records lesson progress |
Administration (staff authors)
| Method | Route | What it does |
|---|---|---|
GET · POST | /api/learn/admin/courses | Lists / creates courses |
PATCH · DELETE | /api/learn/admin/courses/{id} | Edits / deletes a course |
POST | /api/learn/admin/cover | Uploads a course cover |
POST | /api/learn/admin/lessons | Creates a lesson |
PATCH · DELETE | /api/learn/admin/lessons/{id} | Edits / deletes a lesson |
POST | /api/learn/admin/lessons/{id}/upload-url | Requests the direct video upload URL |
Security and access
- Plan gate — Academy access is decided by the organization’s plan (
learnAccess); it’s a boolean entitlement with no metering: watching courses does not spend AI tokens. - Protected video — every playback needs a short-lived signed token bound to the session; playback is additionally restricted to the Academy’s domain.
- Explicit admin — the author panel is not inherited from any role: it’s granted one by one.
Links
- Academy: learn.onoots.com
- Plans and quotas: Platform
- Live events (the complement to on-demand content): Live