Dashboard

Backups

Scheduled backups

Back up your databases on a schedule or on demand, and see which backups you have.

HCode backs up your PostgreSQL and Redis databases on a schedule and stores the copies away from the server the database runs on. You can also take a backup whenever you want, and restore any complete backup.

Times on this page are South African time (SAST, UTC+2). Schedules run on that clock, and the Backups page shows backup times in it.

The schedule a new database gets

When you create a database on a plan that includes backups, HCode adds a schedule that backs it up daily at 02:00. The database's card on the Databases page then shows "Backups enabled" and when the last backup ran.

A Redis backup covers database 0 only. See Redis.

See your backups

Open your project and go to Backups. Each schedule is listed by the database it backs up, such as "Backup of shop-db", with whether it is active, when it runs (for example "Daily at 02:00") and when it last succeeded. You can also start from the database's card on the Databases page and click Manage backups.

Click View files & restore to list the backups the schedule has taken, newest first, with the time each was taken, its size and its status:

Status Meaning
Ready Complete. You can restore it.
Failed The backup didn't finish. It can't be restored.
Being deleted It has passed its retention and is being removed.

File names start with the time the backup was taken in UTC, such as 20261022T000000Z, so they read two hours behind the time shown under them.

Back up now

Click Back up now next to a schedule on the Backups page, or in Manage backups on the Databases page. The schedule shows "Backup running" until the backup finishes, then "Backup finished" or "The backup did not finish. Try again in a moment."

Each schedule runs one backup at a time. If one is already running you get "A backup is already running. Wait for it to finish."

A manual backup is kept under the same rules as the scheduled ones.

Add a schedule

  1. On the Backups page, click Add backup schedule.
  2. Set Backup type to Database and choose the Database.
  3. Choose a Schedule: Daily at 2:00 AM, Daily at 3:00 AM, Daily at 4:00 AM, Weekly on Sunday at 2:00 AM, or Monthly on the 1st at 2:00 AM.
  4. Click Add backup schedule.

Schedules can't be edited in the dashboard. To change when a database is backed up, add a schedule with the new time, then delete the old one. The backups the old schedule took are kept.

How long backups are kept

Your plan sets how many days backups are kept, and the Backups page states it: "Backups are retained for 14 days.", for example. Within that window HCode keeps the newest backup of each day. While a schedule is active, HCode also keeps its three most recent backups however old they are, so a database whose backups have been failing never loses its last good copies.

Older backups are deleted automatically. Backup files count toward your plan's storage. See Usage and limits.

Plans without backups

If your plan has no backups, the page says "Backups are disabled on your current plan." and the add button reads Backups unavailable. Plans and what they include are listed on the Subscription page.

While your organisation is suspended, scheduled backups are paused and Back up now is refused with "This account is suspended, so a backup cannot be started. Try again once the account is active." Scheduled backups start again once the account is active. See Suspended organisations.

Download a backup file

The dashboard doesn't download backups. Use the API with an API key:

  1. List the project's backup schedules with listBackupPolicies.
  2. List a schedule's backups with listBackupArtifacts.
  3. Download one with downloadBackupArtifact.

Only complete backups can be downloaded. A PostgreSQL backup is a gzipped pg_dump archive (.dump.gz), which you can unpack and load with pg_restore, or import into another HCode database as it is.

Delete a schedule

Click Delete schedule and confirm. Only owners and admins can do this; anyone else gets "Only an owner or admin can delete a backup. Ask one of them to do it."

Deleting a schedule stops new backups. The backups it already took are kept until their retention period ends, and HCode confirms how many, for example "Schedule deleted. 5 existing backups are kept." Until then the schedule stays on the Backups page as "Earlier backups of" followed by the database's name, marked "schedule deleted", and View files & restore still lists its backups. The three most recent are no longer kept past the retention period, so once the last one expires the entry disappears.

You can download those backups while they are kept. To restore one, add a new schedule for the database first: imports and restores need an active schedule on the database for their safety backup. See Restore a backup.