HTTP API
Create a key on the Dashboard. Send X-API-Key on vault routes (CRUD, POST /search, import/export) — same scope as a JWT. Use HTTPS in production and treat keys like passwords.
Base URL
Use your deployment origin (example: https://your-host:4156). Prefer versioned paths under /v1.
Semantic search
curl -s -X POST "https://YOUR_HOST/v1/search" \
-H "Content-Type: application/json" \
-H "X-API-Key: sv_YOUR_KEY_HERE" \
-d '{"query":"wifi password","limit":10}'
Optional: "category":"personal" in the JSON body to filter.
Get record by key
curl -s "https://YOUR_HOST/v1/records/my_record_key" \ -H "X-API-Key: sv_YOUR_KEY_HERE"
Create or upsert a record
curl -s -X POST "https://YOUR_HOST/v1/records" \
-H "Content-Type: application/json" \
-H "X-API-Key: sv_YOUR_KEY_HERE" \
-d '{"key":"wifi","description":"home wifi","value":"secret","category":"personal","tags":[]}'
JWT (browser / account)
Sign up, login, the dashboard, and API key management use Authorization: Bearer <JWT>. Interactive schema: OpenAPI at /docs.