Skip to main content
GET
/
lms
/
courses
Get courses
curl --request GET \
  --url https://api.kombo.dev/v1/lms/courses \
  --header 'Authorization: Bearer <token>' \
  --header 'X-Integration-Id: <x-integration-id>'
{
"status": "success",
"data": {
"next": "eyJwYWdlIjoxMiwibm90ZSI6InRoaXMgaXMganVzdCBhbiBleGFtcGxlIGFuZCBub3QgcmVwcmVzZW50YXRpdmUgZm9yIGEgcmVhbCBjdXJzb3IhIn0=",
"results": [
{
"id": "26vafvWSRmbhNcxJYqjCzuJg",
"remote_id": "32",
"provider_id": "7xPdr68N8kG9EzLwjsN9xyz",
"remote_created_at": "2022-08-07T14:01:29.196Z",
"remote_deleted_at": null,
"changed_at": "2022-08-07T14:01:29.196Z",
"remote_data": null,
"custom_fields": null,
"integration_fields": [],
"provider": {
"id": "7xPdr68N8kG9EzLwjsN9xyz",
"remote_id": "provider-12345",
"name": "Kombo Academy"
},
"revisions": [
{
"id": "3KMdr68N8kG9EzLwjsN9aoz",
"remote_id": "revision-12345",
"course_id": "26vafvWSRmbhNcxJYqjCzuJg",
"title": "Building LMS integrations with Kombo",
"description": "Learn how to build and integrate Learning Management System (LMS) integrations with Kombo. This course covers the unified LMS API, course management, user enrollment, progress tracking, and best practices for building robust LMS connectors.",
"status": "ACTIVE",
"remote_created_at": "2022-08-07T14:01:29.196Z",
"remote_deleted_at": null,
"changed_at": "2022-08-07T14:01:29.196Z",
"remote_data": null,
"custom_fields": null,
"integration_fields": [],
"skill_assignments": [
{
"skill": {
"id": "4EeSSSd9Fr8iiW9mPKmjEVWK",
"remote_id": "skill-123",
"name": "LMS Integration"
}
}
]
}
]
}
]
}
}
This feature is currently available for the following integrations:You’d like to see this feature for another integration? Please reach out! We’re always happy to discuss extending our coverage.
Retrieve all courses available in the LMS. Courses are structured learning programs that users can enroll in and complete. Top level filters use AND, while individual filters use OR if they accept multiple arguments. That means filters will be resolved like this: (id IN ids) AND (remote_id IN remote_ids)

Authorizations

Authorization
string
header
required

Create an API key on the Secrets page in the Kombo dashboard.

Headers

X-Integration-Id
string
required

ID of the integration you want to interact with.

Query Parameters

cursor
string

An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.

page_size
integer<int64>
default:100

The number of results to return per page. Maximum is 250.

Required range: 1 <= x <= 250
updated_after
string<date-time>

Filter the entries based on the modification date in format YYYY-MM-DDTHH:mm:ss.sssZ. Returns records where either the record itself OR its nested data has been updated since this timestamp, even if the record's own changed_at field remains unchanged.

If you want to track entry deletion, also set the include_deleted=true query parameter, because otherwise, deleted entries will be hidden.

For more details, see Understanding changed_at vs updated_after Behavior.

include_deleted
enum<string>
default:false

By default, deleted entries are not returned. Use the include_deleted query param to include deleted entries too.

Available options:
true,
false
ids
string

Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.

remote_ids
string

Filter by a comma-separated list of remote IDs.

Response

GET /lms/courses Positive response

status
string
required
Allowed value: "success"
data
object
required
Example:
{
"next": "eyJwYWdlIjoxMiwibm90ZSI6InRoaXMgaXMganVzdCBhbiBleGFtcGxlIGFuZCBub3QgcmVwcmVzZW50YXRpdmUgZm9yIGEgcmVhbCBjdXJzb3IhIn0=",
"results": [
{
"id": "26vafvWSRmbhNcxJYqjCzuJg",
"remote_id": "32",
"provider_id": "7xPdr68N8kG9EzLwjsN9xyz",
"remote_created_at": "2022-08-07T14:01:29.196Z",
"remote_deleted_at": null,
"changed_at": "2022-08-07T14:01:29.196Z",
"remote_data": null,
"custom_fields": null,
"integration_fields": [],
"provider": {
"id": "7xPdr68N8kG9EzLwjsN9xyz",
"remote_id": "provider-12345",
"name": "Kombo Academy"
},
"revisions": [
{
"id": "3KMdr68N8kG9EzLwjsN9aoz",
"remote_id": "revision-12345",
"course_id": "26vafvWSRmbhNcxJYqjCzuJg",
"title": "Building LMS integrations with Kombo",
"description": "Learn how to build and integrate Learning Management System (LMS) integrations with Kombo. This course covers the unified LMS API, course management, user enrollment, progress tracking, and best practices for building robust LMS connectors.",
"status": "ACTIVE",
"remote_created_at": "2022-08-07T14:01:29.196Z",
"remote_deleted_at": null,
"changed_at": "2022-08-07T14:01:29.196Z",
"remote_data": null,
"custom_fields": null,
"integration_fields": [],
"skill_assignments": [
{
"skill": {
"id": "4EeSSSd9Fr8iiW9mPKmjEVWK",
"remote_id": "skill-123",
"name": "LMS Integration"
}
}
]
}
]
}
]
}