Backup files to S3
with tags.
tagbackup uploads, downloads, lists, and deletes files on any S3-compatible bucket — identified and filtered by simple human-readable tags.
Tag-based organisation
Files are stored with tags baked into the key. Filter by tag, combine with AND/OR/NOT expressions, no external index needed.
Any S3-compatible store
Works with AWS S3, Cloudflare R2, MinIO, Backblaze B2, and any provider that speaks the S3 API.
No telemetry
All API calls go directly between tagbackup and your bucket. Nothing dials home. Credentials stay on your machine.
Scriptable
Non-interactive mode, JSON output, meaningful exit codes — designed to live comfortably inside cron jobs and shell scripts.
Flexible credentials
Static keys, AWS profiles, IAM roles, or environment variables. Credential resolution order is predictable and documented.
Atomic operations
Downloads write to a temp file and atomically rename on success. An interrupted download never leaves a half-written file.
The classic use case
A cron job on your server dumps a database and pushes it with a tag. Your laptop pulls the latest whenever you need it. 30-day retention enforced automatically.
dump.sqltagbackup push uploads it tagged nightly,prodtagbackup delete --older-than=30d prunes old copiestagbackup pull --latest whenever needed