webhouse.appwebhouse.appdocs

Scheduled snapshots of content, settings, and site config — optionally synced to cloud storage. Restore with one click.

Where it is

Settings → Backup (/admin/settings?tab=backup).

What gets backed up

  • All documents (content/*/.json)
  • Site config (cms.config.ts)
  • Site settings (_data/site-config.json)
  • Agent configs (_data/agents/)
  • Brand voice + locale caches
  • Team + invites (_data/team.json)
  • Event log (last 500 entries)
  • Generated schema (webhouse-schema.json)

Not backed up (they live elsewhere):

  • Uploaded media binaries — treat these as a separate backup problem (cloud sync your uploads/ dir)
  • Secrets — redacted to REDACTED_BY_BACKUP and re-entered on restore
  • Build output (dist/, .next/)

Schedule

FieldRecommended
FrequencyDaily
TimeOff-hours for your team (03:00 local works well)
Retention30 days — generous without bloating storage

The scheduler runs in-process (instrumentation-node.ts); no external cron required. Uses the site's configured timezone.

Storage

Two options:

Local (default) — backups sit in _data/backups/YYYY-MM-DD/ as zip archives. Simple, fast, no external dependencies. Lose the disk and you lose the backups.

Cloud — choose one:

  • Cloudflare R2 — S3-compatible, cheap egress. Set endpoint, access key, secret, bucket
  • S3-compatible — any S3-compatible object store (AWS, MinIO, Backblaze B2)
  • pCloud — via WebDAV. Useful for non-technical operators who already have pCloud

Cloud backups keep the local copy AND sync a copy to the remote. If the local disk dies, restore from the cloud via Import backup.

Manual backup

The Backup now button snapshots immediately. Takes 1–3 seconds for most sites. Useful before a risky deploy or a schema change.

Restore

Click any backup in the history list → Restore. The CMS:

  1. Creates a safety backup of the current state (tagged pre-restore)
  2. Extracts the chosen archive
  3. Writes content + settings + agents to disk
  4. Prompts you to re-enter redacted secrets
  5. Reloads the admin

Or use Import backup to restore a backup from a different site or environment.

Alerts

When a scheduled backup fails, the CMS fires an email alert to the notification recipients (Settings → Email) and pushes the build_failed topic to mobile. Silent failures would be bad, so this is on by default.

Tags:BackupMigration
Previous
Deploy settings
Next
Automation settings
JSON API →Edit on GitHub →