---
title: "Slim learning-paths catalog index (spine only)"
method: GET
path: "/api/learning/paths/index"
tags: ["Education"]
---

# Slim learning-paths catalog index (spine only)

`GET /api/learning/paths/index`

## Request

- Base URL: `https://www.oxfordledge.com` (the document declares no server; this is the origin it was published from)
- URL: `https://www.oxfordledge.com/api/learning/paths/index`
- Auth: none declared

Catalog spine for mobile first-paint. 47× smaller than the full
/api/learning/paths. Drawer-open uses /api/learning/paths/{path_id}
for the per-path full payload.

## Headers

- `If-None-Match` string, nullable

## Response `200`

Successful Response

- LearningPathsIndexResponse: `GET /api/learning/paths/index` response. `paths` is REQUIRED — the handler always returns a list (empty on load-failure, mirrors LearningPathsResponse). `version` is Optional because the JSON's top-level `version` key is recent and earlier snapshots predate it; ETag derivation tolerates None by hashing the payload itself as a fallback.
  - `paths` LearningPathSpine[], required
    - `id` string, required
    - `title` string, required
    - `description` string, nullable
    - `level` string, nullable
    - `prerequisites` string[], nullable
    - `masteryThreshold` number, nullable: ADVISORY path/module metadata only (#193/LR-16, 2026-07-27): set by 4 of ~435 modules and read by NOTHING - the real mastery gate is the concept-level EMA in learn/mastery/layer.py (see /methodology/mastery-threshold). Kept on the wire for shape stability; never treat it as a gating threshold.
    - `modules` LearningModuleSpine[], required
      - `id` string, required
      - `title` string, required
      - `type` string, nullable
      - `slug` string, nullable
      - `hasQuiz` boolean
      - `prereqs` string[], nullable
  - `version` string, nullable

## Other responses

- `422`: Validation Error
- `500`: Internal Server Error

---

[API](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api.md) · [All operations](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/llms.txt) · [OpenAPI document](https://skmtc.dev/oxfordledge/apis/oxford-ledge-api/revisions/e832a1260f0b?raw)
