Skip to main content
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

EndpointDescription
GET /api/v1/assessmentsList 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}/checkGrade a single question in real time without revealing the correct answer
POST /api/v1/assessments/{id}/submitSubmit a full answer set for server-side grading (Tier 4 — headless)
GET /api/v1/assessments/{id}/resultsAll submissions for an assessment
GET /api/v1/submissions/{id}Single submission with per-question breakdown
GET /api/v1/learners/{ref}/resultsAll results for a learner, keyed by learner_ref
GET /api/v1/collectionsList collections
GET /api/v1/collections/{id}Collection with ordered assessment items
POST /api/v1/collectionsCreate a collection
PATCH /api/v1/collections/{id}Update collection name / description
DELETE /api/v1/collections/{id}Delete a collection
POST /api/v1/collections/{id}/itemsAdd an assessment to a collection
DELETE /api/v1/collections/{id}/items/{itemId}Remove an item
PATCH /api/v1/collections/{id}/reorderReorder items
GET /api/v1/collections/{id}/resultsAll submissions across a collection’s assessments
POST /api/v1/webhooksRegister a webhook endpoint
GET /api/v1/webhooksList registered webhooks
DELETE /api/v1/webhooks/{id}Delete a webhook
GET /api/v1/webhooks/deliveriesDelivery history for debugging
POST /api/v1/embed/tokenMint 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

ExportDescription
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.