---
title: "Read a decrypted note"
method: GET
path: "/v1/vault/notes/{id}"
tags: ["Vault"]
---

# Read a decrypted note

`GET /v1/vault/notes/{id}`

## Request

- Base URL: `http://localhost:9998`
- URL: `http://localhost:9998/v1/vault/notes/{id}`
- Auth: HTTP bearer

Opens the note's encrypted blob under the notes-subkey and returns the
decrypted content. Note and folder id namespaces are split: a folder id
here is 404 `note_not_found`.

## Path parameters

- `id` string, required

## Response `200`

The decrypted note

- WireVaultNote: A single decrypted note. `content` is markdown plus RTE entities.
  - `id` string, required
  - `path` string, required
  - `content` string, required
  - `updatedAt` integer, required: Epoch milliseconds of the last write.

## Other responses

- `400`: Invalid request
- `404`: Resource not found
- `423`: The vault is locked (no VMK loaded). Unlock natively in ToolPiper — there is no unlock route. The body is the standard nested error envelope with type `vault_locked`.
- `503`: Vault service unavailable

---

[API](https://skmtc.dev/modelpiper/apis/toolpiper-api.md) · [All operations](https://skmtc.dev/modelpiper/apis/toolpiper-api/llms.txt) · [OpenAPI document](https://skmtc.dev/modelpiper/apis/toolpiper-api/revisions/6722bf56385c?raw)
