Docs

Courses

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

FieldTypeRequiredDefaultDescriptionOptions
identifierstringNo
clientIdentifierstringNo
lengthnumberNo100
pagenumberNo0
titlestringNo
deletedbooleanNofalse

Get course Pulse and above

Use this endpoint to get a course by ID.

GET/v1/headless/courses/{id}

Path parameters

FieldDescriptionOptions
idCourse ID

Query parameters

FieldTypeRequiredDefaultDescriptionOptions
identifierstringNo
clientIdentifierstringNo

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 →
GET/v1/headless/course/{action}

Path parameters

FieldDescriptionOptions
actionview (learner) or edit (authoring)viewedit

Query parameters

FieldTypeRequiredDefaultDescriptionOptions
idstringNo
identifierstringYes
clientIdentifierstringNo
flowstringNoaidocumentpresentationpreviewgeneratetransformconvert
backstringNoeventhiddennative
colorPrimarystringNo
translationsbooleanNo
languagestringNo
brandVoicebooleanNo

Get a signed URL for a course [POST] (Deprecated)

info
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

FieldTypeRequiredDescOptions
actionstringYesview (learner) or edit (authoring)viewedit
idstringNoCourse ID (required when action is view)
identifierstringYesYour stable user identifier
clientIdentifierstringNoThe client this user belongs to
themeIdnumberNoTheme ID to render the embed with
namestringNoDisplay name for the learner
avatarstringNoAvatar URL for the learner
optionsobjectNo

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

FieldDescriptionOptions
idSource course ID

Body parameters

FieldTypeRequiredDescOptions
identifierstringNoOverride identifier on the duplicate
clientIdentifierstringNoOverride 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

FieldDescriptionOptions
idCourse 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

FieldDescriptionOptions
idCourse 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

FieldDescriptionOptions
idCourse ID

Query parameters

FieldTypeRequiredDefaultDescriptionOptions
typestringNodynamicstatic
versionstringNo1.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

FieldTypeRequiredDescOptions
promptstringYesThe topic or learning objective to generate a course from
audiencestringYesWho the course is for (e.g. "new hires")
familiaritystringYesHow familiar the audience is with the topic (e.g. "beginner")
tonestringYesTone of voice for the generated content (e.g. "professional")
screenCountnumberYesApproximate number of screens to generate
identifierstringYesYour stable identifier for the course owner
clientIdentifierstringNoThe 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

FieldDescriptionOptions
idCourse ID

Revert a course Embed Automate and above

Use this endpoint to revert a course to its published version programmatically.

POST/v1/headless/course/{id}/revert

Path parameters

FieldDescriptionOptions
idCourse ID