> ## Documentation Index
> Fetch the complete documentation index at: https://docs.learningcommons.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Learning components by subject

> Fetches a list of LearningComponents filtered by academic subject.

This endpoint retrieves learning components for a specific subject area. Learning components are granular skills that break down broad standards into teachable units. Learning components are available for Mathematics and English Language Arts, with additional subjects being developed.

Use this endpoint when you need to:
- Get all learning components available for a specific subject
- Browse the complete set of skills/concepts for curriculum planning
- Retrieve LCs for mapping to your own content or assessments
- Export learning component data for analysis or integration

The endpoint returns paginated results. Use the `limit` and `cursor` parameters to control the number of results returned and navigate through large result sets.

**Related topics:**
- [Understanding Learning components](/knowledge-graph/schema-reference/learning-components)
- [Available LC coverage by subject and state](/knowledge-graph/schema-reference/learning-components#current-lc-mappings)




## OpenAPI

````yaml /api-reference/knowledge-graph-api/openapi.yaml get /learning-components
openapi: 3.0.3
info:
  title: Learning Commons Knowledge Graph REST API
  description: >
    REST API for accessing education knowledge graph data including academic
    standards, learning components, and curriculum information.


    **Key datasets:**

    - **Academic standards**: Official state standards from all 50 U.S. states
    sourced from 1EdTech's CASE Network

    - **Learning components**: Granular, teachable skills that break down broad
    standards into actionable instructional units

    - **Standards crosswalks**: Connections between standards and frameworks

    - **Curriculum**: Structured course content including courses, lesson
    groupings (units, sections, modules), lessons, activities, and assessments


    **Learn more:**

    - [Knowledge Graph
    Overview](/knowledge-graph/understanding-knowledge-graph/introduction)

    - [Standards](/knowledge-graph/schema-reference/standards)

    - [Learning
    components](/knowledge-graph/schema-reference/learning-components)

    - [Standards crosswalks](/knowledge-graph/schema-reference/standards)

    - [Curriculum](/knowledge-graph/schema-reference/curriculum)

    - [Quickstart](/knowledge-graph/getting-started/quickstart)
  version: '0'
servers:
  - url: https://api.learningcommons.org/knowledge-graph/v0
    description: Production server
security:
  - ApiKeyAuth: []
tags:
  - name: Academic standards
    description: Academic standards operations
  - name: Curriculum
    description: Curriculum operations
  - name: Durable skills
    description: Durable skills frameworks and skills operations
  - name: Hierarchy
    description: Hierarchical navigation operations
  - name: Learning components
    description: Learning components operations
  - name: Learning progressions
    description: Learning progressions operations
  - name: Search
    description: Search and discovery operations
  - name: Standards Crosswalks
    description: Standards crosswalks operations
paths:
  /learning-components:
    get:
      tags:
        - Learning components
      summary: Learning components by subject
      description: >
        Fetches a list of LearningComponents filtered by academic subject.


        This endpoint retrieves learning components for a specific subject area.
        Learning components are granular skills that break down broad standards
        into teachable units. Learning components are available for Mathematics
        and English Language Arts, with additional subjects being developed.


        Use this endpoint when you need to:

        - Get all learning components available for a specific subject

        - Browse the complete set of skills/concepts for curriculum planning

        - Retrieve LCs for mapping to your own content or assessments

        - Export learning component data for analysis or integration


        The endpoint returns paginated results. Use the `limit` and `cursor`
        parameters to control the number of results returned and navigate
        through large result sets.


        **Related topics:**

        - [Understanding Learning
        components](/knowledge-graph/schema-reference/learning-components)

        - [Available LC coverage by subject and
        state](/knowledge-graph/schema-reference/learning-components#current-lc-mappings)
      operationId: listLearningComponents
      parameters:
        - name: academicSubject
          in: query
          required: true
          schema:
            $ref: '#/components/schemas/AcademicSubjectENUM'
        - $ref: '#/components/parameters/LimitParam'
        - $ref: '#/components/parameters/CursorParam'
      responses:
        '200':
          description: Successfully retrieved list of learning components
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/PaginatedResponse'
                  - type: object
                    properties:
                      data:
                        type: array
                        items:
                          $ref: '#/components/schemas/LearningComponent'
              example:
                data:
                  - identifier: 0013fbee-3e76-500f-9978-42aa1a65f105
                    description: Use conversions to solve multi-step real-world problems
                    academicSubject: Mathematics
                    inLanguage: en-US
                    dateCreated: '2025-04-01'
                    dateModified: '2025-04-01'
                    author: Achievement Network
                    provider: Learning Commons
                    license: https://creativecommons.org/licenses/by/4.0/
                    attributionStatement: >-
                      Knowledge Graph is provided by Learning Commons under the
                      CC BY-4.0 license. Learning Commons received learning
                      components under CC BY-4.0 from Achievement Network.
                  - identifier: 457afeb6-6d17-5cff-8679-7b919d744bdd
                    description: Print uppercase "A"
                    academicSubject: English Language Arts
                    inLanguage: en-US
                    dateCreated: '2025-04-01'
                    dateModified: '2025-04-01'
                    author: Achievement Network
                    provider: Learning Commons
                    license: https://creativecommons.org/licenses/by/4.0/
                    attributionStatement: >-
                      Knowledge Graph is provided by Learning Commons under the
                      CC BY-4.0 license. Learning Commons received learning
                      components under CC BY-4.0 from Achievement Network.
                pagination:
                  limit: 100
                  nextCursor: >-
                    eyJpZGVudGlmaWVyIjogIjA5OWNlY2NiLTQ3MzItNTZjMC1iZGIxLTYxZjljNmZjYmQ2NSJ9
                  hasMore: true
        '400':
          description: Bad request - Missing required parameter or invalid values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: ValidationError
                message: >-
                  Missing required parameter: academicSubject. Example:
                  ?academicSubject=Mathematics or ?academicSubject=English
                  Language Arts
                requestId: req_12345
        '422':
          description: >-
            Unprocessable Entity - Invalid parameter values (e.g., enum value
            not in allowed list)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: ValidationError
                message: >-
                  Input should be 'English Language Arts', 'Mathematics',
                  'Science', 'Social Studies', or 'Other'
                requestId: req_12345
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: InternalServerError
                message: >-
                  An unexpected error occurred while retrieving learning
                  components
                requestId: req_12345
components:
  schemas:
    AcademicSubjectENUM:
      type: string
      description: Academic subject area
      enum:
        - English Language Arts
        - Mathematics
        - Science
        - Social Studies
        - Other
    PaginatedResponse:
      type: object
      description: Cursor-based paginated response
      required:
        - data
        - pagination
      properties:
        data:
          type: array
          description: Array of result items
          items:
            type: object
        pagination:
          $ref: '#/components/schemas/Pagination'
    LearningComponent:
      type: object
      description: >-
        A single, well-defined skill or concept that students are expected to
        learn
      required:
        - identifier
        - author
        - provider
        - license
        - attributionStatement
      properties:
        identifier:
          type: string
          description: Unique identifier for the resource in Knowledge Graph
        description:
          type: string
          description: Description of the specific skill or concept represented
        academicSubject:
          $ref: '#/components/schemas/AcademicSubjectENUM'
        inLanguage:
          $ref: '#/components/schemas/LanguageENUM'
          description: Language used in the resource (BCP 47 format)
        dateCreated:
          type: string
          format: date
          nullable: true
          description: Date created
        dateModified:
          type: string
          format: date
          nullable: true
          description: Date last modified
        examples:
          type: array
          items:
            type: string
          nullable: true
          description: >-
            Examples of how the skill or concept represented might appear in an
            instructional context
        author:
          type: string
          description: Author or creator of the resource
        provider:
          type: string
          description: Source data provider for the resource
        license:
          type: string
          format: uri
          description: URL to the resource's license document
        attributionStatement:
          type: string
          description: >-
            Statement that acknowledges the resource's author and provider, as
            required by the CC BY 4.0 license
    Error:
      type: object
      description: Standard error response object returned for all error conditions
      required:
        - error
        - message
        - requestId
      properties:
        error:
          type: string
          description: >-
            Machine-readable error type identifier (e.g., `ValidationError`,
            `NotFoundError`, `InternalServerError`)
        message:
          type: string
          description: >-
            Human-readable error message that explains what went wrong and may
            include actionable guidance
        requestId:
          type: string
          description: Unique identifier for this request (for debugging and support)
        details:
          type: object
          description: >-
            Optional additional details about the error, such as validation
            failures or field-specific issues
          additionalProperties: true
    Pagination:
      type: object
      description: Cursor-based pagination metadata
      required:
        - limit
        - hasMore
      properties:
        limit:
          type: integer
          description: Maximum number of results to return per page
        nextCursor:
          type: string
          nullable: true
          description: >-
            Cursor for fetching the next page of results in your next request
            (`null` if there are no more results)
        hasMore:
          type: boolean
          description: Whether there are more results after this page
    LanguageENUM:
      type: string
      description: Language used in the resource (BCP 47 format)
      enum:
        - en-US
        - es-US
  parameters:
    LimitParam:
      name: limit
      in: query
      required: false
      description: Maximum number of results to return
      schema:
        type: integer
        minimum: 1
        maximum: 1000
        default: 100
    CursorParam:
      name: cursor
      in: query
      required: false
      description: >-
        Pagination cursor obtained from the `nextCursor` field in a previous
        response (not needed for the first page)
      schema:
        type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication

````