---
title: "Get Captain digest"
method: GET
path: "/api/v1/captains/{captainId}/digest"
tags: ["captains"]
---

# Get Captain digest

`GET /api/v1/captains/{captainId}/digest`

## Request

- Base URL: `https://api.capy.ai`
- URL: `https://api.capy.ai/api/v1/captains/{captainId}/digest`
- Auth: HTTP bearer

## Path parameters

- `captainId` string, required

## Response `200`

CaptainDigest

- CaptainDigestEncoded
  - `path` 'DIGEST.md' | 'ONGOING.md' | 'NOTES.md', nullable, required: The file the digest was read from: `DIGEST.md`, else `ONGOING.md`, else the Captain's `NOTES.md`. Null before the Captain has written any of them.
  - `markdown` string, nullable, required: The file's text. Null when there is no file, or when the file is binary or larger than 64 KiB.
  - `updatedAt` string, nullable, required: When the Captain's drive last changed.

## Other responses

- `401`: capy/Unauthorized
- `403`: capy/Forbidden
- `404`: capy/ThreadNotFound
- `429`: capy/RateLimited

## Changes

- **2026-10-21** `c3356d0715a6`: 2 breaking, 1 info
  - the response's body type changed from `object` to no type for status `403`
  - removed the required property `_tag` from the response with the `403` status
  - added `#/components/schemas/capy_ForbiddenEncoded, #/components/schemas/capy_ForbiddenEncoded` to the response body `anyOf` list for the response status `403`
- **2026-10-03** `6fc5ac8fd97b`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/capy/apis/capy-api/changes/api/v1/captains/:captainId/digest/get.md)

---

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