version is 4, with status, alerts, fingerprint, labels, annotations, startsAt, endsAt, plus an extra notifier field). The Flashduty Prometheus integration accepts this format, so no separate Chronosphere integration is needed: create a Prometheus integration in Flashduty and paste its push URL into Chronosphere.
In Flashduty On-call
Get an integration push URL in either of the two ways below. Choose the Prometheus integration type in both, not Chronosphere.
Use a dedicated integration
- In the Flashduty console, go to Channels and open a channel
- Go to Settings → Integrations → Dedicated integrations and click Add an integration
- Select Prometheus and click Save
- Open the generated integration card and copy the Push URL, in the form
https://api.flashcat.cloud/event/push/alert/prometheus?integration_key=<integration key>
Use a shared integration
- In the Flashduty console, go to Integration Center → Alert Events
- Select Prometheus and enter an integration name
- Configure the default route and select a channel; you can add more rules under Routes after creation
- Click Save and copy the generated Push URL
Configure in Chronosphere
1
Create a webhook notifier
- In Chronosphere, go to Alerting → Notifiers and click Create notifier
- Enter a name and select Webhook as the type
- In URL, enter the full push URL copied above, including
?integration_key=... - Select Notify when resolved; otherwise Flashduty receives no recovery notifications
- Click Save
skip_resolved controls whether resolved notifications are skipped and must be false; in the Terraform chronosphere_webhook_alert_notifier resource, send_resolved controls it and defaults to true. See the Chronosphere documentation Create a webhook notifier.2
Use the notifier in a notification policy
In a Chronosphere notification policy, add this notifier to the route for the relevant severities (warn, critical); only then do alerts from your monitors reach Flashduty.
3
Verify
Trigger an alert from a monitor and confirm Flashduty receives an active alert; after the alert resolves, confirm the original alert closes in Flashduty.
Field mapping
One notification can carry several alerts, and Flashduty handles each one separately (up to 100 per request).
Recovery and deduplication
- When Chronosphere sends a notification with
statusset toresolved, Flashduty closes the alert with the samefingerprint. - If the notifier does not send resolved notifications, Flashduty never receives a recovery request and the alert stays active. In that case enable auto-resolve timeout on the channel.
- Chronosphere webhook requests carry the
Chronosphere-Webhook-TimestampandChronosphere-Webhook-Signature-V1headers, signed with HMAC-SHA256. Flashduty neither requires nor verifies the signature. - Chronosphere’s documentation does not say whether the webhook notifier has a test send. After the first setup, verify with a real alert that both the trigger and the recovery show up in Flashduty.
Troubleshooting
- Flashduty returns
Invalid parameters: the push URL is incomplete and lacksintegration_key, or the integration type is not Prometheus - Alerts do not recover: confirm the notifier has Notify when resolved selected (
send_resolvedistruein Terraform,skip_resolvedisfalsein Chronoctl) and that the resolved notification’sfingerprintmatches the trigger - No alerts arrive: confirm a notification policy routes the relevant severities to this notifier, and that Chronosphere can reach
api.flashcat.cloud