PagerDuty Integration

The PagerDuty integration lets you create PagerDuty alerts/incidents for website downtime and related incidents detected by Uptimeify.

It uses PagerDuty Events API v2 and sends events to:

  • https://events.pagerduty.com/v2/enqueue

Setup

Step 1: Create an Events API v2 integration in PagerDuty

You configure this on the PagerDuty service that should receive incidents:

  1. In PagerDuty, go to Services
  2. Select the target service
  3. Open IntegrationsAdd integration
  4. Choose Events API v2 as integration type
  5. Copy the Integration Key (this is the routing_key)

The Integration Key is what routes events to the correct PagerDuty service.

Step 2: Configure it in Uptimeify

  1. In Uptimeify, go to Admin → Settings → Integrations
  2. Click PagerDuty
  3. Paste the Routing Key (Integration Key / routing_key)
  4. Click Save Integration

In the PagerDuty setup modal, click Send test event.

Where to verify:

  • In PagerDuty, open the same Service
  • Check Alerts / Incidents (depending on your PagerDuty UI and configuration)

What Uptimeify sends

Uptimeify sends alert events (not change events) using Events API v2.

Event actions

  • Trigger: sent for incidents like DOWN (and other non-recovery events)
  • Resolve: sent when the website recovers

A stable dedup_key is used per incident, so PagerDuty can correlate trigger + resolve correctly.

Severity mapping

  • critical for downtime-type alerts
  • warning for warning-type events (if applicable)

Payload details

Events include key context in payload.custom_details, such as:

  • website name + URL
  • incident type/status
  • status code / response time (when available)
  • expected response error (when available)
  • screenshot URL (when available)
  • customer info and custom fields (when available)

Troubleshooting

“PagerDuty routing_key is required”

You didn’t paste the Integration Key in the setup modal. Copy it from:

PagerDuty Service → Integrations → Events API v2 → Integration Key

400 “Bad Request”

Most commonly:

  • routing key is invalid (typo, whitespace)
  • wrong integration type (must be Events API v2)
  • payload rejected (rare)

Use the Send test event button first and verify in PagerDuty that the target service receives it.

Resolve doesn’t close the alert

PagerDuty will only apply resolve to an open alert with the same dedup_key and the same routing_key as the original trigger.

If you changed the routing key between trigger and resolve, PagerDuty will drop the resolve.

Docs