- Courses and cohorts are separated. A
Courseis the syllabus — the curriculum, the lesson tree, the rubrics. ACohortis one run of that course for a specific group. Same syllabus, three semesters → one Course, three Cohorts. - Activities and assignments are different. Activities are inline exercises (quizzes, flashcards, short-answer prompts). Assignments are gradable artefacts, with submissions, due dates, and rubrics.
- Everything has an AI mode. Anywhere you can author by hand, you
can also generate with
*.generate*().
The graph
Resources at a glance
object
A tenant. Holds users and courses. A user can belong to many
workspaces (each gets a separate API key).
object
The curriculum: name, description, language, target hours, AI
instructions. Contains cohorts.A
Course has no students by itself. To enroll students, create a
Cohort.object
A run of a course for a group of students at a moment in time.
Carries the actual lessons, students, teachers, assignments, and
submissions.Multiple cohorts of the same course are common: spring vs. fall, group
A vs. group B, English-track vs. Spanish-track.
object
Optional. Groups lessons inside a cohort. If you don’t need them,
ignore them — lessons can hang directly off the cohort.
object
The atomic learning unit. Has a name, a type, a position, and holds:
LessonContent(the long-form reading)Activity(one or many — the inline exercises)Assignment(zero or one — the gradable item)
object
HTML reading material. AI-generated, hand-written, or imported from
PDF / DOCX / SCORM.
object
One of 22 types:
quiz,
flashcard, podcast, diagram, glossary, expand, explain…
All created with the same activities.create() call.object
A single question inside an Activity. Quizzes have many; flashcards
have one (the front/back pair). Each Question can be evaluated
individually or as part of the parent Activity.
object
A gradable task tied to a lesson. Has a rubric, a due date, optional
AI evaluator config.
object
A student’s response to an assignment, plus its grade. The grade may
be human, AI, or both. AI grading attaches a
grading_rationale.object
Anyone with access to a workspace. The
role field is one of
student, teacher, manager, admin. There are sugar resources
students and teachers for the common filters.Identifiers
IDs are immutable, URL-safe, and sortable by creation time.
Mapping from other LMSs
A
Course (Hawkings) has no direct analogue in those systems — they
treat the syllabus and the run as one object. The split is what lets you
re-run a course without re-authoring it.