Kombo Unified LMS API API
Unified endpoints to access all the LMS concepts you might need.
Unified endpoints to access all the LMS concepts you might need.
openapi: 3.1.0
info:
title: Kombo AI Apply Unified LMS API API
version: 1.0.0
description: Endpoints for AI-powered job application features.
servers:
- url: https://api.kombo.dev/v1
description: Kombo EU API
- url: https://api.us.kombo.dev/v1
description: Kombo US API
security:
- ApiKey: []
tags:
- name: Unified LMS API
description: Unified endpoints to access all the LMS concepts you might need.
paths:
/lms/users:
get:
operationId: GetLmsUsers
summary: Get users
description: 'Get users
Retrieve all users from the LMS system. Users are learners who can enroll in and complete courses.
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)`'
tags:
- Unified LMS API
parameters:
- in: header
name: X-Integration-Id
schema:
type: string
description: ID of the integration you want to interact with.
example: bombohr:HWUTwvyx2wLoSUHphiWVrp28
required: true
- name: cursor
in: query
required: false
description: An optional cursor string used for pagination. This can be retrieved from the `next` property of the previous page response.
schema:
$ref: '#/components/schemas/GetLmsUsersParameterCursor'
- name: page_size
in: query
required: false
description: The number of results to return per page. Maximum is 250.
schema:
$ref: '#/components/schemas/GetLmsUsersParameterPageSize'
- name: updated_after
in: query
required: false
description: '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](https://docs.kombo.dev/ats/getting-started/fetching-data#understanding-changed_at-vs-updated_after-behavior).
For this endpoint, only changes to the returned record itself are considered.'
schema:
$ref: '#/components/schemas/GetLmsUsersParameterUpdatedAfter'
- name: include_deleted
in: query
required: false
description: By default, deleted entries are not returned. Use the `include_deleted` query param to include deleted entries too.
schema:
$ref: '#/components/schemas/GetLmsUsersParameterIncludeDeleted'
- name: ignore_unsupported_filters
in: query
required: false
description: When set to `true`, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
schema:
$ref: '#/components/schemas/GetLmsUsersParameterIgnoreUnsupportedFilters'
- name: ids
in: query
required: false
description: Filter by a comma-separated list of IDs such as `222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3`.
schema:
$ref: '#/components/schemas/GetLmsUsersParameterIds'
- name: remote_ids
in: query
required: false
description: Filter by a comma-separated list of remote IDs.
schema:
$ref: '#/components/schemas/GetLmsUsersParameterRemoteIds'
- name: work_emails
in: query
required: false
description: 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.
schema:
$ref: '#/components/schemas/GetLmsUsersParameterWorkEmails'
responses:
'200':
description: GET /lms/users Positive response
content:
application/json:
schema:
$ref: '#/components/schemas/GetLmsUsersPositiveResponse'
examples:
example1:
value:
status: success
data:
next: eyJwYWdlIjoxMiwibm90ZSI6InRoaXMgaXMganVzdCBhbiBleGFtcGxlIGFuZCBub3QgcmVwcmVzZW50YXRpdmUgZm9yIGEgcmVhbCBjdXJzb3IhIn0=
results:
- id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: '32'
first_name: Sarah
last_name: Johnson
work_email: sarah.johnson@example.com
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: []
default:
$ref: '#/components/responses/ErrorResponseGeneral'
/lms/course-progressions:
get:
operationId: GetLmsCourseProgressions
summary: Get course progressions
description: 'Get course progressions
Retrieve all course progressions from the LMS system. Course progressions track users enrollment and completion status in courses.
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)`'
tags:
- Unified LMS API
parameters:
- in: header
name: X-Integration-Id
schema:
type: string
description: ID of the integration you want to interact with.
example: bombohr:HWUTwvyx2wLoSUHphiWVrp28
required: true
- name: cursor
in: query
required: false
description: An optional cursor string used for pagination. This can be retrieved from the `next` property of the previous page response.
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsParameterCursor'
- name: page_size
in: query
required: false
description: The number of results to return per page. Maximum is 250.
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsParameterPageSize'
- name: updated_after
in: query
required: false
description: '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](https://docs.kombo.dev/ats/getting-started/fetching-data#understanding-changed_at-vs-updated_after-behavior).
For this endpoint, `updated_after` matches when the returned record changed, or when related data changed as described below.
| Path | Added/Removed | Linked Record |
| --- | --- | --- |
| `user` | ✗ No | ✗ No |
| `course_revision` | ✗ No | ✗ No |
_**Added/Removed**: Whether adding or removing entries from this list triggers an update (n/a for single records). **Linked Record**: Whether changes to the linked record itself trigger an update._'
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsParameterUpdatedAfter'
- name: include_deleted
in: query
required: false
description: By default, deleted entries are not returned. Use the `include_deleted` query param to include deleted entries too.
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsParameterIncludeDeleted'
- name: ignore_unsupported_filters
in: query
required: false
description: When set to `true`, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsParameterIgnoreUnsupportedFilters'
- name: ids
in: query
required: false
description: Filter by a comma-separated list of IDs such as `222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3`.
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsParameterIds'
- name: remote_ids
in: query
required: false
description: Filter by a comma-separated list of remote IDs.
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsParameterRemoteIds'
- name: user_ids
in: query
required: false
description: Filter by a comma-separated list of user IDs. We will only return progressions that are related to _any_ of the users.
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsParameterUserIds'
- name: course_ids
in: query
required: false
description: Filter by a comma-separated list of course IDs. We will only return progressions for revisions that belong to _any_ of the courses.
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsParameterCourseIds'
responses:
'200':
description: GET /lms/course-progressions Positive response
content:
application/json:
schema:
$ref: '#/components/schemas/GetLmsCourseProgressionsPositiveResponse'
examples:
example1:
value:
status: success
data:
next: eyJwYWdlIjoxMiwibm90ZSI6InRoaXMgaXMganVzdCBhbiBleGFtcGxlIGFuZCBub3QgcmVwcmVzZW50YXRpdmUgZm9yIGEgcmVhbCBjdXJzb3IhIn0=
results:
- id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: progress-12345
user_id: 7xPdr68N8kG9EzLwjsN9xyz
course_revision_id: 3KMdr68N8kG9EzLwjsN9aoz
status: COMPLETED
enrolled_at: '2022-08-07T14:01:29.196Z'
completed_at: '2022-08-07T14:01:29.196Z'
changed_at: '2022-08-07T14:01:29.196Z'
remote_deleted_at: null
remote_data: null
user:
id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: '32'
first_name: Sarah
last_name: Johnson
work_email: sarah.johnson@example.com
course_revision:
id: 3KMdr68N8kG9EzLwjsN9aoz
remote_id: revision-12345
title: Building LMS integrations with Kombo
course:
id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: '32'
default:
$ref: '#/components/responses/ErrorResponseGeneral'
post:
operationId: PostLmsCourseProgressions
summary: Enroll user in course
description: "Enroll a user in a course revision.\n\n<Note>\n This endpoint requires the permission **Create and manage course progressions** to be enabled in [your scope config](/scopes).\n</Note>\n\n### Example Request Body\n\n```json\n{\n \"user_id\": \"7xPdr68N8kG9EzLwjsN9xyz\",\n \"course_revision_id\": \"3KMdr68N8kG9EzLwjsN9aoz\"\n}\n```"
tags:
- Unified LMS API
parameters:
- in: header
name: X-Integration-Id
schema:
type: string
description: ID of the integration you want to interact with.
example: bombohr:HWUTwvyx2wLoSUHphiWVrp28
required: true
requestBody:
description: POST /lms/course-progressions Request body
content:
application/json:
schema:
$ref: '#/components/schemas/PostLmsCourseProgressionsRequestBody'
examples:
example1:
value:
user_id: 7xPdr68N8kG9EzLwjsN9xyz
course_revision_id: 3KMdr68N8kG9EzLwjsN9aoz
responses:
'200':
description: POST /lms/course-progressions Positive response
content:
application/json:
schema:
$ref: '#/components/schemas/PostLmsCourseProgressionsPositiveResponse'
examples:
example1:
value:
status: success
data:
id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: progress-12345
user_id: 7xPdr68N8kG9EzLwjsN9xyz
course_revision_id: 3KMdr68N8kG9EzLwjsN9aoz
status: COMPLETED
enrolled_at: '2022-08-07T14:01:29.196Z'
completed_at: '2022-08-07T14:01:29.196Z'
changed_at: '2022-08-07T14:01:29.196Z'
remote_deleted_at: null
remote_data: null
user:
id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: '32'
first_name: Sarah
last_name: Johnson
work_email: sarah.johnson@example.com
course_revision:
id: 3KMdr68N8kG9EzLwjsN9aoz
remote_id: revision-12345
title: Building LMS integrations with Kombo
course:
id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: '32'
warnings:
- message: This is an example warning!
default:
$ref: '#/components/responses/ErrorResponseGeneral'
/lms/course-progressions/{course_progression_id}/complete:
post:
operationId: PostLmsCourseProgressionsCourseProgressionIdComplete
summary: Complete course
description: "Mark a course revision as completed for a user.\n\n<Note>\n This endpoint requires the permission **Create and manage course progressions** to be enabled in [your scope config](/scopes).\n</Note>\n\n### Example Request Body\n\n```json\n{\n \"completed_at\": \"2024-04-15\",\n \"score\": 93\n}\n```"
tags:
- Unified LMS API
parameters:
- in: header
name: X-Integration-Id
schema:
type: string
description: ID of the integration you want to interact with.
example: bombohr:HWUTwvyx2wLoSUHphiWVrp28
required: true
- name: course_progression_id
in: path
required: true
description: The ID of the course progression in Kombo or its ID in the remote system by prefixing it with `remote:` (e.g., `remote:12312`)
schema:
$ref: '#/components/schemas/PostLmsCourseProgressionsCourseProgressionIdCompleteParameterCourseProgressionId'
examples:
example1:
value: 26vafvWSRmbhNcxJYqjCzuJg
requestBody:
description: POST /lms/course-progressions/:course_progression_id/complete Request body
content:
application/json:
schema:
$ref: '#/components/schemas/PostLmsCourseProgressionsCourseProgressionIdCompleteRequestBody'
examples:
example1:
value:
completed_at: '2024-04-15'
score: 93
responses:
'200':
description: POST /lms/course-progressions/:course_progression_id/complete Positive response
content:
application/json:
schema:
$ref: '#/components/schemas/PostLmsCourseProgressionsCourseProgressionIdCompletePositiveResponse'
examples:
example1:
value:
status: success
data:
id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: progress-12345
user_id: 7xPdr68N8kG9EzLwjsN9xyz
course_revision_id: 3KMdr68N8kG9EzLwjsN9aoz
status: COMPLETED
enrolled_at: '2022-08-07T14:01:29.196Z'
completed_at: '2022-08-07T14:01:29.196Z'
changed_at: '2022-08-07T14:01:29.196Z'
remote_deleted_at: null
remote_data: null
user:
id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: '32'
first_name: Sarah
last_name: Johnson
work_email: sarah.johnson@example.com
course_revision:
id: 3KMdr68N8kG9EzLwjsN9aoz
remote_id: revision-12345
title: Building LMS integrations with Kombo
course:
id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: '32'
warnings:
- message: This is an example warning!
default:
$ref: '#/components/responses/ErrorResponseGeneral'
/lms/courses:
get:
operationId: GetLmsCourses
summary: Get courses
description: 'Get courses
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)`'
tags:
- Unified LMS API
parameters:
- in: header
name: X-Integration-Id
schema:
type: string
description: ID of the integration you want to interact with.
example: bombohr:HWUTwvyx2wLoSUHphiWVrp28
required: true
- name: cursor
in: query
required: false
description: An optional cursor string used for pagination. This can be retrieved from the `next` property of the previous page response.
schema:
$ref: '#/components/schemas/GetLmsCoursesParameterCursor'
- name: page_size
in: query
required: false
description: The number of results to return per page. Maximum is 250.
schema:
$ref: '#/components/schemas/GetLmsCoursesParameterPageSize'
- name: updated_after
in: query
required: false
description: '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](https://docs.kombo.dev/ats/getting-started/fetching-data#understanding-changed_at-vs-updated_after-behavior).
For this endpoint, `updated_after` matches when the returned record changed, or when related data changed as described below.
| Path | Added/Removed | Linked Record |
| --- | --- | --- |
| `provider` | ✗ No | ✗ No |
| `revisions` | ✓ Yes | ✓ Yes |
| `revisions` → `skill_assignments` | ✗ No | ✗ No |
_**Added/Removed**: Whether adding or removing entries from this list triggers an update (n/a for single records). **Linked Record**: Whether changes to the linked record itself trigger an update._'
schema:
$ref: '#/components/schemas/GetLmsCoursesParameterUpdatedAfter'
- name: include_deleted
in: query
required: false
description: By default, deleted entries are not returned. Use the `include_deleted` query param to include deleted entries too.
schema:
$ref: '#/components/schemas/GetLmsCoursesParameterIncludeDeleted'
- name: ignore_unsupported_filters
in: query
required: false
description: When set to `true`, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.
schema:
$ref: '#/components/schemas/GetLmsCoursesParameterIgnoreUnsupportedFilters'
- name: ids
in: query
required: false
description: Filter by a comma-separated list of IDs such as `222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3`.
schema:
$ref: '#/components/schemas/GetLmsCoursesParameterIds'
- name: remote_ids
in: query
required: false
description: Filter by a comma-separated list of remote IDs.
schema:
$ref: '#/components/schemas/GetLmsCoursesParameterRemoteIds'
responses:
'200':
description: GET /lms/courses Positive response
content:
application/json:
schema:
$ref: '#/components/schemas/GetLmsCoursesPositiveResponse'
examples:
example1:
value:
status: success
data:
next: eyJwYWdlIjoxMiwibm90ZSI6InRoaXMgaXMganVzdCBhbiBleGFtcGxlIGFuZCBub3QgcmVwcmVzZW50YXRpdmUgZm9yIGEgcmVhbCBjdXJzb3IhIn0=
results:
- id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: '32'
provider_id: 7xPdr68N8kG9EzLwjsN9xyz
origin_id: course-123
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.
remote_url: https://learning.acme.com/courses/building-integrations/v1
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
default:
$ref: '#/components/responses/ErrorResponseGeneral'
/lms/courses/bulk:
post:
operationId: PostLmsCoursesBulk
summary: Upsert courses
description: "Create or update multiple courses in the LMS.\n\n<Info>\n **Note:** This endpoint is asynchronous – it returns a `task_id` immediately and processes the request in the background. Use the corresponding `GET` endpoint to poll for the task status until it reaches `COMPLETED` or `FAILED`. Learn more in our [async endpoints guide](/lms/guides/async-endpoints).\n</Info>\n\n<Note>\n This endpoint requires the permission **Upsert courses** to be enabled in [your scope config](/scopes).\n</Note>\n\n### Example Request Body\n\n```json\n{\n \"items\": [\n {\n \"origin_id\": \"course-1\",\n \"course\": {\n \"type\": \"EXTERNAL\",\n \"title\": \"Building LMS integrations with Kombo\",\n \"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.\",\n \"course_url\": \"https://docs.kombo.dev/lms/introduction\",\n \"thumbnail_url\": \"https://kombo.dev/images/courses/lms-integrations-thumbnail.png\",\n \"duration\": 45,\n \"languages\": [\n \"en\",\n \"de-CH\"\n ]\n }\n },\n {\n \"origin_id\": \"course-2\",\n \"course\": {\n \"type\": \"EXTERNAL\",\n \"title\": \"Introduction to TypeScript\",\n \"description\": \"Learn one of the most popular programming languages of the recent years quickly and efficiently. Results guaranteed!\",\n \"course_url\": \"https://example.com\",\n \"thumbnail_url\": \"https://example.com/images/thumbnail.jpg\",\n \"duration\": 60,\n \"languages\": [\n \"en-US\",\n \"pl-PL\"\n ]\n }\n }\n ]\n}\n```"
tags:
- Unified LMS API
parameters:
- in: header
name: X-Integration-Id
schema:
type: string
description: ID of the integration you want to interact with.
example: bombohr:HWUTwvyx2wLoSUHphiWVrp28
required: true
requestBody:
description: POST /lms/courses/bulk Request body
content:
application/json:
schema:
$ref: '#/components/schemas/PostLmsCoursesBulkRequestBody'
examples:
example1:
value:
items:
- origin_id: course-1
course:
type: EXTERNAL
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.
course_url: https://docs.kombo.dev/lms/introduction
thumbnail_url: https://kombo.dev/images/courses/lms-integrations-thumbnail.png
duration: 45
languages:
- en
- de-CH
- origin_id: course-2
course:
type: EXTERNAL
title: Introduction to TypeScript
description: Learn one of the most popular programming languages of the recent years quickly and efficiently. Results guaranteed!
course_url: https://example.com
thumbnail_url: https://example.com/images/thumbnail.jpg
duration: 60
languages:
- en-US
- pl-PL
responses:
'200':
description: POST /lms/courses/bulk Positive response
content:
application/json:
schema:
$ref: '#/components/schemas/PostLmsCoursesBulkPositiveResponse'
default:
$ref: '#/components/responses/ErrorResponseGeneral'
/lms/courses/bulk/{task_id}:
get:
operationId: GetLmsCoursesBulkTaskId
summary: Get status of “Upsert courses” task
description: "Poll for the status of an existing “Upsert courses” task.\n\n<Info>\nThis endpoint returns the current status of a task. Poll it at regular intervals until the task reaches a terminal status. Learn more in our [async endpoints guide](/lms/guides/async-endpoints). The possible statuses are:\n - `PENDING` – The task is still being processed.\n - `COMPLETED` – The task finished successfully. The `data` field contains the results.\n - `FAILED` – The task encountered an error. Check the `error` field for details.\n</Info>"
tags:
- Unified LMS API
parameters:
- in: header
name: X-Integration-Id
schema:
type: string
description: ID of the integration you want to interact with.
example: bombohr:HWUTwvyx2wLoSUHphiWVrp28
required: true
- name: task_id
in: path
required: true
description: GET /lms/courses/bulk/:task_id Parameter
schema:
$ref: '#/components/schemas/GetLmsCoursesBulkTaskIdParameterTaskId'
responses:
'200':
description: GET /lms/courses/bulk/:task_id Positive response
content:
application/json:
schema:
$ref: '#/components/schemas/GetLmsCoursesBulkTaskIdPositiveResponse'
default:
$ref: '#/components/responses/ErrorResponseGeneral'
/lms/courses/{course_id}/deactivate:
post:
operationId: PostLmsCoursesCourseIdDeactivate
summary: Deactivate course
description: "Deactivate a course in the LMS.\n\nDeactivates a course, making it unavailable for new enrollments while preserving existing progress records.\n\n<Note>\n This endpoint requires the permission **Upsert courses** to be enabled in [your scope config](/scopes).\n</Note>"
tags:
- Unified LMS API
parameters:
- in: header
name: X-Integration-Id
schema:
type: string
description: ID of the integration you want to interact with.
example: bombohr:HWUTwvyx2wLoSUHphiWVrp28
required: true
- name: course_id
in: path
required: true
description: The ID of the course in Kombo or its ID in the remote system by prefixing it with `remote:` (e.g., `remote:12312`)
schema:
$ref: '#/components/schemas/PostLmsCoursesCourseIdDeactivateParameterCourseId'
examples:
example1:
value: 26vafvWSRmbhNcxJYqjCzuJg
requestBody:
description: POST /lms/courses/:course_id/deactivate Request body
content:
application/json:
schema:
$ref: '#/components/schemas/PostLmsCoursesCourseIdDeactivateRequestBody'
examples:
example1:
value: {}
responses:
'200':
description: POST /lms/courses/:course_id/deactivate Positive response
content:
application/json:
schema:
$ref: '#/components/schemas/PostLmsCoursesCourseIdDeactivatePositiveResponse'
examples:
example1:
value:
status: success
data:
id: 26vafvWSRmbhNcxJYqjCzuJg
remote_id: '32'
provider_id: 7xPdr68N8kG9EzLwjsN9xyz
origin_id: course-123
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 manageme
# --- truncated at 32 KB (145 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kombo/refs/heads/main/openapi/kombo-unified-lms-api-api-openapi.yml