Skip to main content
GET
Secrets are stored as ciphertext plus plaintext metadata (name, type, description). Listing returns metadata only. Creating, updating, and deleting are admin-only; reading is available to identity-scoped keys with vault:read for the secrets they were granted.

Secret Object

string
Secret identifier (vsec_ prefix). Client-generated on create.
string
login, api_key, or other.
string
Human-readable label (plaintext). Secrets can be addressed by name in the SDK/CLI.
string | null
Optional note (plaintext).
string
Base64 AES-256-GCM ciphertext of the JSON payload. Returned by single-secret reads and unlock, not by list.
string
ISO 8601 creation timestamp.
string
ISO 8601 update timestamp.

Payload Shapes (plaintext, before encryption)

  • login — username, email, password, service_url, and optional totp ({ secret, algorithm, digits, period }).
  • api_key — key, optional service_url.
  • other — data.

Operations

An identity-scoped caller that requests a secret it was not granted receives 404, so the API does not reveal that the secret exists.