---
title: "List vaults"
method: GET
path: "/api/vaults"
tags: ["Vaults"]
---

# List vaults

`GET /api/vaults`

## Request

- Base URL: `https://api.engram.page`
- URL: `https://api.engram.page/api/vaults`
- Auth: HTTP bearer

Lists the user's active vaults with their note and attachment counts. Pass `deleted=true` to list soft-deleted vaults instead, or `user_code` to also report `user_code_valid` and a `suggested_vault_name` for an in-progress device link.

## Query parameters

- `deleted` string
- `user_code` string

## Response `200`

Vaults

- VaultsResponse
  - `access_levels` boolean: True when this server supports per-vault access levels and `mcp:read` on OAuth grants and API keys. Absent on servers that predate them.
  - `suggested_device_name` string, nullable: Present only when a `user_code` query param is supplied. The name the plugin suggested for its device (hostname or platform), for a default connection label. Null when the code is invalid or the plugin sent none.
  - `suggested_vault_name` string, nullable: Present only when a `user_code` query param is supplied (device-link flow). May be null for a perfectly valid code — check `user_code_valid`, not this.
  - `user_code_valid` boolean: Present only when a `user_code` query param is supplied. True when the code is real, still pending, unexpired, and claimable by the calling user. This is the validity signal; a null `suggested_vault_name` is not.
  - `vaults` Vault[], required
    - `attachment_count` integer
    - `created_at` string, date-time, nullable
    - `deleted_at` string, date-time, nullable
    - `encrypted` boolean: Always true — vaults are encrypted at rest.
    - `id` string, uuid, required
    - `is_default` boolean
    - `name` string, required
    - `note_count` integer
    - `populated` boolean: True once the vault holds a note other than the seeded welcome note (the moment the `vault_populated` event fires).
    - `purge_at` string, date-time, nullable: When a soft-deleted vault is hard-purged (deleted_at + 30d).
    - `slug` string, nullable

---

[API](https://skmtc.dev/engram/apis/engram-api.md) · [All operations](https://skmtc.dev/engram/apis/engram-api/llms.txt) · [OpenAPI document](https://skmtc.dev/engram/apis/engram-api/revisions/8c4c2eec29dc?raw)
