Aceversity for developers
Connect a student's Aceversity study data — courses, exam and assignment dates, study plans, grades, practice stats and flashcards — to Claude, ChatGPT, n8n and your own code.
Aceversity turns a syllabus into a semester plan. The Aceversity API lets members (and the apps they approve) read and update that plan from anywhere.
| REST API | https://api.aceversity.com/v1 — JSON over HTTPS |
| OpenAPI 3.1 | https://api.aceversity.com/openapi.json — import it into Postman, ChatGPT Actions, Zapier, SDK generators |
| MCP server | https://api.aceversity.com/mcp — Streamable HTTP, for Claude and other MCP clients |
| OAuth 2.1 | Discovery at https://api.aceversity.com/.well-known/oauth-authorization-server, dynamic client registration, PKCE |
| API keys | Create and revoke at https://api.aceversity.com/keys |
| Status | https://api.aceversity.com/health |
What you can do
- "What's due this week?" —
GET /v1/agendareturns exams, assignments and unfinished study-plan steps in the student's time zone. - Keep the calendar right — add, move or remove exams and assignments (
/v1/items). - Track grades — set category weights and record scores; the API returns the current weighted grade and letter (
/v1/courses/{id}/grades). - Study smarter — see accuracy per topic and the weak topics to review (
/v1/practice/stats). - Make flashcards — create a vocabulary deck the student studies with spaced repetition in the app (
/v1/vocab/decks). - Answer syllabus questions —
GET /v1/courses/{id}?include_syllabus=truereturns the syllabus text.
Every endpoint acts on the signed-in member's own data. There are no admin or cross-student endpoints.
Pick your path
| You want to… | Start here |
|---|---|
| Call the API from a script | Quickstart |
| Use Aceversity inside Claude | Claude connector |
| Use it in ChatGPT | ChatGPT |
| Automate with n8n | n8n |
| Zapier, Make, Postman or another tool | Other platforms |
| Publish a connector to a directory | Testing → Submission checklists |
Requirements
- An Aceversity account with an active membership (trial, monthly or yearly). Without one, credentials work but only
GET /v1/mesucceeds; everything else returns403 membership_required. - HTTPS. Plain HTTP is refused in production.