Updates existing course content. Supports partial updates — only provided fields are updated. Can also create new sections, lessons, topics, or course groups by omitting the `id` field. The update endpoint accepts up to 100 total items across all entity types combined.
Updates existing course content. Supports partial updates - only provided fields are updated. Can also create new sections, lessons, topics, or course groups by omitting the id field.
The update endpoint accepts up to 100 total items across all entity types combined.
Authentication & Permissions
Authenticate with Authorization: Bearer YOUR_API_KEY. This endpoint requires the courses.edit permission. This route is not rate limited.
Update Course Attributes
Property
Type
Required?
Description
sections
array
no
Array of section updates
courseGroups
array
no
Array of course group updates
courses
array
no
Array of course updates
lessons
array
no
Array of lesson updates
topics
array
no
Array of topic updates
Update Section Object
Property
Type
Required?
Description
id
UUID
no
Section ID (omit to create new section)
courseId
UUID
if creating
Required when creating new section
title
string
no
Section title
releaseDate
date
no
When section is released
displayOrder
integer
no
Display order in course
Update Course Group Object
Property
Type
Required?
Description
id
UUID
no
Course group ID (omit to create new)
title
string
no
Course group title
slug
string
no
URL slug
description
string
no
Course description (max 5,000 characters). Pass null to clear; omit to leave unchanged
tagIds
array
no
Tag UUIDs (max 10). Replaces the entire array; pass null or [] to clear
customFields
JSON
no
Custom field values. Replaces the entire object; pass null or {} to clear
asset
URL
no
Catalog image URL. Pass null to clear
assetAltText
string
no
Catalog image alt text
detailAsset
URL
no
Detail page image URL. Pass null to clear
detailAssetAltText
string
no
Detail image alt text
ribbon
string
no
Ribbon badge slug. Pass null to clear
metaTitle
string
no
SEO meta title (max 200 characters)
metaDescription
string
no
SEO meta description (max 500 characters)
archived
boolean
no
Archive status (update only — cannot be set on create)
relatedCourseGroupIds
array
no
Related course group UUIDs. Replaces the entire array