Monitoring
PagerDuty Webhooks
Incident management platform. Receive events for incidents, alerts, and on-call changes.
Connecting PagerDuty to Hookbase
Create a source in Hookbase first — it gives you an ingest URL to paste into PagerDuty. Then:
- 1Go to PagerDuty → Integrations → Generic Webhooks (V3)
- 2Click "New Subscription" and paste your Hookbase ingest URL
- 3Select the event types and optional service filter
- 4Copy the signing secret and add it to your Hookbase source
Signature verification
PagerDuty signs its webhooks with HMAC-SHA256 in X-PagerDuty-Signature, and Hookbase has no verifier for that combination today. We would rather say so here than let a source report every event as verified while nothing was checked.
What you can do:
- Receive them on a
customsource with no signing secret. Hookbase still dedupes, retries, transforms, routes and replays them; it just does not vouch for the sender. - Set a signing secret anyway if PagerDuty can be configured to send a hex HMAC-SHA256 of the raw body in
X-Signature,X-Webhook-SignatureorX-Hub-Signature-256— that is the one scheme the custom verifier implements. - Verify downstream: the original headers travel with the event, so your own service or a transform can check the signature itself. The key is at PagerDuty → Integrations → Generic Webhooks → Webhook subscription → Secret.
- Narrow the blast radius with an IP allowlist and a hard-to-guess source slug.
PagerDuty event types
7 of the events people route most often. Hookbase accepts every event PagerDuty sends, whether or not it is listed here.
incident.triggered
An incident was triggered
incident.acknowledged
An incident was acknowledged
incident.resolved
An incident was resolved
incident.escalated
An incident was escalated
incident.reassigned
An incident was reassigned
service.created
A service was created
service.updated
A service was updated
What a PagerDuty webhook looks like
A incident.triggered payload. Hookbase stores the raw body exactly as it arrived, so this is also what you get back on a replay.
{
"event": {
"id": "evt_1234567890",
"event_type": "incident.triggered",
"resource_type": "incident",
"occurred_at": "2024-01-15T10:30:00Z",
"data": {
"id": "P1234567",
"type": "incident",
"title": "Database connection pool exhausted",
"status": "triggered",
"urgency": "high",
"service": {
"id": "PSVC123",
"summary": "API Service"
},
"assignees": [
{
"id": "PUSER123",
"summary": "Jane Oncall"
}
]
}
}
}Start receiving PagerDuty webhooks
Create a source, paste the URL into PagerDuty, and watch the first event arrive. The free tier includes 1,000 events a month.
Get Started Free