Skip to content

UptimeRobot

UptimeRobot’s webhook integration can send Pocketbell’s own request. Two integrations, one for down and one for up, make a down alert Critical and let the all-clear take its place.

This uses an API Source. Webhooks need a paid UptimeRobot plan.

  1. In the Pocketbell app, create a Source named UptimeRobot, choose API, and copy its key.

  2. In UptimeRobot, open Integrations, add a Webhook, and set:

    • Webhook URL: https://api.pocketbell.dev/v1/messages

    • POST value, sent as JSON:

      {
      "title": "*monitorFriendlyName* is down",
      "message": "*alertDetails*",
      "priority": "critical",
      "replace": "uptimerobot-*monitorID*",
      "tags": ["uptimerobot"],
      "url": "*monitorURL*",
      "url_title": "Open site"
      }
    • Custom headers: Authorization: Bearer pb_live_…, and Content-Type: application/json.

    • Events to notify about: Down only.

  3. Add a second webhook the same way, for Up only, with this body:

    {
    "title": "*monitorFriendlyName* is up",
    "message": "Back up.",
    "priority": "normal",
    "replace": "uptimerobot-*monitorID*",
    "tags": ["uptimerobot"]
    }
  4. Turn both on for the monitors that should alert you.

  • Down repeats every five minutes, for up to an hour, until you acknowledge it on any device.
  • Up carries the same replace key, so it takes the alert’s place and the repeats stop.
  • UptimeRobot drops every custom header if they add up to more than 4 KB or 10 headers, the key included, so keep it to these two.
  • A monitor name with a double quote in it breaks the JSON; leave quotes out of the names of monitors that use this.
  • Ping and port monitors have no web address, and a bare host name in url is refused. For those, make a separate pair of webhooks without the url and url_title lines.