Docs / Agent on-call
Alert sources
Alert sources are in early access.
An alert source is a secret URL that turns alerts from your other tools into Pulsefast incidents. Your team is paged through the channels you pick, repeats are grouped into one incident, and every incident gets a timeline.
#Create one
Under Incidents → Alert sources, add a source, name it after the tool ("Sentry", "Grafana") and pick the channels to page. You get a URL like https://pulsefast.io/in/in_…, shown once. Anyone with it can send alerts, so keep it secret; New URL replaces it if it leaks.
#Send alerts
POST JSON to the URL:
curl -X POST https://pulsefast.io/in/in_YOUR_TOKEN \
-H "Content-Type: application/json" \
-d '{"title": "Checkout errors spiking", "key": "checkout-5xx", "severity": "critical"}'
| Field | Notes |
|---|---|
title |
What's wrong. Shown in pages and on the incident. |
key |
Groups alerts: the same key while an incident is open adds to it. Defaults to the title. |
status |
firing (default) or resolved. |
severity |
critical (default), warning or info. |
details |
Anything: text or JSON. Kept on the incident as the raw alert. |
links |
[{"title": "Dashboard", "url": "https://…"}] |
Send an array to report several alerts at once (up to 100). The response lists what happened to each: opened, added (grouped into an open incident), reopened, resolved, or ignored (a resolve for nothing open).
#Grouping and flapping
Alerts with the same key from the same source belong to one incident while it's open. If an incident resolves and the same key fires again within 10 minutes, the incident reopens instead of a new one starting, so a flapping service doesn't page you over and over with new incidents. The same applies to Pulsefast's own monitors.
Your team is paged when an incident opens or reopens, and told when it resolves. Repeat alerts for an open incident are recorded on its timeline without paging again.
#Tools with their own format
Pick the tool when you create the source; the setup steps are shown with the URL.
| Tool | How it connects | Grouping and resolving |
|---|---|---|
| Prometheus Alertmanager | A webhook_configs receiver with send_resolved: true. |
By alert fingerprint; resolved alerts resolve the incident. Severity from the severity label. |
| Grafana | A Webhook contact point. | Same as Alertmanager (Grafana uses its format). |
| Sentry | An internal integration with Alert Rule Action on, subscribed to issue events, added to your alert rules. Paste its client secret to check signatures. | Issue alerts group by issue; resolving or ignoring the issue in Sentry resolves the incident. Metric alerts group by alert and resolve when Sentry says so. |
| Datadog | A Webhooks integration with the payload shown during setup; mention it in your monitors. | By alert ID; recovery resolves. |
| AWS CloudWatch | An SNS topic with an HTTPS subscription to the URL (Pulsefast confirms it automatically) as the alarm action for ALARM and OK. Messages must carry a valid SNS signature, so only Amazon can send them. | By alarm; OK resolves, INSUFFICIENT_DATA is ignored. |
#Limits
600 alerts a minute per source, and up to 256 KB per request.
View as Markdown · Something unclear? Tell us