curl --request POST \
--url https://api.kombo.dev/v1/lms/courses \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "<string>",
"description": "<string>",
"url": "<string>",
"skills": [
{
"name": "<string>",
"skill_level": "<string>"
}
]
}
'{
"status": "success",
"data": {
"id": "3KMdr68N8kG9EzLwjsN9aoz",
"remote_id": "42",
"title": "TypeScript for Beginners",
"description": "A comprehensive introduction to TypeScript programming, covering types, interfaces, generics, and best practices for modern web development.",
"url": "https://learning.acme.com/courses/typescript-beginners",
"remote_created_at": "2022-08-07T14:01:29.196Z",
"skills": [
{
"name": "TypeScript Programming",
"skill_level": "Beginner"
},
{
"name": "JavaScript Fundamentals",
"skill_level": "Intermediate"
}
],
"ordered_content": [],
"changed_at": "2022-08-07T14:01:29.196Z",
"remote_deleted_at": null,
"remote_data": null
}
}Create course
curl --request POST \
--url https://api.kombo.dev/v1/lms/courses \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "<string>",
"description": "<string>",
"url": "<string>",
"skills": [
{
"name": "<string>",
"skill_level": "<string>"
}
]
}
'{
"status": "success",
"data": {
"id": "3KMdr68N8kG9EzLwjsN9aoz",
"remote_id": "42",
"title": "TypeScript for Beginners",
"description": "A comprehensive introduction to TypeScript programming, covering types, interfaces, generics, and best practices for modern web development.",
"url": "https://learning.acme.com/courses/typescript-beginners",
"remote_created_at": "2022-08-07T14:01:29.196Z",
"skills": [
{
"name": "TypeScript Programming",
"skill_level": "Beginner"
},
{
"name": "JavaScript Fundamentals",
"skill_level": "Intermediate"
}
],
"ordered_content": [],
"changed_at": "2022-08-07T14:01:29.196Z",
"remote_deleted_at": null,
"remote_data": null
}
}POST /lms/courses Request body
The title of the course
A description of the course
URL where the course can be accessed
POST /lms/courses Positive response
"success"Show child attributes
The globally unique ID of this object generated by Kombo. We recommend using this as a stable primary key for syncing.
The raw ID of the object in the remote system. We don't recommend using this as a primary key on your side as it might sometimes be compromised of multiple identifiers if a system doesn't provide a clear primary key.
The title of the course.
A description of the course.
URL where the course can be accessed.
The date and time the object was created in the remote system.
Ordered list of content items that make up this course.
Show child attributes
The Kombo ID of the content item.
The remote ID of the content item.
The title of the content item.
A description of the content item.
URL where the content can be accessed.
The type of learning content.
COACHING, VIDEO, TEXT, QUIZ The date and time the object was created in the remote system.
The timestamp when this specific record was last modified. This field only updates when properties directly on this record change, NOT when related or nested models change. For filtering that considers nested data changes, use the updated_after parameter which will return records when either the record itself OR its related models have been updated.
Date when the course was deleted.
Includes the data fetched from the remote system. Please be aware that including this in you scope config might violate other scopes that are set.
Remote data always has the endpoint path that we got the data from as the
top level key. For example, it could look like: { "/companies": { ... }}
This is not available on all plans. Reach out to Kombo if you need it.
Was this page helpful?