Documentation Index
Fetch the complete documentation index at: https://docs.prudra.dev/llms.txt
Use this file to discover all available pages before exploring further.
Vaults overview
A vault is a scoped container attached to a single payment. WhenvaultMiddleware runs on a request with a valid payment, it creates a vault and attaches it to req.vault. Your handler writes results into the vault and seals it when done. The caller retrieves results by reading vault contents.
Vault states
| State | Writes allowed | TTL countdown | Caller reads |
|---|---|---|---|
active | Yes | Running | Yes |
sealed | No | Running | Yes |
persisted | No | Paused | Yes |
expired | No | — | No |
Using vaultMiddleware
vaultMiddleware creates the vault automatically. Add it after payMiddleware in your middleware chain:
Vault object methods
| Method | Description |
|---|---|
vault.id | Vault ID (vlt_...) |
vault.addDocument(data, label) | Store a JSON document |
vault.addFile(buffer, name, mimeType) | Store a binary file |
vault.emit(type, payload) | Emit a real-time SSE event |
vault.seal(summary) | Close the vault for writes |
vault.persist() | Extend vault beyond its TTL |
vault.getManifest() | Retrieve all documents and file URLs |
Sub-pages
Create a vault
Vault creation options and manual creation without middleware.
Access control
Vault access tokens for sharing read access.
Seal a vault
Mark work complete and close a vault for writes.
Persist a vault
Extend vault lifetime beyond its TTL.
Query vaults
List and filter vault records.
TTL and expiry
How TTL works and how to extend it.
Delete a vault
Explicitly delete a vault and free quota.
Vault quota
Monitor active and persisted vault counts against plan limits.
Related
- Events — real-time SSE streams per vault
- Files — binary file storage
- Accept a payment — full middleware chain

