Course Structure
Returns the full hierarchical structure of a course, including its sections, lessons, and completion criteria
Returns the full hierarchical structure of a course, including its sections, lessons, and completion criteria.
GET
https://example.thoughtindustries.com/incoming/v2/courses/:courseId/structureExample request
curl "https://example.thoughtindustries.com/incoming/v2/courses/:courseId/structure" \
-H 'Authorization: Bearer YOUR_API_KEY'Parameters
| Name | Type | Required | Location | Description |
|---|---|---|---|---|
courseId | uuid | Yes | path | The courseId identifier. |
Example response
{
"data": {
"APICourseStructure": {
"id": "00000000-0000-0000-0000-000000000000",
"title": "string",
"status": "draft",
"sections": [
{
"id": "00000000-0000-0000-0000-000000000000",
"title": "string",
"releaseAt": "2024-01-01T00:00:00.000Z",
"lessons": [
{
"id": "00000000-0000-0000-0000-000000000000",
"title": "string",
"accessLevel": "studentsOnly",
"topics": [
{
"...": "..."
}
]
}
]
}
],
"completionCriteria": [
{
"id": "00000000-0000-0000-0000-000000000000",
"course": "00000000-0000-0000-0000-000000000000",
"type": "coursePercentViewed",
"description": "string",
"coursePercentViewed": 0,
"courseAssignmentComplete": "00000000-0000-0000-0000-000000000000",
"bongoAssignmentCompleted": "00000000-0000-0000-0000-000000000000",
"courseAssessmentPassed": "00000000-0000-0000-0000-000000000000",
"courseTopicViewed": "00000000-0000-0000-0000-000000000000",
"courseMeetingAttended": "00000000-0000-0000-0000-000000000000",
"scormComplete": "00000000-0000-0000-0000-000000000000",
"surveyGizmoComplete": "00000000-0000-0000-0000-000000000000",
"xApiComplete": "00000000-0000-0000-0000-000000000000",
"articlePercentViewed": 0,
"articleTimeViewedInSeconds": 0,
"videoPercentViewed": 0,
"videoTopicId": "00000000-0000-0000-0000-000000000000"
}
]
}
}
}Response fields
| Field | Type | Description |
|---|---|---|
id | uuid | Unique identifier for the course. |
title | string | Display title of the course. |
status | Status | Publication status of the course (e.g., draft, published). |
sections | APISectionWithLessons[] | Ordered list of sections belonging to the course, each containing its lessons. |
sections.id | uuid | Unique identifier for the section. |
sections.title | string | Display title of the section. |
sections.releaseAt | ISO 8601 timestamp | Date and time when the section becomes available to learners, as an ISO 8601 timestamp. |
sections.lessons | APILessonWithTopics[] | Ordered list of lessons within the section, each containing its topics. |
completionCriteria | CourseCompletionCriteria[] | List of criteria that must be satisfied for a learner to be marked as having completed the course. |
completionCriteria.id | uuid | Unique identifier for the completion criterion. |
completionCriteria.course | uuid | Identifier of the course this criterion belongs to. |
completionCriteria.type | CourseCompletionCriteriaType | Category of the completion criterion (e.g., coursePercentViewed). |
completionCriteria.description | string | Human-readable description of the completion criterion. |
completionCriteria.coursePercentViewed | integer | Minimum percentage of course content a learner must view to satisfy this criterion, expressed as a whole number from 0 to 100. |
completionCriteria.courseAssignmentComplete | uuid | Identifier of the course assignment that must be completed to satisfy this criterion. |
completionCriteria.bongoAssignmentCompleted | uuid | Identifier of the Bongo assignment that must be completed to satisfy this criterion. |
completionCriteria.courseAssessmentPassed | uuid | Identifier of the course assessment that must be passed to satisfy this criterion. |
completionCriteria.courseTopicViewed | uuid | Identifier of the topic that must be viewed to satisfy this criterion. |
completionCriteria.courseMeetingAttended | uuid | Identifier of the meeting that must be attended to satisfy this criterion. |
completionCriteria.scormComplete | uuid | Identifier of the SCORM topic that must be completed to satisfy this criterion. |
completionCriteria.surveyGizmoComplete | uuid | Identifier of the SurveyGizmo survey that must be completed to satisfy this criterion. |
completionCriteria.xApiComplete | uuid | Identifier of the xAPI topic that must be completed to satisfy this criterion. |
completionCriteria.articlePercentViewed | integer | Minimum percentage of an article a learner must view to satisfy this criterion, expressed as a whole number from 0 to 100. |
completionCriteria.articleTimeViewedInSeconds | integer | Minimum time a learner must spend viewing an article to satisfy this criterion, in seconds. |
completionCriteria.videoPercentViewed | integer | Minimum percentage of a video a learner must watch to satisfy this criterion, expressed as a whole number from 0 to 100. |
completionCriteria.videoTopicId | uuid | Identifier of the video topic associated with the video viewing criterion. |