Skip to main content
Notifications allow you to receive alerts about backup events (start, success, warning, failure) through various channels like email, webhooks, Slack, Discord, and more.

List Notification Destinations

curl -X GET http://localhost:4096/api/v1/notifications/destinations \
  -H "Cookie: zerobyte.session=..."
Retrieve all configured notification destinations. Response:
destinations
array

Create Notification Destination

curl -X POST http://localhost:4096/api/v1/notifications/destinations \
  -H "Cookie: zerobyte.session=..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Slack Alerts",
    "config": {
      "type": "slack",
      "webhookUrl": "https://hooks.slack.com/services/YOUR/WEBHOOK/URL"
    }
  }'
Create a new notification destination. Request Body:
name
string
required
Destination name
config
object
required
Notification configuration (varies by type)Email:
  • type: “email”
  • to: Recipient email address(es)
  • smtpHost: SMTP server hostname
  • smtpPort: SMTP port
  • smtpUsername: SMTP username
  • smtpPassword: SMTP password
  • smtpSecure: Use TLS (boolean)
  • from: Sender email address
Webhook:
  • type: “webhook”
  • url: Webhook URL
  • method: HTTP method (“POST”, “PUT”)
  • headers: Custom headers (object)
Slack:
  • type: “slack”
  • webhookUrl: Slack webhook URL
Discord:
  • type: “discord”
  • webhookUrl: Discord webhook URL
Telegram:
  • type: “telegram”
  • botToken: Telegram bot token
  • chatId: Chat ID
Ntfy:
  • type: “ntfy”
  • serverUrl: Ntfy server URL
  • topic: Ntfy topic
  • token: Authentication token (optional)
Response: Returns the created destination object.

Get Notification Destination

curl -X GET http://localhost:4096/api/v1/notifications/destinations/{id} \
  -H "Cookie: zerobyte.session=..."
Get details for a specific notification destination. Parameters:
id
number
required
Destination ID
Response: Returns the destination object (same structure as list response).

Update Notification Destination

curl -X PATCH http://localhost:4096/api/v1/notifications/destinations/{id} \
  -H "Cookie: zerobyte.session=..." \
  -H "Content-Type: application/json" \
  -d '{
    "enabled": false
  }'
Update a notification destination. Parameters:
id
number
required
Destination ID
Request Body:
name
string
Updated name
enabled
boolean
Enable or disable destination
config
object
Updated configuration
Response: Returns the updated destination object.

Delete Notification Destination

curl -X DELETE http://localhost:4096/api/v1/notifications/destinations/{id} \
  -H "Cookie: zerobyte.session=..."
Delete a notification destination. Parameters:
id
number
required
Destination ID
Response:
message
string
Success message

Test Notification Destination

curl -X POST http://localhost:4096/api/v1/notifications/destinations/{id}/test \
  -H "Cookie: zerobyte.session=..."
Send a test notification to verify the destination is configured correctly. Parameters:
id
number
required
Destination ID
Response:
success
boolean
Whether test notification was sent successfully

Get Schedule Notifications

curl -X GET http://localhost:4096/api/v1/backups/{shortId}/notifications \
  -H "Cookie: zerobyte.session=..."
Get notification assignments for a backup schedule. Parameters:
shortId
string
required
Backup schedule short ID
Response:
assignments
array
Notification assignments

Update Schedule Notifications

curl -X PUT http://localhost:4096/api/v1/backups/{shortId}/notifications \
  -H "Cookie: zerobyte.session=..." \
  -H "Content-Type: application/json" \
  -d '{
    "assignments": [
      {
        "destinationId": 1,
        "notifyOnStart": false,
        "notifyOnSuccess": true,
        "notifyOnWarning": true,
        "notifyOnFailure": true
      }
    ]
  }'
Update notification assignments for a backup schedule. Parameters:
shortId
string
required
Backup schedule short ID
Request Body:
assignments
array
required
Notification assignments
Response: Returns the updated assignments array.

Build docs developers (and LLMs) love