Skip to main content

Notifications

AI Admin Panel sends notifications for important events like deploy completions, health alerts, and quota warnings. Configure one or more notification channels to stay informed.

Supported Channels

ChannelDescriptionConfiguration Required
EmailSMTP-based email notificationsSMTP server credentials
SlackMessages to a Slack channel via webhookSlack webhook URL
DiscordMessages to a Discord channel via webhookDiscord webhook URL
TelegramMessages to a Telegram chat via botBot token + chat ID
WebhookHTTP POST to any URLEndpoint URL

Configuration

Navigate to Settings > Notifications to configure channels.

Email

FieldDescription
SMTP HostSMTP server hostname (e.g., smtp.gmail.com)
SMTP PortSMTP port (587 for TLS, 465 for SSL)
UsernameSMTP authentication username
PasswordSMTP authentication password
From AddressSender email address
To AddressDefault recipient (can be overridden per trigger)

Test the configuration with the Send Test button.

Slack

  1. Create a Slack webhook: go to your Slack workspace's Apps > Incoming Webhooks
  2. Create a webhook for the desired channel
  3. Paste the webhook URL in the panel
FieldDescription
Webhook URLSlack incoming webhook URL
ChannelOverride channel (optional, uses webhook default)

Discord

  1. In your Discord server, go to Channel Settings > Integrations > Webhooks
  2. Create a webhook and copy the URL
  3. Paste the webhook URL in the panel
FieldDescription
Webhook URLDiscord webhook URL

Telegram

  1. Create a bot via @BotFather on Telegram
  2. Get the bot token
  3. Add the bot to your group/channel and get the chat ID
FieldDescription
Bot TokenTelegram bot API token
Chat IDTarget chat/group/channel ID

Webhook

Send raw HTTP POST requests to any endpoint. Useful for custom integrations, PagerDuty, Opsgenie, or your own automation.

FieldDescription
URLEndpoint URL
HeadersCustom headers (e.g., Authorization: Bearer token)
SecretShared secret for HMAC signature verification

The webhook payload is a JSON object:

{
"event": "deploy.success",
"service": "my-app",
"customer": "Acme Corp",
"timestamp": "2026-03-29T14:30:00Z",
"message": "Service my-app deployed successfully",
"details": {
"image": "myapp:latest",
"duration_seconds": 45
}
}

If a secret is configured, the panel includes an X-Signature-256 header with an HMAC-SHA256 signature of the payload body.

Notification Triggers

Configure which events trigger notifications:

EventDescriptionDefault
deploy.successService deployed successfullyOn
deploy.failureService deployment failedOn
service.health.downService health check failingOn
service.health.recoveredService health recoveredOn
service.stoppedService stopped (manual or crash)Off
service.startedService startedOff
backup.successBackup completed successfullyOff
backup.failureBackup failedOn
quota.warningCustomer approaching quota limit (80%)On
quota.exceededCustomer exceeded quotaOn
ssl.expiringSSL certificate expiring within 7 daysOn

Per-Channel Triggers

Each notification channel can subscribe to different triggers. For example:

  • Slack: All deploy events and health alerts
  • Email: Only failures and quota warnings
  • Webhook: Everything (for logging/audit)

Notification Preferences

Admin Notifications

Admins receive notifications for all customers by default. Configure admin notification preferences in Settings > Notifications > Admin Preferences.

Customer Notifications

If customer portal access is enabled, customers can configure their own notification preferences for their services. Customer notification options are limited to events related to their own services.

Testing

Each configured channel has a Send Test button that sends a sample notification to verify the configuration is working correctly. Always test after configuring a new channel.