The Edpire API follows semantic versioning. Breaking changes increment the major version and are announced with at least 90 days notice. Non-breaking additions (new endpoints, new optional response fields, new webhook events) are shipped without a version bump.
v1.0 — April 2026
Initial public release.
REST API
| Endpoint | Description |
|---|
GET /api/v1/assessments | List published assessments with status filter and pagination |
GET /api/v1/assessments/{id} | Fetch full assessment content (exercises, questions, content AST) — answer keys never included |
POST /api/v1/assessments/{id}/check | Grade a single question in real time without revealing the correct answer |
POST /api/v1/assessments/{id}/submit | Submit a full answer set for server-side grading (Tier 4 — headless) |
GET /api/v1/assessments/{id}/results | All submissions for an assessment |
GET /api/v1/submissions/{id} | Single submission with per-question breakdown |
GET /api/v1/learners/{ref}/results | All results for a learner, keyed by learner_ref |
GET /api/v1/collections | List collections |
GET /api/v1/collections/{id} | Collection with ordered assessment items |
POST /api/v1/collections | Create a collection |
PATCH /api/v1/collections/{id} | Update collection name / description |
DELETE /api/v1/collections/{id} | Delete a collection |
POST /api/v1/collections/{id}/items | Add an assessment to a collection |
DELETE /api/v1/collections/{id}/items/{itemId} | Remove an item |
PATCH /api/v1/collections/{id}/reorder | Reorder items |
GET /api/v1/collections/{id}/results | All submissions across a collection’s assessments |
POST /api/v1/webhooks | Register a webhook endpoint |
GET /api/v1/webhooks | List registered webhooks |
DELETE /api/v1/webhooks/{id} | Delete a webhook |
GET /api/v1/webhooks/deliveries | Delivery history for debugging |
POST /api/v1/embed/token | Mint a short-lived single-use embed token for browser-side rendering |
Webhook events
submission.graded, assessment.published, assessment.content_updated, assessment.archived, assessment.updated, collection.created, collection.updated, collection.deleted, collection.archived, collection.item_added, collection.item_removed, collection.reordered
SDK — @edpire/sdk
| Export | Description |
|---|
EdpireAssessment.mount() | Embed the full assessment player in any web page |
EdpireQuestion (React) | Render individual questions for custom learner flows |
flattenAssessment() | Flatten an assessment into an ordered question sequence |
renderQuestion() | Vanilla JS question renderer for non-React stacks |
EdpireClient (/client) | Typed Node.js API client with full endpoint coverage |
Sandbox environment
Every org automatically gets a sandbox environment — use edp_test_ API keys to develop against isolated, pre-seeded test data without touching production. See Sandbox.