Documentation
Quickstart
Register a database, run a verification, read the badge.
1. Register a database
Point us at your backup artifact (read-only). We never touch production.
curl -s -H "Authorization: Bearer <key>" -X POST https://api.restoreproof.example/v1/databases \
-H "Content-Type: application/json" \
-d '{"name":"prod","engine":"postgres","backup_path":"/backups/prod.dump"}'
# {"id":"db_0001","name":"prod","engine":"postgres",...}2. Run a verification
Restores into a sandbox, runs the check suite, records the verdict. The sandbox is destroyed after the run.
curl -s -H "Authorization: Bearer <key>" -X POST https://api.restoreproof.example/v1/databases/db_0001/verify
# {"id":"ver_0001","verdict":"green",
# "checks":[{"check":"artifact_exists","passed":true,"detail":"..."},...]}3. Embed the badge
Public endpoint — drop it in your README or status page.
<img src="https://api.restoreproof.example/v1/badge/db_0001" alt="backup status">
4. Watch the alert queue
Red verdicts queue an alert. Acknowledge with your name when handled.
curl -s -H "Authorization: Bearer <key>" https://api.restoreproof.example/v1/alerts
curl -s -H "Authorization: Bearer <key>" -X POST https://api.restoreproof.example/v1/alerts/alr_0001/ack \
-H "Content-Type: application/json" -d '{"by":"don+restoreproof@lifeofmorr.com"}'Honest limits
- The simulated driver verifies manifest-based artifacts; real pg_restore/mysql restores are a per-customer setup step (the scaffold raises an honest error until configured).
- RestoreProof verifies backups; it does not take them — bring your pg_dump, WAL archives, or snapshots.
- Alert delivery in v1 is an operator-pulled queue; connect your own notifier for Slack/email.
- We never claim guaranteed recovery or zero data loss. Verification logs hold metadata only — never row data.