Atlas
API

Quickstart

Everything below the graph endpoints is org-scoped by an API key. In this dev build, pnpm seed prints a key and demo learner ids.

# seed the local db, copy the printed key
pnpm seed

# the tutoring loop
curl -H "Authorization: Bearer $KEY" localhost:3000/api/v1/learners/$ID/session/next
curl -X POST -H "Authorization: Bearer $KEY" \
  -d '{"topicId":"$TOPIC","grade":"correct","mode":"review"}' \
  localhost:3000/api/v1/learners/$ID/session/answer
curl -H "Authorization: Bearer $KEY" localhost:3000/api/v1/learners/$ID/memory

Endpoints

MethodPathAuthWhat it returns
GET/api/v1/subjectsnoneSubjects with topic counts and domains
GET/api/v1/topics?q=&subject=&ageMin=&ageMax=noneSearch micro-topics
GET/api/v1/topics/:idnoneOne topic, with evidence and assessment prompt
GET/api/v1/topics/:id/prerequisites?transitive=&strength=noneWhat must come first, and why
GET/api/v1/topics/:id/unlocksnoneWhat this topic opens up
GET/api/v1/standards/:key/topicsnoneTopics distilled from a curriculum standard
GET/api/v1/topics/:id/contentnoneLesson, doodle scenes, video query, quiz item bank
GET/api/v1/learnerskeyLearners in your org
POST/api/v1/learnerskeyCreate a learner (displayName, birthYear)
GET/api/v1/learners/:idkeyLearner with memory summary and per-subject progress
GET/api/v1/learners/:id/session/next?subject=keyWhat to ask now: placement probe, refresh, or new topic
POST/api/v1/learners/:id/session/answerkeyRecord a grade; credit propagates, misses flag a prerequisite
GET/api/v1/learners/:id/memorykeyPer-topic memory: strength, recall probability, due date
GET/api/v1/learners/:id/masterykeyMastered and in-progress topic ids
POST/api/v1/learners/:id/masterykeyImport external state (vouched, audited later)
GET/api/v1/learners/:id/frontier?subject=&limit=keyRanked list of what is within reach
GET/api/v1/learners/:id/path/:topicIdkeyLearning path to a goal topic
GET/api/v1/learners/:id/assessment/next?subject=keyAlias of session/next
POST/api/v1/learners/:id/assessment/:topicIdkeyAlias of session/answer, outcome wording
GET/api/v1/learners/:id/report?curriculum=keyStandards coverage report
Free tier

The graph endpoints (topics, prerequisites, unlocks, standards) are also available as a stateless MCP server: pnpm --filter @atlas/mcp-server start. Point any agent at it; no account needed. The hosted API adds the per-learner memory model on top.