Steps
In Flashduty
You can obtain an integration push URL through either of the following two methods:Using Dedicated Integration
When you don’t need to route alert events to different collaboration spaces, this method is preferred as it’s simpler.Using Shared Integration
When you need to route alert events to different collaboration spaces based on the alert event’s Payload information, this method is preferred.I. Request Description
Request Method
POST, Content-Type:“application/json”
Request Parameters:
Response
Data:
Error:
Code:
II. Request Example
Request:
III. Field Mapping and Value Mapping
If your system’s JSON format cannot directly match the standard Payload structure above, you can configure field mapping (field_mapping) and value mapping (value_mapping) in the integration settings to let Flashduty automatically convert any JSON format into standard alert events.
Field mapping (field_mapping)
Use{{variable.path}} syntax to reference fields from the original JSON and map them to target fields of the standard alert event.
Supported target fields:
Variable syntax:
- Use
.to separate path levels, e.g.{{data.severity}}references a nested field - When the entire value is a single variable (e.g.
"{{tags}}"), the original data type is preserved (object, array, etc.) - When a variable is mixed with other text (e.g.
"{{host}} - {{check}}"), variables are converted to strings for concatenation
- Wildcard expansion:
"labels": "{{tags}}"— expands all children of thetagsobject as labels - Per-label mapping:
"labels": {"env": "{{tags.env}}", "host": "{{hostname}}"}— maps each label individually
Value mapping (value_mapping)
When your source system’s field values differ from Flashduty’s standard (e.g. usinghigh instead of Critical for severity), configure value mapping for automatic conversion.
Value mapping is configured per field path, with each path containing a source value → target value mapping table.
Example:
"severity": "high" in the original JSON is first extracted via field mapping, then converted to Critical via value mapping, and finally written to the event_status field.
IV. Best Practices
- Send events to Flashduty when alert status changes
- When an alert recovers, send an event with status Ok to close the alert. Otherwise, the alert will remain open. If your alert system doesn’t have recovery events, we recommend manually sending recovery events
- Labels are event descriptions, and label content should be as rich as possible (specified when sending, or generated through enrichment rules), such as:
- Alert source, like host, cluster, check, or metric
- Alert ownership information, like team, owner
- Alert category information, like class (api, db, net)