Subtopic
Subtopic management endpoints. Subtopics belong to a topic and contain exercises and videos. Hierarchy: Subject β Topic β Subtopic β Exercise/Video.
List subtopics
Returns a paginated list of subtopics. Supports filtering by name (partial match) and by parent topic. Public endpoint: no authentication required.
Create subtopic
Creates a new subtopic and associates it with an existing topic. Requires a unique name and the parent topic ID. Admin only.
View subtopic
Returns details of a single subtopic by its ID. Public endpoint.
Delete subtopic
Performs a soft-delete of the subtopic. The record is not removed from the database but marked as deleted. Admin only.
Update subtopic
Updates fields of an existing subtopic. All fields are optional: only those provided are modified. The subtopic can be moved under a different topic by changing topic_id. Admin only.
List exercises in a subtopic
Returns a paginated list of exercises belonging to a subtopic. Unauthenticated users see only public active exercises; authenticated users also see 'registered' visibility. Admins see all exercises (including drafts and archived) and can filter by status and visibility.
Create exercise in a subtopic
Creates a new exercise within the specified subtopic. The exercise can include assignment text, solution, multiple-choice options, and a solution video. Admin only.
View exercise in a subtopic
Returns full details of a specific exercise within a subtopic. If the user does not have access to the exercise's visibility level, the content is returned in 'locked' mode (without text and solution).
Delete exercise from a subtopic
Performs a soft-delete of the exercise. The record is not removed from the database but marked as deleted. Admin only.
Update exercise in a subtopic
Updates fields of an existing exercise. Only provided fields are modified. If solution_options are sent, all previous options are replaced entirely. Admin only.
Get exercise solution video download URL
Generates a temporary (presigned) URL to download the video explaining the exercise solution. Access depends on the exercise visibility: unauthenticated users can only access public exercises, registered users also 'registered' visibility.
Get exercise solution video thumbnail download URL
Generates a temporary (presigned) URL to download the thumbnail image of the exercise solution video. Access depends on the exercise visibility.
Get subtopic video
Returns the video associated with a subtopic along with temporary (presigned) download URLs for the video file and its thumbnail. Public endpoint: no authentication required.