This article explains how to create a webhook notification channel so PulseAPI can send JSON payloads to any URL when incidents are created or resolved. Use webhooks to integrate with PagerDuty, Opsgenie, custom incident systems, or any service that accepts HTTP POST requests.
Prerequisites: Webhook notifications require a Starter, Professional, or Team plan.
Step 1: Prepare Your Webhook URL
Before setting up the channel in PulseAPI, have your target URL ready. This is the URL that will receive the HTTP POST request.
Examples:
- A PagerDuty Events API v2 endpoint
- A custom API endpoint you control
- An Opsgenie webhook URL
- A Make (formerly Integromat) or Zapier webhook trigger
The endpoint must accept POST requests and return an HTTP 2xx response. PulseAPI considers any non-2xx response a delivery failure.
Step 2: Create the Webhook Channel
- In the left sidebar, click Alerts.
- Click Notification Channels.
- Click New Channel.
- Select Webhook as the channel type.
- Enter a Name for the channel (e.g., "PagerDuty Webhook").
- Enter your Webhook URL.
- Leave Active toggled on.
- Click Create Channel.
Step 3: Test the Webhook
- On the channel list, find your new webhook channel.
- Click Send Test Notification.
- PulseAPI sends a test payload to your URL. Check your target system to confirm it was received and processed correctly.
If the test fails, confirm your URL is publicly accessible and returns 2xx.
Step 4: Assign to an Alert Rule
- Go to Alerts → Alert Rules.
- Open or create an alert rule.
- In the Notification Channels field, select your webhook channel.
- Save the rule.
Webhook Payload Format
PulseAPI sends a JSON payload. Here's an example incident creation payload:
{
"event": "incident.created",
"incident": {
"id": 1234,
"title": "Production API — Status code 503",
"status": "open",
"severity": "critical",
"started_at": "2026-04-16T14:23:00Z"
},
"monitor": {
"id": 42,
"name": "Production API",
"url": "https://api.yourapp.com/health"
},
"team": {
"id": 7,
"name": "Acme Corp"
}
}
For incident resolution, the event field is "incident.resolved" and additional fields include resolved_at and duration_seconds.
For the full field reference, see Webhook Payload Reference.
Related Articles
Still have questions? Contact support.
Related Articles
Setting Up Slack Notifications
This article explains how to connect PulseAPI to Slack so your team receives alert notifications in a Slack channel. Prerequisites: Slack notifications require a Starter, Professional, or Team plan. You'll need permission to add apps to your Slack ...
Webhook Payload Reference
This reference documents the JSON payload PulseAPI sends to webhook notification channels when incidents are created or resolved. Incident Created Payload { "event": "incident.created", "triggered_at": "2026-04-16T14:23:00Z", "incident": { "id": ...
Setting Up Email Notifications
This article explains how to create an email notification channel so PulseAPI can send you alert emails when incidents are created or resolved. Step 1: Open Notification Channels In the left sidebar, click Alerts. Click Notification Channels. Click ...
Key Concepts: Endpoints, Checks, Incidents, and Alerts
This article explains the four core building blocks of PulseAPI and how they work together. Understanding these concepts makes every other part of the product easier to use. Endpoint (Monitor) An endpoint is a URL you want PulseAPI to watch. In ...
Testing a Notification Channel
Before relying on a notification channel to deliver real alerts, send a test notification to confirm it's working. This article explains how. How to Send a Test Notification In the left sidebar, click Alerts. Click Notification Channels. Find the ...