Skip to main content
This endpoint allows a student to upload their completed PDF answer sheet for a quiz. You must submit the file within the allowed quiz duration — the server calculates the deadline from the start_at timestamp and the duration value you provide.

Endpoint

Required Role

Authenticated student — you must authenticate with a student-scoped Bearer token and be enrolled in the course.

Required Headers

Request Parameters

file/PDF
required
The student’s completed answer sheet as a PDF file. The server rejects any file that is not a valid PDF.
integer
required
The ID of the course this quiz belongs to.
integer
required
The ID of the quiz the student is submitting answers for.
integer
The ID of the class, if this course is divided into classes. Omit if not applicable.
numeric
required
The maximum allowed duration for this quiz, in minutes. The server uses this value together with start_at to verify the submission is on time.
datetime
required
The timestamp recording when the student began the quiz (e.g. 2026-06-30T09:00:00). Combined with duration, this defines the submission deadline.

Example Request

Response

200 OK

Error Responses

422 Validation Error Example

The server verifies that your submission arrives within the allowed time window. It adds duration minutes to the start_at timestamp to calculate the deadline — if that deadline has passed at the moment the request is received, the submission is rejected with a 403 Quiz duration expired error. Ensure the start_at value you send accurately reflects when the student opened the quiz.