Courses are learning objects within Coassemble. Using the API, you can fetch and delete courses as well as get a signed URL for courses for embedding.
Get courses Pulse and above
Use this endpoint to get all your courses. By default only non-deleted courses are returned; set the deleted query parameter to true to include soft-deleted courses.
GET/v1/headless/courses
Query parameters
Field
Type
Required
Default
Description
Options
identifier
string
No
—
—
clientIdentifier
string
No
—
—
length
number
No
100
—
page
number
No
0
—
title
string
No
—
—
deleted
boolean
No
false
—
Get course Pulse and above
Use this endpoint to get a course by ID.
GET/v1/headless/courses/{id}
Path parameters
Field
Description
Options
id
Course ID
—
Query parameters
Field
Type
Required
Default
Description
Options
identifier
string
No
—
—
clientIdentifier
string
No
—
—
Get a signed URL for a course [GET] (Deprecated)
info
This endpoint is deprecated. Please use the POST /v1/headless/embed/course endpoint instead. See recommended alternative →
This endpoint is deprecated. Please use the POST /v1/headless/embed/course endpoint instead. See recommended alternative →
Use this endpoint to get a signed URL for a course. This URL can be used to embed the Coassemble interface into your application within an iframe.
POST/v1/headless/course/url
Body parameters
Field
Type
Required
Desc
Options
action
string
Yes
view (learner) or edit (authoring)
viewedit
id
string
No
Course ID (required when action is view)
—
identifier
string
Yes
Your stable user identifier
—
clientIdentifier
string
No
The client this user belongs to
—
themeId
number
No
Theme ID to render the embed with
—
name
string
No
Display name for the learner
—
avatar
string
No
Avatar URL for the learner
—
options
object
No
—
Duplicate a course Embed Core and above
Use this endpoint to duplicate an existing course. You can optionally provide an identifier and clientIdentifier to assign the duplicated course to a new client or user within your environment.
POST/v1/headless/course/{id}/duplicate
Path parameters
Field
Description
Options
id
Source course ID
—
Body parameters
Field
Type
Required
Desc
Options
identifier
string
No
Override identifier on the duplicate
—
clientIdentifier
string
No
Override client identifier on the duplicate
—
Delete course Embed Core and above
Use this endpoint to delete an existing course. The course is soft-deleted and can be restored with the restore endpoint.
DELETE/v1/headless/course/{id}
Path parameters
Field
Description
Options
id
Course ID
—
Restore a course Embed Core and above
Use this endpoint to restore a soft-deleted course.
POST/v1/headless/course/{id}/restore
Path parameters
Field
Description
Options
id
Course ID
—
Export SCORM Embed Core and above
info
This endpoint is designed for you to give your users a way to export their course as a SCORM package for use in a third party LMS. It is not recommended that you use this endpoint instead of signed URLs for embedding courses. See recommended alternative →
Use this endpoint to export a SCORM package for a course.
GET/v1/headless/course/scorm/{id}
Path parameters
Field
Description
Options
id
Course ID
—
Query parameters
Field
Type
Required
Default
Description
Options
type
string
No
—
dynamicstatic
version
string
No
—
1.22004
Generate a course (Deprecated) Embed Core and above
info
This endpoint is deprecated. Please use the POST /v1/headless/generate/course endpoint instead. See recommended alternative →
This legacy route is still available for backwards compatibility and delegates to the new generate controller.
POST/v1/headless/course/generate
Body parameters
Field
Type
Required
Desc
Options
prompt
string
Yes
The topic or learning objective to generate a course from
—
audience
string
Yes
Who the course is for (e.g. "new hires")
—
familiarity
string
Yes
How familiar the audience is with the topic (e.g. "beginner")
—
tone
string
Yes
Tone of voice for the generated content (e.g. "professional")
—
screenCount
number
Yes
Approximate number of screens to generate
—
identifier
string
Yes
Your stable identifier for the course owner
—
clientIdentifier
string
No
The client this course belongs to
—
Publish a course Embed Automate and above
Use this endpoint to publish a course programmatically.
POST/v1/headless/course/{id}/publish
Path parameters
Field
Description
Options
id
Course ID
—
Revert a course Embed Automate and above
Use this endpoint to revert a course to its published version programmatically.