Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Kombo Unified LMS API API

Unified endpoints to access all the LMS concepts you might need.

Kombo Unified LMS API API is one of 8 APIs that Kombo publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Unified LMS API. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and a getting-started guide.

This API exposes 9 operations across 8 paths, and defines 47 schemas. It is described by OpenAPI 3.1.0, at version 1.0.0.

Requests are made against 2 base URLs: https://api.kombo.dev/v1, https://api.us.kombo.dev/v1.

9 operations 8 paths 47 schemas 5 GET4 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.0
API Version
1.0.0
Base URL
https://api.kombo.dev
Authentication
HTTP Bearer
Resource Areas
1

Authentication & Security 1

Kombo Unified LMS API API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (ApiKey). By default, every request must be authenticated.

  • ApiKey — Create an API key on the [Secrets](https://app.kombo.dev/secrets) page in the Kombo dashboard.

Paths & Operations 9

Across 8 paths, the API surfaces 9 operations — 5 GET, 4 POST. Each is listed below with its method, path, parameters, and response codes.

Unified LMS API 9

Unified endpoints to access all the LMS concepts you might need.

GET
/lms/users
Get users
GetLmsUsers 9 params → 200default
GET
/lms/course-progressions
Get course progressions
GetLmsCourseProgressions 10 params → 200default
POST
/lms/course-progressions
Enroll user in course
PostLmsCourseProgressions 1 param body → 200default
POST
/lms/course-progressions/{course_progression_id}/complete
Complete course
PostLmsCourseProgressionsCourseProgressionIdComplete 2 params body → 200default
GET
/lms/courses
Get courses
GetLmsCourses 8 params → 200default
POST
/lms/courses/bulk
Upsert courses
PostLmsCoursesBulk 1 param body → 200default
GET
/lms/courses/bulk/{task_id}
Get status of “Upsert courses” task
GetLmsCoursesBulkTaskId 2 params → 200default
POST
/lms/courses/{course_id}/deactivate
Deactivate course
PostLmsCoursesCourseIdDeactivate 2 params body → 200default
GET
/lms/skills
Get skills
GetLmsSkills 8 params → 200default

Schemas 47

The contract defines 47 schemas that model the data the API accepts and returns. The most detailed are PostLmsCourseProgressionsCourseProgressionIdCompletePositiveResponse (3 properties), PostLmsCoursesBulkPositiveResponse (3 properties), PostLmsCoursesCourseIdDeactivatePositiveResponse (3 properties), PostLmsCourseProgressionsPositiveResponse (3 properties). Each schema is shown below with its type and property counts.

GetLmsCoursesParameterIgnoreUnsupportedFilters
string
When set to true, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
GetLmsCourseProgressionsParameterCursor
string
An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.
GetLmsCoursesBulkTaskIdPositiveResponse
object
2 properties 2 required
GetLmsCoursesParameterIncludeDeleted
string
By default, deleted entries are not returned. Use the includedeleted query param to include deleted entries too.
GetLmsCoursesBulkTaskIdParameterTaskId
string
GetLmsCoursesParameterIds
string
Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.
GetLmsSkillsParameterIncludeDeleted
string
By default, deleted entries are not returned. Use the includedeleted query param to include deleted entries too.
PostLmsCoursesCourseIdDeactivatePositiveResponse
object
3 properties 3 required
GetLmsSkillsParameterUpdatedAfter
string
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 bee…
GetLmsCoursesPositiveResponse
object
2 properties 2 required
PostLmsCourseProgressionsCourseProgressionIdCompletePositiveResponse
object
3 properties 3 required
GetLmsCourseProgressionsParameterIncludeDeleted
string
By default, deleted entries are not returned. Use the includedeleted query param to include deleted entries too.
PostLmsCoursesCourseIdDeactivateRequestBody
object
GetLmsCourseProgressionsParameterUpdatedAfter
string
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 bee…
GetLmsCoursesParameterCursor
string
An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.
PostLmsCoursesBulkRequestBody
object
1 property 1 required
GetLmsCourseProgressionsPositiveResponse
object
2 properties 2 required
GetLmsCourseProgressionsParameterCourseIds
string
Filter by a comma-separated list of course IDs. We will only return progressions for revisions that belong to any of the courses.
GetLmsUsersParameterPageSize
integer
The number of results to return per page. Maximum is 250.
GetLmsCourseProgressionsParameterRemoteIds
string
Filter by a comma-separated list of remote IDs.
GetLmsCoursesParameterRemoteIds
string
Filter by a comma-separated list of remote IDs.
PostLmsCourseProgressionsPositiveResponse
object
3 properties 3 required
GetLmsCourseProgressionsParameterPageSize
integer
The number of results to return per page. Maximum is 250.
GetLmsUsersPositiveResponse
object
2 properties 2 required
PostLmsCoursesBulkPositiveResponse
object
3 properties 3 required
PostLmsCoursesCourseIdDeactivateParameterCourseId
string
The ID of the course in Kombo or its ID in the remote system by prefixing it with remote: (e.g., remote:12312)
GetLmsUsersParameterIgnoreUnsupportedFilters
string
When set to true, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
GetLmsSkillsParameterIgnoreUnsupportedFilters
string
When set to true, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
GetLmsCourseProgressionsParameterUserIds
string
Filter by a comma-separated list of user IDs. We will only return progressions that are related to any of the users.
GetLmsSkillsPositiveResponse
object
2 properties 2 required
GetLmsUsersParameterUpdatedAfter
string
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 bee…
GetLmsSkillsParameterRemoteIds
string
Filter by a comma-separated list of remote IDs.
PostLmsCourseProgressionsCourseProgressionIdCompleteParameterCourseProgressionId
string
The ID of the course progression in Kombo or its ID in the remote system by prefixing it with remote: (e.g., remote:12312)
PostLmsCourseProgressionsCourseProgressionIdCompleteRequestBody
object
2 properties
GetLmsCoursesParameterUpdatedAfter
string
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 bee…
PostLmsCourseProgressionsRequestBody
object
2 properties 2 required
GetLmsUsersParameterCursor
string
An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.
GetLmsUsersParameterWorkEmails
string
Filter by a comma-separated list of work emails. We will only return users who have any of the work emails. The format of the emails is case-insensitive.
GetLmsUsersParameterIncludeDeleted
string
By default, deleted entries are not returned. Use the includedeleted query param to include deleted entries too.
GetLmsSkillsParameterPageSize
integer
The number of results to return per page. Maximum is 250.
GetLmsUsersParameterRemoteIds
string
Filter by a comma-separated list of remote IDs.
GetLmsSkillsParameterCursor
string
An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.
GetLmsCoursesParameterPageSize
integer
The number of results to return per page. Maximum is 250.
GetLmsSkillsParameterIds
string
Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.
GetLmsCourseProgressionsParameterIgnoreUnsupportedFilters
string
When set to true, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
GetLmsUsersParameterIds
string
Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.
GetLmsCourseProgressionsParameterIds
string
Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

kombo-unified-lms-api-api-openapi.yml Raw ↑

Other APIs Kombo publishes across the network.

Kombo AI Apply API
Kombo Custom Endpoints API
Kombo General API
Kombo Kombo Connect API
Kombo Unified ATS API API
Kombo Unified ATS (Assessment & Background Check) API API
Kombo Unified HRIS API API