Skip to main content
https://.thoughtindustries.com

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.

GEThttps://example.thoughtindustries.com/incoming/v2/courses/:courseId/structure

Example request

curl "https://example.thoughtindustries.com/incoming/v2/courses/:courseId/structure" \
  -H 'Authorization: Bearer YOUR_API_KEY'

Parameters

NameTypeRequiredLocationDescription
courseIduuidYespathThe 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

FieldTypeDescription
iduuidUnique identifier for the course.
titlestringDisplay title of the course.
statusStatusPublication status of the course (e.g., draft, published).
sectionsAPISectionWithLessons[]Ordered list of sections belonging to the course, each containing its lessons.
sections.iduuidUnique identifier for the section.
sections.titlestringDisplay title of the section.
sections.releaseAtISO 8601 timestampDate and time when the section becomes available to learners, as an ISO 8601 timestamp.
sections.lessonsAPILessonWithTopics[]Ordered list of lessons within the section, each containing its topics.
completionCriteriaCourseCompletionCriteria[]List of criteria that must be satisfied for a learner to be marked as having completed the course.
completionCriteria.iduuidUnique identifier for the completion criterion.
completionCriteria.courseuuidIdentifier of the course this criterion belongs to.
completionCriteria.typeCourseCompletionCriteriaTypeCategory of the completion criterion (e.g., coursePercentViewed).
completionCriteria.descriptionstringHuman-readable description of the completion criterion.
completionCriteria.coursePercentViewedintegerMinimum percentage of course content a learner must view to satisfy this criterion, expressed as a whole number from 0 to 100.
completionCriteria.courseAssignmentCompleteuuidIdentifier of the course assignment that must be completed to satisfy this criterion.
completionCriteria.bongoAssignmentCompleteduuidIdentifier of the Bongo assignment that must be completed to satisfy this criterion.
completionCriteria.courseAssessmentPasseduuidIdentifier of the course assessment that must be passed to satisfy this criterion.
completionCriteria.courseTopicVieweduuidIdentifier of the topic that must be viewed to satisfy this criterion.
completionCriteria.courseMeetingAttendeduuidIdentifier of the meeting that must be attended to satisfy this criterion.
completionCriteria.scormCompleteuuidIdentifier of the SCORM topic that must be completed to satisfy this criterion.
completionCriteria.surveyGizmoCompleteuuidIdentifier of the SurveyGizmo survey that must be completed to satisfy this criterion.
completionCriteria.xApiCompleteuuidIdentifier of the xAPI topic that must be completed to satisfy this criterion.
completionCriteria.articlePercentViewedintegerMinimum percentage of an article a learner must view to satisfy this criterion, expressed as a whole number from 0 to 100.
completionCriteria.articleTimeViewedInSecondsintegerMinimum time a learner must spend viewing an article to satisfy this criterion, in seconds.
completionCriteria.videoPercentViewedintegerMinimum percentage of a video a learner must watch to satisfy this criterion, expressed as a whole number from 0 to 100.
completionCriteria.videoTopicIduuidIdentifier of the video topic associated with the video viewing criterion.