Skip to main content
PATCH
JavaScript

Authorizations

Authorization
string
header
required

An Account API key, account-scoped JWT, App API key, or user OAuth token. Prepend the key or token with Bearer, for example Bearer ***************************.

Path Parameters

id
string
required

The unique identifier of the course to update (e.g., "course_XXXXX").

Example:

"cors_xxxxxxxxxxxxx"

Body

application/json

Parameters for UpdateCourse

certificate_after_completion_enabled
boolean | null

Whether the course awards students a PDF certificate after completing all lessons.

chapters
object[] | null

A list of chapters with nested lessons to reorder or rename in bulk.

description
string | null

A short description of the course displayed to students on the course page.

language
enum<string> | null

The primary language spoken in the video content of the course.

Available options:
en,
es,
it,
pt,
de,
fr,
pl,
ru,
nl,
ca,
tr,
sv,
uk,
no,
fi,
sk,
el,
cs,
hr,
da,
ro,
bg
order
string | null

The decimal order position of the course within its experience. Use fractional values (e.g., "1.5") to place between existing courses.

Example:

"123.45"

require_completing_lessons_in_order
boolean | null

Whether students must complete each lesson sequentially before advancing to the next one.

tagline
string | null

A short tagline displayed beneath the course title (e.g., "Master the fundamentals of design").

thumbnail
FileInputWithId · object | null

The thumbnail image for the course in PNG, JPEG, or GIF format.

title
string | null

The display title of the course (e.g., "Introduction to Web Development").

visibility
enum<string> | null

Controls whether this course is visible to students or hidden as a draft.

Available options:
visible,
hidden

Response

A successful response

A structured learning module containing chapters and lessons, belonging to an experience.

certificate_after_completion_enabled
boolean | null
required

Whether students receive a PDF certificate after completing all lessons in this course. Null if the setting has not been configured.

chapters
object[]
required

An ordered list of all chapters in this course, sorted by their display position.

chapters_count
integer
required

The total number of chapters in this course, including chapters whose lessons are all hidden from the current user.

Example:

42

completed_lessons_count
integer
required

The number of lessons in this course that the current user has marked as completed. Zero when the request is not made on behalf of a user.

Example:

42

cover_image
string | null
required

The URL of the course cover image shown on preview cards. Null if no cover image has been uploaded.

Example:

"https://assets.whop.com/images/course-cover.jpg"

created_at
string<date-time>
required

The datetime the course was created.

Example:

"2023-12-01T05:00:00.401Z"

description
string | null
required

A brief summary of the course content and objectives. Null if no description has been set.

Example:

"Learn advanced trading strategies from industry experts."

id
string
required

The unique identifier for the course.

Example:

"cors_xxxxxxxxxxxxx"

language
enum<string>
required

The spoken language of the video content, used to generate accurate closed captions. One of: en, es, it, pt, de, fr, pl, ru, nl, ca, tr, sv, uk, no, fi, sk, el, cs, hr, da, ro, bg.

Available options:
en,
es,
it,
pt,
de,
fr,
pl,
ru,
nl,
ca,
tr,
sv,
uk,
no,
fi,
sk,
el,
cs,
hr,
da,
ro,
bg
latest_lesson_created_at
string<date-time> | null
required

The creation timestamp of the most recently added lesson visible to the current user. Null if the course has no lessons.

Example:

"2023-12-01T05:00:00.401Z"

lesson_unlock_days
integer[]
required

The distinct drip schedules, in days after the course start, of lessons visible to the current user. Combine with startedAt to work out which have unlocked. Empty when the user has not started the course or no lesson is on a schedule.

Represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

order
string
required

The sort position of this course within its parent experience, as a decimal for flexible ordering.

Example:

"123.45"

require_completing_lessons_in_order
boolean
required

Whether students must complete each lesson sequentially before advancing to the next one.

resume_lesson
object | null
required

The lesson the current user should continue from: their first incomplete lesson, or the first lesson when they have finished the course, have not started it, or can edit it. Null if the course has no lessons.

started_at
string<date-time> | null
required

The earliest time the current user is known to have started this course. Null if they have not started it. Drip unlock schedules are measured from this point.

Example:

"2023-12-01T05:00:00.401Z"

tagline
string | null
required

A short marketing tagline displayed beneath the course title. Null if no tagline has been set.

Example:

"Master the fundamentals in 30 days"

thumbnail
object | null
required

The thumbnail image displayed on course cards and previews. Null if no thumbnail has been uploaded.

title
string | null
required

The display name of the course shown to students. Null if no title has been set.

Example:

"Introduction to Technical Analysis"

total_duration_seconds
integer
required

The combined duration in seconds of every hosted video across the lessons visible to the current user.

Example:

42

total_lessons_count
integer
required

The number of lessons in this course visible to the current user.

Example:

42

updated_at
string<date-time>
required

The datetime the course was last updated.

Example:

"2023-12-01T05:00:00.401Z"

visibility
enum<string>
required

The visibility setting that controls whether this course appears to students. One of: visible, hidden.

Available options:
visible,
hidden