Skip to main content

Request headers

string
required
The service user’s API token in the Bearer YOUR_TOKEN format. The school owner issues the token in the admin panel: Manage → School → For developers → API keys — see the “Authentication” section for details.
integer
required
The numeric ID of the seller — the account the school belongs to. Copy it on the API keys page, in the Integration data → Identifiers card. The token’s permissions are checked against this ID.
integer
required
The numeric ID of the school, found in the same place as Seller-Id. The value must match the seller’s school — otherwise a 400 error with cause: "ForbiddenSchoolMismatch" is returned.
Course visibility restrictions do not apply to the API. A course has access modes for the school team (“All” / “Assigned”) that hide a restricted course from managers in the interface. The API returns data for all school courses regardless of these modes: access is determined only by the service user’s token and its permissions.
All filter parameters are optional. Array parameters are passed by repeating the parameter in the query string: courseIds=1&courseIds=2.

Request parameters

Pagination

integer
Number of records to skip. Defaults to 0.
integer
Page number (an alternative to skip). Starts at 1.
integer
Number of records per page. From 1 to 1000. Defaults to 100.

Filtering

integer[]
Filter by course IDs.
string[]
Filter by course string aliases.
enum[]
Filter by course types. Possible values: Bundle, Webinar, TextCourse, Assessment, VideoCourse, PersonalLesson.
string[]
Filter by course tags. Up to 50 characters per tag.
Search by course name. Maximum 50 characters.
integer[]
Filter by subject category IDs.
integer[]
Filter by content category IDs.
boolean
Filter by archive status: true returns only archived courses, false only non-archived ones. If omitted, both are returned.
The participation, manage and administrate parameters are part of the common course filter schema, but in this method they are not applied: the response does not depend on them. The method always returns all of the school’s courses (subject to the other filters).
object
Nested filter by accesses to the course product. The full set of fields matches the filter of the “Product access list” method (for example, active, userIds, billingStatuses, expireAtDateRange).
object
Nested product filter.

Response fields

object
A paginated list of courses (compact projection). The full course object is returned by Get a course; its structure is in the course reference.

Permission requirements

Requires token authentication and one of the permissions: “Course Curator” (CourseCurator) or “School User Management” (SchoolManageUsers).

Updated: 2026-09-28 05:04 UTC