Overview
Underlayer is training you build with an API and drop into your own product. No portal for your users to log into, no separate app for them to learn.
What this actually is
You write a course — through the API, in the dashboard builder, or by asking AI to draft one. You publish it. You put one iframe wherever your users already are. We tell you who finished, what they scored, and hand the ones who passed a certificate anyone can verify.
There is no catalogue, no enrolment, no student portal, and your learners never create an account. That is a deliberate choice rather than a missing feature: they are already signed in to your product, and asking them to sign up somewhere else is the most reliable way to stop them finishing anything.
The entire content model
Three levels. A course holds screens; a screen holds blocks; a block is one thing on the page. That is all of it — no modules, units, sections or lessons to learn about.
{
"title": "Refund policy",
"screens": [
{
"id": "s_intro",
"title": "The basics",
"blocks": [
{ "id": "b_h", "type": "heading", "text": "Refunds in 30 seconds", "level": "h2" },
{ "id": "b_p", "type": "text", "text": "Agents can refund up to $200 without approval." }
]
}
]
}There are 39 block types — paragraphs, images, video, flashcards, steps, timelines, accordions, four kinds of question — and the block reference gives a complete working example of every one.
Thirty seconds to something real
curl -X POST https://underlayer.outworx.io/api/v1/courses \
-H "Authorization: Bearer sk_test_..." \
-H "Content-Type: application/json" \
-d '{ "title": "Getting started" }'<iframe src="https://underlayer.outworx.io/embed/COURSE_ID?identity=usr_8f2k" width="100%" height="600"></iframe>The quickstart walks the whole path — key, course, content, publish, embed, and reading the completion back — in eight copy-paste steps. Start there if you have ten minutes.
Things worth knowing early
- Pass the learner's id — Add ?identity=your_user_id to the embed URL. Without it a run is anonymous — nothing resumes, no certificate can be issued, and it won't appear in your completion reports.
- PATCH replaces the screens array — Sending one screen deletes the others. Read the course, edit, send it all back — or use the MCP screen tools, which do exactly that for you.
- Only four block types are scored — The three quiz types and fill-in-the-blank. Flashcards, matching and hotspots are interactive but never counted, so the score on screen always matches the score in your reports.
- Courses translate — Add ?lang= to the embed URL for any of 22 locales. Untranslated text falls back to the source language, and a right-to-left locale flips the layout automatically.
- Nothing is silently degraded by plan — An endpoint above your tier returns a clear 403 naming the plan it needs. You never get a partial result.