Core Concepts
Understanding these concepts will help you use jokowipe.id effectively.
Backup
A backup is a point-in-time snapshot of a database. jokowipe.id creates backups by running native database tools (pg_dump, mysqldump, mongodump, etc.) on the agent machine and uploading the result to your configured storage target.
Each backup record contains:
- Backup ID — Unique identifier (e.g.,
bkp-a1b2c3d4) - Status —
pending,running,success,failed,expired - Database URL — The source database (credentials are never stored on our servers)
- Storage path — Where the backup file lives in your storage target
- Size — Compressed size of the backup file
- Duration — How long the backup took
- Checksum — SHA-256 hash for integrity verification
- Metadata — Tags, retention policy, schedule ID (if triggered by a schedule)
Schedule
A schedule defines when automatic backups run. jokowipe.id supports:
| Type | Example | Description |
|---|---|---|
| Cron | 0 2 * * * | Run at 2:00 AM every day |
| Interval | every 6h | Run every 6 hours |
| One-shot | (via API) | Run once at a specific time |
Schedules are associated with:
- An agent (where to run the backup)
- A database (what to back up)
- A storage target (where to store it)
- A retention policy (how long to keep backups)
Storage Target
A storage target is a cloud storage bucket or local path where backup files are stored. jokowipe.id supports:
- AWS S3
- Google Cloud Storage (GCS)
- Cloudflare R2
- Azure Blob Storage
- MinIO (self-hosted S3-compatible)
- Local filesystem (agent-local, not recommended for production)
jokowipe.id uses a BYOS (Bring Your Own Storage) model. Your backup files are uploaded directly from the agent to your storage bucket. The jokowipe.id API never receives or stores your backup data — only metadata (backup size, duration, checksum, storage path).
Agent
The agent is a lightweight binary that runs on your database server or a machine with database access. It:
- Polls the jokowipe.id API for scheduled backup jobs
- Executes the backup command locally
- Uploads the backup file to your storage target
- Reports status and metadata back to the API
Agents authenticate using agent tokens — short-lived JWTs signed by the API. They communicate outbound-only over HTTPS, so no inbound firewall rules are needed.
Policy
A retention policy defines how long backup files are kept. You can set:
- Count-based: Keep the last N backups
- Age-based: Keep backups for N days
- Combined: Keep at least N backups and at most N days
When a backup expires, the agent (on its next run) or the API (via a scheduled cleanup job) deletes the file from your storage target.
Organization
An organization is the top-level entity in jokowipe.id. All agents, storage targets, schedules, and backups belong to an organization.
Team
Teams are groups of users within an organization with specific roles:
| Role | Permissions |
|---|---|
| Owner | Full access, billing, delete org |
| Admin | Create/delete all resources, manage members |
| Member | Create/manage backups and schedules |
| Viewer | Read-only access to backup history |
Anomaly
An anomaly is an unusual backup pattern detected by the AI system. Examples:
- Backup size suddenly drops by >50% (data loss risk)
- Backup duration doubles (performance degradation)
- Backup failed multiple times in a row
- No backup completed within the expected window
Anomalies trigger alerts via the configured notification channels.
Restore
A restore operation downloads a backup file and applies it to a target database. jokowipe.id supports:
- Download restore — Agent downloads and restores the backup to a local database
- Remote restore — Restore to a different database instance
- Point-in-time restore — Browse backup history and restore to any snapshot
Webhook
A webhook is an HTTP callback that jokowipe.id calls when specific events occur (backup success, failure, anomaly detected, etc.). You can use webhooks to integrate with external systems.