Restore a soft-deleted vault
POST
/vaults/{id}/restore
const url = 'https://api.engram.page/vaults/example/restore';const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.engram.page/vaults/example/restore \ --header 'Authorization: Bearer <token>'Restores a soft-deleted vault back to active within its 30-day window. Returns 402 when restoring would exceed the plan’s vault cap and 404 when no such vault exists.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”id
required
string
Vault UUID
Responses
Section titled “Responses”Restored
Media typeapplication/json
VaultResponse
object
vault
required
Vault
object
attachment_count
integer
created_at
string format: date-time
deleted_at
string format: date-time
encrypted
Always true — vaults are encrypted at rest.
boolean
id
required
string format: uuid
is_default
boolean
name
required
string
note_count
integer
populated
True once the vault holds a note other than the seeded welcome note (the moment the vault_populated event fires).
boolean
purge_at
When a soft-deleted vault is hard-purged (deleted_at + 30d).
string format: date-time
slug
string
Example generated
{ "vault": { "attachment_count": 1, "created_at": "2026-04-15T12:00:00Z", "deleted_at": "2026-04-15T12:00:00Z", "encrypted": true, "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "is_default": true, "name": "example", "note_count": 1, "populated": true, "purge_at": "2026-04-15T12:00:00Z", "slug": "example" }}Vault cap reached
The credential may not restore this vault: this needs write access to it
Media typeapplication/json
MessageError
object
error
required
string
Example
{ "error": "not found"}No such vault, or one the credential cannot reach (the two look the same)
Media typeapplication/json
MessageError
object
error
required
string
Example
{ "error": "not found"}