Browse articles

Database backup

# Email and webhook notifications, and alerts

Get notified about failed or successful backups, servers going down, and storage invoices by email or JSON webhook, and manage alerts from the Settings page.

2 min readUpdated: October 22, 2026[Baca dalam Bahasa Indonesia](/docs/notifikasi)

Without a notification channel, backup results are only visible in the dashboard. Add an email address or a webhook so your team knows right away when a backup fails or a server stops sending heartbeats.

## 1\. Add a notification channel

1.  Open **Settings → Notifications**.
2.  Choose the **Type**: **Email** or **Webhook (JSON POST)**.
3.  Enter the **Email address** (for example `ops@company.com`) or the **Webhook URL** (it must start with `http://` or `https://`).
4.  Click **Add**.

Email and webhook notifications are available from the Pro plan. You can add several channels; every event is sent to all active channels.

## 2\. When notifications are sent

Event

Event code

Notes

Backup failed

`backup_failed`

when **Notify on failure** is enabled on the job (on by default)

Backup succeeded

`backup_success`

when **Notify on success** is enabled on the job

Server down

`server_down`

no heartbeat for 3 minutes

Server back online

`server_up`

first heartbeat after being down

Storage invoice issued

`usage_invoice_issued`

monthly usage invoice

Storage suspended

`storage_suspended`

invoice past its due date

Storage invoice paid

`usage_invoice_paid`

payment received

The per-job notification options are in the **Notifications & summary** step of the job wizard or in the job settings.

## 3\. Webhook format

The webhook receives a `POST` with `Content-Type: application/json`. Example for a failed backup:

```json
{
  "event": "backup_failed",
  "subject": "[Backup FAILED] Daily shop backup di db-01",
  "text": "Job: Daily shop backup\nServer: db-01 (db-01.internal)\nStatus: failed\n...",
  "data": { "run_id": "<uuid>", "job_id": "<uuid>", "server_id": "<uuid>", "bytes": 0, "error": "<error message>" },
  "sent_at": "2026-10-22T02:00:41Z"
}
```

Use `event` to route messages and `data` to link to the run or server. Your endpoint must answer with a 2xx status within 10 seconds. Failed deliveries are logged on our side and are not retried, so make sure the endpoint stays available.

For Slack, Discord, or other chat tools with their own message format, point the webhook at an intermediary (for example a serverless function) that forwards the `subject` and `text` fields.

## 4\. Alerts

**Settings → Alerts** records important events such as a server going down and failed backups; they also appear under the notification icon in the header. A server-down alert closes automatically when the server sends a heartbeat again. Other alerts can be marked **resolve** once handled.

## Troubleshooting

-   **"notifikasi email & webhook tersedia mulai paket Pro"**: upgrade under **Subscription & billing**.
-   **"webhook harus URL http(s)"**: enter the full URL including its scheme.
-   **Emails do not arrive**: check the spam folder and the spelling of the address, and make sure **Notify on failure/success** is enabled on the job.
-   **The webhook receives nothing**: make sure the URL is reachable from the internet and answers 2xx quickly.

## See also

-   [Scheduling backups](/docs/jadwal-backup)
-   [Agent offline](/help/agent-offline)

Still need help?

Open a support ticket from the dashboard and our team will reply as soon as possible.

[Help center](/en/help)[Open a ticket](/app/support/new)