In Flashduty On-call
You can get the integration push URL in either of the following ways.Use a dedicated integration
- In the Flashduty console, go to Channels and open a channel
- Select Configuration → Integrations → Private integration, then click Add integration
- Select Wormly and click Save
- Open the generated integration card and copy the Push URL
Use a shared integration
- In the Flashduty console, go to Integration Center → Alert Events
- Select Wormly and enter an integration name
- Configure the default route and select a channel. You can add more rules under Routing after creation
- Click Save and copy the generated Push URL
In Wormly
1
Create a webhook contact in Wormly
Where: Wormly › Contacts › Create New Contact
Click Save.
2
Add the contact to an alert group in Wormly
Where: Wormly › Alert Groups (the vendor’s webhook guide does not list this menu location; follow your UI)Edit the group used by the hosts you want to send, and add the new contact to the relevant escalation levels. One alert group can be used by several hosts. Wormly notifies every recipient that received the failure notification when the host recovers, so recovery needs no separate setup.
3
Verify the lifecycle
Where: Wormly › Contacts › the contact form › Send TestSend Test sends a failure notification whose content the vendor documentation does not describe. It only verifies connectivity; if it produces an alert in Flashduty, no recovery follows, so close it manually (see the FAQ below). Then make a monitored host genuinely fail (for example, temporarily point the monitor at a closed port) and confirm Flashduty receives an active alert; restore the target and confirm the alert recovers.
Wormly requires the receiving endpoint to be on a different server than the one being monitored, and times out after 5 seconds. The Flashduty push URL meets both requirements.
Payload
Wormly sends one JSON object per notification. Flashduty parses it directly, with no template to configure:
The alert title is the host name, or
Wormly host <hostid> when the name is empty. The request can be a JSON body, or a urlencoded or multipart form that carries the JSON in the wormlyalert field.
Alert key
Flashduty useshostid as the Alert Key. Wormly documents it as the unique ID of the host that triggered the alert. Failure, repeated escalation, and recovery notifications for one host carry the same hostid, so they land on the same alert. Different hosts produce different alerts even when they share a name. Changing the host name, escalation level, or sensors does not change the Alert Key.
If hostid is missing, Flashduty returns a parameter error because a recovery could not be matched to its alert.
Status and severity
Wormly notifications carry no severity.alertlevel is an escalation step, not a severity, so Flashduty treats every failure as Critical.
Requests whose
isrecovery is missing or is neither 0 nor 1 are rejected, so a request of unknown state never enters the wrong alert lifecycle.
FAQ
Does a continuing failure create multiple Flashduty alerts?
Does a continuing failure create multiple Flashduty alerts?
No. While a host stays down, each notification sent at an escalation level carries the same
hostid and merges into one alert. When several sensors of one host fail together, Wormly lists them in a single notification and Flashduty still creates one alert.Can I send Wormly's XML or Serialized PHP format?
Can I send Wormly's XML or Serialized PHP format?
No. Flashduty only parses the JSON format. Choose a JSON webhook type in Wormly.
Troubleshooting
- Wormly reports a failed push: confirm the URL is the full push URL and includes
integration_key - Flashduty returns a parameter error: confirm the webhook type is JSON and that
hostidandisrecoveryare present in the request - The alert does not recover: confirm the recovery notification goes to the same contact. Wormly notifies every recipient that received a failure notice when the host recovers