---
title: "Read a project spec"
method: GET
path: "/api/v1/projects/{projectId}/spec"
tags: ["Projects"]
---

# Read a project spec

`GET /api/v1/projects/{projectId}/spec`

## Request

- Base URL: `https://app.khotan.com`
- URL: `https://app.khotan.com/api/v1/projects/{projectId}/spec`
- Auth: one of:
  - HTTP bearer
  - API key in header `x-api-key`

Returns the project's spec tree limited to the requested altitude: high renders the goal, medium adds phases, low adds items joined with their mirrored tracker issues. Defaults to high.

## Path parameters

- `projectId` string, required

## Query parameters

- `altitude` 'high' | 'medium' | 'low': Depth cap over the one spec tree: high renders the goal, medium adds phases, low adds items and their mirrored tracker issues.

## Response `200`

The rendered spec.

- object
  - `projectId` string, required
  - `altitude` string, required
  - `revision` number, required
  - `root` Schema0, required (unresolved $ref)
  - `issuesByPhaseId` object, required

## Other responses

- `401`: Authentication is missing or invalid.
- `404`: The resource was not found.
- `429`: Too many requests; retry after the indicated delay.

---

[API](https://skmtc.dev/khotan/apis/khotan-api.md) - [All operations](https://skmtc.dev/khotan/apis/khotan-api/llms.txt) - [OpenAPI document](https://skmtc.dev/khotan/apis/khotan-api/revisions/90b512a53e42?raw)
