> ## 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.

# Search academic standards

> Searches for StandardsFrameworkItems using either semantic search or exact statement code match across all standards frameworks.

This endpoint supports two mutually exclusive search modes:

- **Semantic search** (`query`): Full-text semantic search against the standard's description. Results are ranked by relevance and include a `score` reflecting vector similarity.
- **Code search** (`statementCode`): Exact statement code match (e.g., "3.NF.A.1"). Case-insensitive, no partial matching. All results carry a `score` of 1.0.

**Exactly one of `query` or `statementCode` must be provided.** Providing both or neither returns a 400 error.

Results can be narrowed further using the optional filters and support cursor-based pagination.

Use this endpoint when you need to:
- Find academic standards relevant to a concept or learning goal (semantic search)
- Look up an academic standard by its exact statement code
- Find all standards frameworks that include a specific statement code
- Filter search results by grade level, subject, or statement type

**Note:** Not all academic standards have statement codes - some organizational groupings may have null codes and won't appear in code search results.

**Related topics:**
- [Understanding statement codes](/knowledge-graph/entity-and-relationship-reference/academic-standards#standardsframeworkitem)




## OpenAPI

````yaml /api-reference/knowledge-graph-api/openapi.yaml get /academic-standards/search
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

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

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

    - **Relationships**: Hierarchical and semantic connections between
    standards, learning components, and frameworks


    **Learn more:**

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

    - [Academic Standards
    Dataset](/knowledge-graph/entity-and-relationship-reference/academic-standards)

    - [Learning Components
    Dataset](/knowledge-graph/entity-and-relationship-reference/learning-components)

    - [Quick Start Guide](/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 and course operations
  - name: Hierarchy
    description: Hierarchical navigation operations
  - name: Learning components
    description: Learning component operations
  - name: Learning progressions
    description: Learning progression and prerequisite relationships
  - name: Search
    description: Search and discovery operations
  - name: Standards crosswalks
    description: Standards crosswalk operations
  - name: Standards frameworks
    description: Standards frameworks operations
paths:
  /academic-standards/search:
    get:
      tags:
        - Academic standards
        - Search
      summary: Search academic standards
      description: >
        Searches for StandardsFrameworkItems using either semantic search or
        exact statement code match across all standards frameworks.


        This endpoint supports two mutually exclusive search modes:


        - **Semantic search** (`query`): Full-text semantic search against the
        standard's description. Results are ranked by relevance and include a
        `score` reflecting vector similarity.

        - **Code search** (`statementCode`): Exact statement code match (e.g.,
        "3.NF.A.1"). Case-insensitive, no partial matching. All results carry a
        `score` of 1.0.


        **Exactly one of `query` or `statementCode` must be provided.**
        Providing both or neither returns a 400 error.


        Results can be narrowed further using the optional filters and support
        cursor-based pagination.


        Use this endpoint when you need to:

        - Find academic standards relevant to a concept or learning goal
        (semantic search)

        - Look up an academic standard by its exact statement code

        - Find all standards frameworks that include a specific statement code

        - Filter search results by grade level, subject, or statement type


        **Note:** Not all academic standards have statement codes - some
        organizational groupings may have null codes and won't appear in code
        search results.


        **Related topics:**

        - [Understanding statement
        codes](/knowledge-graph/entity-and-relationship-reference/academic-standards#standardsframeworkitem)
      operationId: searchAcademicStandards
      parameters:
        - name: query
          in: query
          required: false
          description: >-
            Free-text query for semantic search against academic standard
            descriptions. Results are ranked by relevance score. Mutually
            exclusive with `statementCode`.
          schema:
            type: string
            maxLength: 500
        - name: statementCode
          in: query
          required: false
          description: >-
            The exact statement code to search for. Case-insensitive exact match
            only (e.g., "3.NF.A.1" matches "3.nf.a.1"). Mutually exclusive with
            `query`.
          schema:
            type: string
            maxLength: 50
        - $ref: '#/components/parameters/GradeLevelParam'
        - name: academicSubject
          in: query
          required: false
          description: Filter results by academic subject area.
          schema:
            $ref: '#/components/schemas/AcademicSubjectENUM'
        - name: normalizedStatementType
          in: query
          required: false
          description: >-
            Filter results by normalized statement type. Use this to retrieve
            only instructional standards (exclude organizational groupings) or
            to separate different types of framework elements.
          schema:
            $ref: '#/components/schemas/NormalizedStatementTypeENUM'
        - name: jurisdiction
          in: query
          required: false
          description: Filter by jurisdiction (state/territory). Defaults to Multi-State.
          schema:
            $ref: '#/components/schemas/JurisdictionENUM'
            default: Multi-State
        - name: limit
          in: query
          required: false
          description: >-
            Maximum number of results to return. Default is 5. Maximum allowed
            is 50.
          schema:
            type: integer
            minimum: 1
            maximum: 50
            default: 5
      responses:
        '200':
          description: Successfully retrieved search results
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AcademicStandardSearchResult'
              example:
                - caseIdentifierUUID: fa29b90a-2795-4bf5-b6bc-3ac4a695e9e2
                  statementCode: 6.NS.B.4
                  description: >-
                    Find the greatest common factor of two whole numbers less
                    than or equal to 100 and the least common multiple of two
                    whole numbers less than or equal to 12.
                  jurisdiction: Washington, D.C.
                  author: 1EdTech
                  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.
                  score: 0.92
                - caseIdentifierUUID: 61b03523-d7cc-11e8-824f-0242ac160002
                  statementCode: 6.NS.B.4
                  description: >-
                    Find the greatest common factor of two whole numbers less
                    than or equal to 100 and the least common multiple of two
                    whole numbers less than or equal to 12.
                  jurisdiction: Maryland
                  author: 1EdTech
                  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.
                  score: 0.87
        '400':
          description: Bad request - exactly one of query or statementCode must be provided
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: ValidationError
                message: >-
                  Exactly one of query or statementCode must be provided.
                  Example: ?query=greatest+common+factor or
                  ?statementCode=3.NF.A.1
                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 'Alabama', 'Alaska', ..., or 'Multi-State'
                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 searching for academic
                  standards
                requestId: req_12345
components:
  parameters:
    GradeLevelParam:
      name: gradeLevel
      in: query
      required: false
      description: >-
        Filter by grade level. Can be specified multiple times to include
        multiple grades.
      schema:
        type: array
        items:
          $ref: '#/components/schemas/GradeLevelENUM'
      style: form
      explode: true
      example:
        - '9'
        - '10'
  schemas:
    AcademicSubjectENUM:
      type: string
      description: Academic subject area
      enum:
        - English Language Arts
        - Mathematics
        - Science
        - Social Studies
        - Other
    NormalizedStatementTypeENUM:
      type: string
      description: Normalized classification of a standards framework item
      enum:
        - Standard
        - Standard Grouping
        - Other
    JurisdictionENUM:
      type: string
      description: US state, territory, or multi-state designation
      enum:
        - Alabama
        - Alaska
        - Arizona
        - Arkansas
        - California
        - Colorado
        - Connecticut
        - Delaware
        - Florida
        - Georgia
        - Hawaii
        - Idaho
        - Illinois
        - Indiana
        - Iowa
        - Kansas
        - Kentucky
        - Louisiana
        - Maine
        - Maryland
        - Massachusetts
        - Michigan
        - Minnesota
        - Mississippi
        - Missouri
        - Montana
        - Nebraska
        - Nevada
        - New Hampshire
        - New Jersey
        - New Mexico
        - New York
        - North Carolina
        - North Dakota
        - Ohio
        - Oklahoma
        - Oregon
        - Pennsylvania
        - Rhode Island
        - South Carolina
        - South Dakota
        - Tennessee
        - Texas
        - Utah
        - Vermont
        - Virginia
        - Washington
        - Washington, D.C.
        - West Virginia
        - Wisconsin
        - Wyoming
        - Multi-State
    AcademicStandardSearchResult:
      description: >-
        A StandardsFrameworkItemSummary enriched with a relevance score from the
        search.
      allOf:
        - $ref: '#/components/schemas/StandardsFrameworkItemSummary'
        - type: object
          required:
            - score
          properties:
            score:
              type: number
              format: float
              minimum: 0
              maximum: 1
              description: >-
                Relevance score between 0 and 1. Higher values indicate stronger
                alignment with the search criteria. For semantic search, this
                reflects vector similarity. For exact code match, the score is
                always 1.0.
    Error:
      type: object
      description: Standard error response object returned for all error conditions
      required:
        - error
        - message
        - requestId
      properties:
        error:
          type: string
          description: >-
            A machine-readable error type identifier (e.g., ValidationError,
            NotFoundError, InternalServerError)
        message:
          type: string
          description: >-
            A human-readable error message that explains what went wrong and may
            include actionable guidance
        requestId:
          type: string
          description: >-
            A unique identifier for this request, useful for debugging and
            support
        details:
          type: object
          description: >-
            Optional additional details about the error, such as validation
            failures or field-specific issues
          additionalProperties: true
    GradeLevelENUM:
      type: string
      description: Educational grade level
      enum:
        - PK
        - K
        - '1'
        - '2'
        - '3'
        - '4'
        - '5'
        - '6'
        - '7'
        - '8'
        - '9'
        - '10'
        - '11'
        - '12'
    StandardsFrameworkItemSummary:
      type: object
      description: >
        A lightweight representation of a StandardsFrameworkItem containing only
        essential identifying information.


        This summary format is used in relationship endpoints (learning
        progressions, related standards) to keep responses fast and enable
        efficient graph traversal. To retrieve full details for a standard, use
        the GET /standards/{caseIdentifierUUID} endpoint.
      required:
        - caseIdentifierUUID
        - author
        - provider
        - license
        - attributionStatement
      properties:
        caseIdentifierUUID:
          type: string
          format: uuid
          description: >-
            A UUID referencing the item in the CASE Network published by
            1EdTech. Use this identifier to retrieve the full standard details
            via GET /standards/{caseIdentifierUUID}.
        statementCode:
          type: string
          nullable: true
          description: >-
            A short, human-readable code that uniquely identifies this standard
            within its framework context (e.g., "3.NF.A.1", "5.NF.A.1"). May be
            null for organizational groupings.
        description:
          type: string
          nullable: true
          description: >-
            The full text of the standard describing what students should know
            or be able to do
        jurisdiction:
          $ref: '#/components/schemas/JurisdictionENUM'
          description: >-
            The state, territory, or jurisdiction responsible for this standard
            (e.g., "Iowa", "California", "Multi-State")
        author:
          type: string
          description: >-
            The author or creator of this content, typically the organization
            that published the standards framework
        provider:
          type: string
          description: >-
            The service provider or organization that makes this data available
            in the knowledge graph
        license:
          type: string
          format: uri
          description: A URL to the license document that applies to this content
        attributionStatement:
          type: string
          description: >-
            A textual credit that acknowledges the source and creator of this
            work, as required by the CC BY 4.0 license. If you display or
            redistribute this standard, you must include this attribution
            statement to comply with the license terms.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        API key for authentication. Include your API key in the x-api-key header
        for all requests.

````