List Courses
Retrieves a list of published courses or all courses (admin/instructor only).Query Parameters
boolean
Returns only the 4 most recently published courses when set to
truestring
Comma-separated list of course IDs to filter by (e.g., “1,2,3”)
boolean
Admin/instructor only: Returns all courses including unpublished drafts when set to
trueResponse
array
Array of course objects
Example Request
Example Response
Create Course
Creates a new course. Requires admin authentication.Request Body
string
required
Course title
string
Course description
string
Course thumbnail image URL
number
Course price
string
Enrollment mode: “free” or “paid”
Response
object
The created course object
Example Request
Get Course Details
Retrieves detailed information about a specific course including lessons, quizzes, instructors, and prerequisites.Path Parameters
string
required
Course ID or slug (e.g., “123” or “course-title-123”)
Response
object
Detailed course object with lessons, creator, instructors, prerequisites
Example Request
Delete Course
Deletes a course and all related data (lessons, quizzes, enrollments, progress). Requires admin authentication. Payment and certificate records are preserved for historical purposes.Path Parameters
string
required
Course ID or slug
Response
string
Success confirmation message
Example Request
Save/Update Course Draft
Saves or updates a course draft including all lessons, quizzes, resources, prerequisites, and instructors.Request Body
string
Course ID for updates, or “new” for creating a new course
boolean
Whether the course should be published (visible to students)
object
required
Complete course data including basicInfo, lessons, settings
Response
object
Updated course object
number
Course ID (useful for newly created courses)
Get Quiz Attempts
Retrieves the latest quiz attempt for a specific lesson.Path Parameters
string
required
Course ID
Query Parameters
string
required
Lesson ID
Response
object
Latest quiz attempt object with question_order and answer_orders for shuffled quizzes
number
Current attempt number (0 if no attempts exist)
Get Quiz Results
Retrieves all quiz results for the authenticated user in a course.Path Parameters
string
required
Course ID
Response
array
Array of quiz result objects
object
Results grouped by lesson ID
Submit Quiz Results
Submits quiz answers and calculates results. Handles quiz retakes and shuffle logic.Path Parameters
string
required
Course ID
Request Body
number
required
Lesson ID
array
required
Array of answer objects with questionId and userAnswer
Response
string
Success message
array
Saved quiz result records
object