---
title: "Scope and sequence for a course"
method: GET
path: "/courses/{courseId}/scope-and-sequence"
tags: ["Curriculum"]
---

# Scope and sequence for a course

`GET /courses/{courseId}/scope-and-sequence`

Returns the complete hierarchical structure of a course including its lesson groupings and lessons in a scope and sequence format.

The structure follows this hierarchy:
- Course → Lesson Groupings (can be nested) → Lessons

**Note:** Different curricula use different organizational structures. Lesson groupings might be called units, modules, chapters, sections, themes, etc. depending on the curriculum. The `groupName` property in each lesson grouping indicates what type it is (e.g., "unit", "section", "module").

Use this endpoint when you need to:
- Display the complete course outline or table of contents
- Navigate the course structure programmatically
- Build a course curriculum map or scope and sequence view
- Understand the full instructional progression of a course

The `view` parameter controls the level of detail:
- `summary`: Returns only essential navigation fields (identifiers, names, positions)
- `full`: Returns complete objects with all properties for each element

## Path parameters

- `courseId` string, required

## Query parameters

- `view` 'summary' | 'full'

## Response `200`

Successfully retrieved course scope and sequence

- union
  - ScopeAndSequenceSummary — Hierarchical structure of a course showing lesson groupings and lessons (`summary` view)
    - `courseId` string, required — Unique identifier for the resource in Knowledge Graph
    - `courseName` string, required — Name or title of the resource
    - `view` 'summary', required — Level of detail included in the response
    - `lessonGroupings` LessonGroupingNode[], required — Top-level lesson groupings (e.g., units, modules, chapters)
      - `identifier` string, required — Unique identifier for the resource in Knowledge Graph
      - `name` string, required — Name or title of the resource
      - `ordinalName` string — Label with sequence number and descriptive text (e.g., "Unit 1", "Chapter 2")
      - `groupName` string, required — Type of grouping (e.g., "unit", "section", "module", "chapter")
      - `groupLevel` integer, required — Nesting level of this grouping (0 = top level, 1 = nested once, etc.)
      - `position` integer, required — Position of the resource within its parent
      - `children` LessonGroupingNode[] — Nested lesson groupings within this grouping
      - `lessons` LessonNode[] — Lessons within this grouping
        - `identifier` string, required — Unique identifier for the resource in Knowledge Graph
        - `name` string, required — Name or title of the resource
        - `ordinalName` string — Label with sequence number and descriptive text (e.g., "Lesson 1")
        - `position` integer, required — Position of the resource within its parent
  - ScopeAndSequenceFull — Hierarchical structure of a course showing lesson groupings and lessons (`full` view)
    - `courseId` string, required — Unique identifier for the resource in Knowledge Graph
    - `courseName` string, required — Name or title of the resource
    - `view` 'full', required — Level of detail included in the response
    - `lessonGroupings` LessonGroupingNodeFull[], required — Top-level lesson groupings (e.g., units, modules, chapters)
      - `identifier` string, required — Unique identifier for the resource in Knowledge Graph
      - `name` string, required — Name or title of the resource
      - `ordinalName` string — Label with sequence number and descriptive text (e.g., "Unit 1", "Chapter 2")
      - `groupName` string, required — Type of grouping (e.g., "unit", "section", "module", "chapter")
      - `groupLevel` integer, required — Nesting level of this grouping (0 = top level, 1 = nested once, etc.)
      - `position` integer, required — Position of the resource within its parent
      - `academicSubject` string — Academic subject
      - `gradeLevel` GradeLevelENUM[]
      - `author` string — Author or creator of the resource
      - `provider` string — Source data provider for the resource
      - `inLanguage` string — Language used in the resource (BCP 47 format)
      - `educationalUse` string — Educational use of the resource
      - `audience` string[] — Intended audience of the resource
      - `license` string — URL to the resource's license document
      - `curriculumLabel` string — Curriculum-specific categorization of the resource
      - `lmsLoadingGuidance` string — LMS loading guidance for the resource
      - `isOptional` boolean — Whether the resource is optional to complete
      - `courseCode` string — Unique identifier for the resource used by the course provider
      - `publisherIdentifier` string, nullable — Unique identifier for the resource used by the publisher
      - `timeRequired` string — Approximate amount of time required to work through the resource (ISO 8601 duration format)
      - `dateCreated` string, date — Date created
      - `attributionStatement` string — Statement that acknowledges the resource's author and provider, as required by the CC BY 4.0 license
      - `children` LessonGroupingNodeFull[] — Nested lesson groupings within this grouping
      - `lessons` LessonNodeFull[] — Lessons within this grouping
        - `identifier` string, required — Unique identifier for the resource in Knowledge Graph
        - `name` string, required — Name or title of the resource
        - `ordinalName` string — Label with sequence number and descriptive text (e.g., "Lesson 1")
        - `position` integer, required — Position within the resource's parent grouping
        - `academicSubject` string — Academic subject
        - `gradeLevel` GradeLevelENUM[]
        - `author` string — Author or creator of the resource
        - `provider` string — Source data provider for the resource
        - `inLanguage` string — Language used in the resource (BCP 47 format)
        - `educationalUse` string — Educational use of the resource
        - `audience` string[] — Intended audience of the resource
        - `license` string — URL to the resource's license document
        - `curriculumLabel` string — Curriculum-specific categorization of the resource
        - `lmsLoadingGuidance` string — LMS loading guidance for the resource
        - `isOptional` boolean — Whether the resource is optional to complete
        - `courseCode` string — Unique identifier for the resource used by the course provider
        - `publisherIdentifier` string, nullable — Unique identifier for the resource used by the publisher
        - `timeRequired` string — Approximate amount of time required to work through the resource (ISO 8601 duration format)
        - `dateCreated` string, date — Date created
        - `attributionStatement` string — Statement that acknowledges the resource's author and provider, as required by the CC BY 4.0 license

## Other responses

- `400` — Bad request - Invalid query parameters
- `404` — Course not found
- `422` — Unprocessable Entity - Invalid view parameter value
- `500` — Internal server error

---

[API](https://skmtc.dev/learningcommons/apis/learning-commons-knowledge-graph-rest-api.md) · [All operations](https://skmtc.dev/learningcommons/apis/learning-commons-knowledge-graph-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/learningcommons/learning-commons-knowledge-graph-rest-api/revisions/87a44fbb081f/schema)
