Skip to main content
POST
Upsert courses
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.
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.
This endpoint requires the permission Upsert courses to be enabled in your scope config.

Example Request Body

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.

Body

application/json

POST /lms/courses/bulk Request body

items
object[]
required

Array of courses to create or update.

Response

POST /lms/courses/bulk Positive response

status
string
required
Allowed value: "success"
data
object
required
warnings
object[]
required

These are the interaction warnings that are shown in the dashboard. They are meant to provide debug information to you. We recommend logging them to the console.