POST
/api/v1/exams/papers
Create an exam
Creates an exam paper. Generation is asynchronous — returns 202 Accepted with a paper_id and status: pending. Await the exam.completed webhook or poll Retrieve an exam.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
user_id |
string | required | Your identifier for the student (billing) |
exam.subject_id |
uuid | required | Subject (must be exam-enabled on your subscription) |
exam.topic_ids |
array | required | One or more topic UUIDs under the subject |
exam.duration_minutes |
integer | required | 30, 45, or 60 |
exam.target_difficulty |
string | optional | easy, medium (default), hard, or mixed |
exam.focus |
string | optional | Free-text focus area |
Returns
A pending paper with paper_id, total_marks, and a poll_url.