How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Kombo Unified LMS API

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

Kombo Unified LMS API is one of 9 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.2.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.2.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 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), PostLmsCoursesCourseIdDeactivatePositiveResponse (3 properties), PostLmsCourseProgressionsPositiveResponse (3 properties), PostLmsCoursesBulkPositiveResponse (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.
GetLmsUsersParameterRemoteIds
string
Filter by a comma-separated list of remote IDs.
GetLmsCoursesParameterIncludeDeleted
string
By default, deleted entries are not returned. Use the includedeleted query param to include deleted entries too.
GetLmsCoursesPositiveResponse
object
2 properties 2 required
PostLmsCourseProgressionsPositiveResponse
object
3 properties 3 required
GetLmsCourseProgressionsPositiveResponse
object
2 properties 2 required
GetLmsSkillsParameterRemoteIds
string
Filter by a comma-separated list of remote IDs.
GetLmsCoursesParameterPageSize
integer
The number of results to return per page. Maximum is 250.
GetLmsCourseProgressionsParameterRemoteIds
string
Filter by a comma-separated list of remote IDs.
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…
GetLmsCourseProgressionsParameterIncludeDeleted
string
By default, deleted entries are not returned. Use the includedeleted query param to include deleted entries too.
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.
GetLmsUsersPositiveResponse
object
2 properties 2 required
GetLmsUsersParameterIgnoreUnsupportedFilters
string
When set to true, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
PostLmsCoursesCourseIdDeactivateRequestBody
object
GetLmsSkillsParameterCursor
string
An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.
GetLmsSkillsParameterIgnoreUnsupportedFilters
string
When set to true, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
GetLmsCoursesBulkTaskIdPositiveResponse
object
2 properties 2 required
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…
GetLmsCoursesParameterRemoteIds
string
Filter by a comma-separated list of remote IDs.
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.
GetLmsCoursesParameterCursor
string
An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.
PostLmsCoursesBulkPositiveResponse
object
3 properties 3 required
GetLmsCoursesBulkTaskIdParameterTaskId
string
GetLmsSkillsParameterIncludeDeleted
string
By default, deleted entries are not returned. Use the includedeleted query param to include deleted entries too.
GetLmsCourseProgressionsParameterIds
string
Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.
GetLmsSkillsParameterPageSize
integer
The number of results to return per page. Maximum is 250.
GetLmsCourseProgressionsParameterCursor
string
An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.
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…
GetLmsUsersParameterPageSize
integer
The number of results to return per page. Maximum is 250.
GetLmsUsersParameterCursor
string
An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.
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)
GetLmsSkillsParameterIds
string
Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.
PostLmsCourseProgressionsCourseProgressionIdCompleteRequestBody
object
2 properties
PostLmsCourseProgressionsRequestBody
object
2 properties 2 required
GetLmsCourseProgressionsParameterUserIds
string
Filter by a comma-separated list of user IDs. We will only return progressions that are related to any of the users.
GetLmsUsersParameterIds
string
Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.
PostLmsCourseProgressionsCourseProgressionIdCompletePositiveResponse
object
3 properties 3 required
PostLmsCoursesBulkRequestBody
object
1 property 1 required
GetLmsUsersParameterIncludeDeleted
string
By default, deleted entries are not returned. Use the includedeleted query param to include deleted entries too.
GetLmsSkillsPositiveResponse
object
2 properties 2 required
GetLmsCoursesParameterIds
string
Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.
PostLmsCoursesCourseIdDeactivatePositiveResponse
object
3 properties 3 required
GetLmsCourseProgressionsParameterPageSize
integer
The number of results to return per page. Maximum is 250.
GetLmsCourseProgressionsParameterIgnoreUnsupportedFilters
string
When set to true, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
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…
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)

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 Connect API
Kombo Unified ATS API
Kombo Unified ATS (Assessment & Background Check) API
Kombo Unified HRIS API
Kombo API
Where this information came from

This is an independent, third-party profile of Kombo Unified LMS API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.