Skip to main content
GET
Search CourseLessons
A CourseLesson is an individual learning unit within a Course. Lessons are the building blocks that customers complete to work through a course’s content. Each lesson belongs to a Course and optionally to a CourseSection that groups related lessons together. Lessons have two key behavioural settings: UnlockType — controls when a lesson becomes available to enrolled members: CompletionType — defines what action marks the lesson as done:

Authentication

This endpoint requires OAuth2 authentication. Include a valid bearer token in the Authorization header. The authenticated user must be a full unrestricted administrator or have the CourseLesson-List role.

Enums

Query Parameters

Pagination & Sorting

integer
default:"1"
The page number to retrieve.
integer
default:"25"
The number of records per page.
string
The property name to sort results by (e.g. Name, CreatedOn).
integer
Sort direction. 0 for ascending, 1 for descending.

Filters

integer
Filter by iD of the course this lesson belongs to.
string
Filter by title of the parent course.
integer
Filter by iD of the course section this lesson belongs to (optional; lessons without a section appear ungrouped).
integer
Filter by display order of the parent section.
string
Filter by title of the parent section.
integer
Filter by iD of the coworker attributed as instructor for this lesson (optional; overrides the course-level host for this lesson).
string
Filter by instructor full name.
string
Filter by instructor company name.
string
Filter by comma-separated list of teams the instructor belongs to.
string
Filter by lesson title displayed to members.
string
Filter by short summary shown in the lesson listing.
string
Filter by full HTML or rich-text body of the lesson displayed to members when they open it.
boolean
Filter by whether the lesson is active and visible to enrolled members.
integer
Filter by position of the lesson within its section (or the course if unsectioned); lower numbers appear first.
integer
Filter by when the lesson becomes available: Immediate (1), after the previous lesson is done — Sequential (2), or after a set number of days — Timed (3).
string
Filter by stored filename of the lesson thumbnail image (read-only; use NewImageUrl to set).
string
Filter by uRL of a new thumbnail image to upload (JPG/JPEG, PNG, or GIF, max 10 MB).
boolean
Filter by set to true to remove the existing thumbnail image.
integer
Filter by number of days after enrolment before the lesson unlocks; only used when UnlockType is Timed (3).
integer
Filter by how completion is tracked: None (1), Visited (2), completion Button (3), or Video watched (4). Video completion requires the lesson to embed a YouTube-hosted video..

Range Filters

integer
Filter by display order of the parent section greater than or equal to this value.
integer
Filter by display order of the parent section less than or equal to this value.
integer
Filter by position of the lesson within its section (or the course if unsectioned); lower numbers appear first greater than or equal to this value.
integer
Filter by position of the lesson within its section (or the course if unsectioned); lower numbers appear first less than or equal to this value.
integer
Filter by number of days after enrolment before the lesson unlocks; only used when UnlockType is Timed (3) greater than or equal to this value.
integer
Filter by number of days after enrolment before the lesson unlocks; only used when UnlockType is Timed (3) less than or equal to this value.
string
Filter records created on or after this date. Format: YYYY-MM-DDTHH:mm.
string
Filter records created on or before this date. Format: YYYY-MM-DDTHH:mm.
string
Filter records updated on or after this date. Format: YYYY-MM-DDTHH:mm.
string
Filter records updated on or before this date. Format: YYYY-MM-DDTHH:mm.

Code Examples

Simple listing

Filtering by Title

Range filters

Response

200

CourseLesson[]
The list of CourseLesson records matching the query. See the Get one CourseLesson endpoint for the full list of properties returned for each record.
Partial records — The listing endpoint returns a summary representation of each CourseLesson. The following fields are not populated in the Records[] response: LessonContents, UnlockType, CompletionType.To get all fields, fetch the full record using the Get one CourseLesson endpoint.Important for updates: When updating a record via PUT, always retrieve the full record with a GET request first, apply your changes to that complete data, and then send the updated record. Do not use data from a listing response as the base for a PUT request, as missing fields may be unintentionally cleared.
integer
Current page number.
integer
Number of records per page.
string
The field used for sorting.
integer
The sort direction (0 = ascending, 1 = descending).
integer
Index of the first item on the current page.
integer
Index of the last item on the current page.
integer
Total number of matching records across all pages.
integer
Total number of pages.
boolean
Whether there is a next page of results.
boolean
Whether there is a previous page of results.
Example Response