Nodium Screenshot API -- Notifications
Configure alerts for credit usage, error spikes, and system events to stay informed about your account activity.
Table of Contents
- Overview
- Notification Types
- Email Notifications
- Webhook Notifications
- Configuring Thresholds
- Notification Payload Format
- Slack Integration
- Managing Preferences
Overview
Nodium can send automatic notifications when important events occur on your account. Notifications help you:
- Avoid unexpected credit exhaustion by receiving warnings before you run out.
- Detect problems early when error rates spike.
- Stay informed about system changes such as IP range updates or scheduled maintenance.
- Track team activity across your organization.
Notifications are configured per organization in the Nodium Dashboard under Settings > Notifications.
Notification Types
| Type | Trigger | Default |
|---|---|---|
| Credit warning | Credits drop below a configured threshold | Enabled at 80% |
| Credits exhausted | All credits consumed for the billing period | Always enabled |
| Error rate spike | Error rate exceeds a configured threshold | Disabled |
| Daily usage summary | Sent once per day with the previous day's stats | Disabled |
| IP range update | Nodium's IP ranges are about to change | Enabled |
| Scheduled maintenance | Upcoming maintenance windows | Enabled |
| API key expiration | An API key is expiring within 7 days | Enabled |
| Team activity | Members added, removed, or roles changed | Disabled |
Email Notifications
Email is the default notification channel. Notifications are sent to the email address associated with the account owner. Additional recipients can be added in the dashboard.
Adding recipients
- Go to Settings > Notifications > Email Recipients.
- Enter the email address and select which notification types to send.
- The recipient receives a confirmation email and must opt in.
Email format
Notification emails include:
- A clear subject line identifying the event (e.g., "Nodium: Credit usage at 80%")
- A summary of the event with key metrics
- A direct link to the relevant dashboard page
- Unsubscribe link in the footer
Note: Critical notifications (credits exhausted, scheduled maintenance) cannot be fully disabled. They are always sent to the account owner.
Webhook Notifications
For programmatic integrations, configure a webhook URL to receive event payloads via HTTP POST.
Setting up a webhook
- Go to Settings > Notifications > Webhooks.
- Enter your endpoint URL (must be HTTPS).
- Select the event types to subscribe to.
- Save and test the webhook with the Send Test button.
Webhook delivery
- Nodium sends a
POSTrequest with a JSON body to your endpoint. - Your endpoint must respond with a
2xxstatus code within 10 seconds. - Failed deliveries are retried up to 5 times with exponential backoff (1m, 5m, 15m, 1h, 4h).
- After 5 consecutive failures, the webhook is automatically disabled and an email is sent to the account owner.
Signature verification
Every webhook request includes an HMAC-SHA256 signature in the X-Nodium-Signature header. Verify this signature to ensure the request originated from Nodium.
const crypto = require("crypto");
function verifyWebhookSignature(payload, signature, secret) {
const expected = crypto
.createHmac("sha256", secret)
.update(payload)
.digest("hex");
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}
// In your webhook handler:
app.post("/webhook/nodium", (req, res) => {
const signature = req.headers["x-nodium-signature"];
const isValid = verifyWebhookSignature(
JSON.stringify(req.body),
signature,
process.env.NODIUM_WEBHOOK_SECRET
);
if (!isValid) {
return res.status(401).send("Invalid signature");
}
// Process the event
console.log("Event:", req.body.event);
res.status(200).send("OK");
});Your webhook signing secret is displayed when you create the webhook endpoint in the dashboard.
Configuring Thresholds
Customize when notifications fire by adjusting thresholds in Settings > Notifications > Thresholds.
Credit warning threshold
Set the percentage of credits consumed that triggers a warning:
| Setting | Value | Description |
|---|---|---|
credit_warning_percent | 80 | Alert when 80% of credits are used (default) |
credit_warning_percent | 50 | Alert earlier at 50% usage |
credit_warning_percent | 90 | Alert only when nearly exhausted |
You can configure multiple thresholds. For example, receive a notification at 50%, 80%, and 95%.
Error rate threshold
Set the error rate percentage over a rolling 1-hour window:
| Setting | Value | Description |
|---|---|---|
error_rate_percent | 5 | Alert when more than 5% of requests fail (default) |
error_rate_percent | 1 | Alert on low error rates |
error_rate_min_requests | 50 | Minimum requests in the window before alerting (avoids noise on low volume) |
Notification Payload Format
All webhook notifications share a common envelope format:
{
"event": "credit_warning",
"timestamp": "2026-03-05T14:30:00Z",
"organization_id": "org_abc123",
"data": {
"credits_used": 20000,
"credits_remaining": 5000,
"credits_total": 25000,
"percent_used": 80,
"period_end": "2026-03-31T23:59:59Z"
}
}Event-specific data fields
| Event | Key data Fields |
|---|---|
credit_warning | credits_used, credits_remaining, credits_total, percent_used, period_end |
credits_exhausted | credits_used, credits_total, period_end, overage_enabled |
error_rate_spike | error_rate, threshold, total_requests, failed_requests, window_minutes, top_errors |
ip_ranges_updated | effective_date, added, removed, ip_ranges_url |
maintenance_scheduled | start_time, end_time, description, affected_regions |
api_key_expiring | key_id, key_name, expires_at |
Slack Integration
Send notifications directly to a Slack channel using an incoming webhook URL.
Setup
- Create a Slack incoming webhook at api.slack.com/messaging/webhooks.
- Copy the webhook URL (e.g.,
https://hooks.slack.com/services/T00/B00/xxxxx). - In the Nodium Dashboard, go to Settings > Notifications > Integrations.
- Select Slack, paste your webhook URL, and choose which events to forward.
- Click Test to send a sample notification to your channel.
Message format
Slack messages are formatted with rich blocks including:
- Event type as a bold header
- Key metrics in a structured layout
- A direct link to the Nodium dashboard for the relevant section
- Timestamp of the event
Tip: Create a dedicated #nodium-alerts channel in Slack and configure the webhook to post there. This keeps alert noise out of your team's main channels.
Managing Preferences
Dashboard
All notification settings are managed in Settings > Notifications in the Nodium Dashboard. From there you can:
- Enable or disable each notification type
- Add email recipients and webhook endpoints
- Adjust thresholds for credit warnings and error rate alerts
- Configure Slack integration
- View notification delivery history and retry failed deliveries
Per-organization settings
If you belong to multiple organizations, notification preferences are scoped per organization. Switch between organizations using the organization selector in the dashboard header.
Notification frequency
To avoid alert fatigue, Nodium applies the following rate limits:
| Notification | Maximum Frequency |
|---|---|
| Credit warning | Once per threshold per billing period |
| Credits exhausted | Once per billing period |
| Error rate spike | Once per hour |
| Daily summary | Once per day (sent at 08:00 UTC) |
| IP range update | Per event (typically rare) |
Next Steps
- Credits -- Understand credit costs and plan allowances
- Usage API -- Query usage programmatically
- Organizations & Roles -- Manage team access and permissions