Skip to main content

Get Lesson Details

Retrieves detailed information about a specific lesson including content, quizzes, and resources. Requires enrollment in the parent course.

Path Parameters

string
required
Lesson ID

Response

object
Detailed lesson object

Example Request

Example Response


Lesson Access Control

Access to lesson content is controlled by enrollment status:
  • Regular Users: Must be enrolled in the course to access any lesson
  • Admin/Instructor: Can access all lessons without enrollment
The API automatically checks enrollment status and returns a 403 Forbidden error if the user is not enrolled.

Lesson Content Types

Lessons support three main content types:

Video Lessons

Video lessons have a video_url field pointing to the video file. The URL may be transformed to use Azure Front Door CDN if enabled.

Text Lessons

Text lessons contain HTML or markdown content in the text_content field.

Quiz Lessons

Quiz lessons contain questions from the normalized quiz_questions table. Questions support multiple types:
  • multiple-choice: Single correct answer from options
  • true-false: Boolean answer
  • fill-blank: Text input with correct answers
  • short-answer: Keyword-based evaluation
  • essay: Free-form text (manual grading)
  • matching: Match items from two lists

Quiz Question Structure

Quiz questions are stored in the quiz_questions table with the following structure:

Resources

Lessons can include downloadable resources linked through the lesson_resources junction table:

Error Codes