Quickstart
Five minutes, three steps. You need a backpulse account (sign up at the portal) and a machine that runs something on a schedule.
1. Install backupctl
Section titled “1. Install backupctl”backupctl is a single static binary with zero non-stdlib dependencies:
go build -o backupctl ./cmd/backupctlsudo install -m 0755 backupctl /usr/local/bin/backupctl2. Create a check
Section titled “2. Create a check”Sign in to the dashboard, create a check, and copy its ping key. The dashboard
shows the exact ping URL — it looks like
https://backpulse.aniicrite.dev/ping/<key>.
export BACKPULSE_URL=https://backpulse.aniicrite.devexport BACKPULSE_PING_KEY='<check-key>'3. Wrap one job
Section titled “3. Wrap one job”Prefix any scheduled command. backupctl reports start, runs the command,
verifies the result, then reports success or failure:
backupctl run --max-age 26h -- restic backup /srv/dataIf the backup fails verification — no fresh snapshot, empty artifact — the run exits non-zero and backpulse alerts. A monitoring outage never fails your backup: ping failures only warn.
What next
Section titled “What next”- Backing up with restic or Borg? Read Monitor restic and Borg backups.
- Running on Kubernetes? Read Monitor Kubernetes CronJobs.
- Dumping Postgres? Read Nightly pg_dump.
- Want the mental model? Read How it works.