cronping

Integrations

Configure alert notifications for Slack, Discord, Telegram, Teams, PagerDuty, Gotify, ntfy, Pushover, Pushbullet, webhooks, and email.

Overview

Integrations are notification channels that receive alerts when a heartbeat goes Down or Recovers. Set them up once in your organization dashboard, then assign them to individual heartbeats.

Navigate to Dashboard → Integrations to manage your integrations.


Email

Email alerts are the simplest integration. Every heartbeat has Email alerts enabled by default — you will receive a message at your account email whenever a heartbeat goes down or recovers.

You can disable email alerts per heartbeat in the heartbeat settings.


Webhook

The Webhook integration sends a POST request to any URL when an alert fires.

Setup:

  1. Go to Integrations → Add Integration → Webhook
  2. Enter your endpoint URL
  3. Cronping will POST a JSON payload to that URL on every alert

Payload example:

{
  "heartbeat": "Daily DB Backup",
  "status": "down",
  "lastPingAt": "2024-01-15T02:58:00.000Z",
  "checkedAt": "2024-01-15T03:05:00.000Z"
}

Use webhooks to integrate with any system that accepts HTTP requests — Zapier, Make, n8n, custom internal tooling, etc.


Slack

Connect Slack via OAuth to receive alerts in any channel.

Setup:

  1. Go to Integrations → Add Integration → Slack
  2. Click Connect with Slack
  3. Authorize Cronping in the OAuth dialog and choose a channel
  4. Save the integration

Requires a Slack workspace where you have permission to install apps.

What you'll receive:

Cronping sends a formatted message with the heartbeat name, status, and last ping time.


Discord

Connect Discord via OAuth to post alerts to any channel in your server.

Setup:

  1. Go to Integrations → Add Integration → Discord
  2. Click Connect with Discord
  3. Select the target server and channel in the OAuth dialog
  4. Save the integration

You must have the Manage Webhooks permission in the target Discord server.


Telegram

Connect a Telegram bot to receive alerts in any chat, group, or channel.

Setup:

  1. Go to Integrations → Add Integration → Telegram
  2. Click Connect with Telegram
  3. A setup link is generated — click Open in Telegram
  4. Start the bot in your desired chat
  5. The integration activates automatically

The Telegram integration uses a bot created by Cronping. You do not need your own bot token.


Microsoft Teams

Send alerts to a Teams channel using an incoming webhook.

Setup:

  1. In Microsoft Teams, go to the channel → ConnectorsIncoming Webhook
  2. Configure and copy the webhook URL
  3. In Cronping, go to Integrations → Add Integration → Microsoft Teams
  4. Paste the webhook URL and save

PagerDuty

Trigger PagerDuty incidents when a heartbeat goes down.

Setup:

  1. In PagerDuty, create a new Events API v2 integration on a service
  2. Copy the Integration Key
  3. In Cronping, go to Integrations → Add Integration → PagerDuty
  4. Paste the integration key and save

Cronping sends a trigger event when a heartbeat goes Down and a resolve event when it recovers.


Prometheus / Grafana

Export heartbeat metrics in Prometheus format to integrate with your existing monitoring stack.

Unlike the integrations above (which push alerts), the Prometheus integration works by scraping — Prometheus periodically fetches metrics from Cronping's /api/v1/metrics endpoint.

This enables:

  • Custom Grafana dashboards with heartbeat status
  • Alertmanager rules correlated with your infrastructure metrics
  • Full integration with your existing observability stack

See the Prometheus & Grafana guide for full setup instructions, metric reference, and Alertmanager examples.


Gotify

Gotify is a self-hosted push notification server. Perfect for privacy-focused setups and homelabs.

Setup:

  1. Go to Integrations → Add Integration → Gotify
  2. Enter your Gotify server URL (e.g. https://gotify.example.com)
  3. Paste an Application Token from Gotify → Apps
  4. Set a default priority (1–10). Down alerts automatically use priority ≥8

Gotify messages are rendered in Markdown for rich formatting.

Gotify is 100% self-hosted — no data leaves your infrastructure.


ntfy

ntfy is a simple HTTP-based pub/sub notification service. Use the public instance at ntfy.sh or self-host your own.

Setup:

  1. Go to Integrations → Add Integration → ntfy
  2. Enter the server URL (defaults to https://ntfy.sh)
  3. Choose a topic name — use a unique, hard-to-guess name for security
  4. Select a default priority

Down alerts automatically use urgent priority. Recovery alerts use default.

Subscribe to your topic in the ntfy app (iOS/Android) or via ntfy subscribe <topic> in the CLI.


Pushover

Pushover sends push notifications to iOS and Android devices with configurable priority levels.

Setup:

  1. Create an application in the Pushover dashboard to get an API Token
  2. Copy your User Key from the Pushover dashboard
  3. In Cronping, go to Integrations → Add Integration → Pushover
  4. Paste both keys and configure the default priority

Priority levels:

  • Lowest (-2): No notification at all
  • Low (-1): Quiet notification (no sound)
  • Normal (0): Standard notification
  • High (1): Bypasses quiet hours — used automatically for Down alerts

Pushover requires a one-time purchase of the mobile app (~$5). Emergency priority (level 2) is not supported.


Pushbullet

Pushbullet sends notifications to your browser extensions and mobile devices.

Setup:

  1. Go to Integrations → Add Integration → Pushbullet
  2. Paste your Access Token from Pushbullet → Settings → Access Tokens
  3. Optionally set a Channel Tag to publish to a specific channel

Assigning integrations to heartbeats

By default, email alerts are enabled for every heartbeat. To use additional integrations:

  1. Open the heartbeat settings
  2. Under Notifications, select which integrations should receive alerts for this heartbeat
  3. Save

One integration can be shared across multiple heartbeats.


Log context in alerts

All notification channels automatically include a log excerpt when an alert fires. If your job sends its output as the request body of a POST ping, that output will appear in the alert message — across email, Slack, Discord, Teams, webhooks, PagerDuty, Telegram, Incident.io, Gotify, ntfy, Pushover, and Pushbullet.

This is especially useful when combined with /fail pings or Alert Rules, where the log excerpt shows exactly what went wrong without needing to check the server.

On this page