Skip to main content
Configure incident Webhook. When specific operations occur on incidents (such as trigger or close), the system makes an HTTP callback to your configured address. The callback content includes the incident’s latest key information, allowing integration with your custom tools.

Event types

Flashduty currently supports the following event types and may add more later.

Push description

Request method

POST, Content-Type:“application/json”

Request payload:

Person:Responder:AssignedTo:LinkItem:IncidentShort:Image:Incident:

Event details (event_detail)

The structure of event_detail varies with event_type; the field definitions for each event type are listed below. For event types not listed (i_r_impact, i_r_rc, i_r_rsltn), event_detail is always an empty object {}. i_new: i_assign (all AssignedTo fields, plus): i_a_rspd: i_snooze: i_wake: i_ack: i_unack: i_storm: i_custom: i_rslv: i_reopen: i_merge: i_comm: i_r_title, i_r_desc: i_r_severity: i_r_field: i_wi_created: i_wi_assignees: i_wi_completed: i_wi_converted:

Request response

HTTP status code 200 indicates successful push.

Request example

Configuration guide

Go to Integration Center → Webhook → Add or edit an Incident Webhook integration.

Basic settings

Enter the integration name and description for easy management.

Webhook settings

Disabling TLS certificate verification may expose you to man-in-the-middle attacks. Only disable it in test environments or when using self-signed certificates.

Custom request body

By default, the system pushes the complete JSON data following the Payload structure described above. If your receiver requires a specific data format, you can use a custom request body to reorganize the push content. Use {{field.path}} syntax to reference any field from the default Payload. The system replaces variables with actual values at push time. Variable syntax:
  • Use . to separate path levels, for example, {{incident.title}} references the incident title
  • Array index access is supported, for example, {{incident.responders.0.email}} references the first responder’s email
  • When the entire value is a single variable (for example, "{{incident.labels}}"), Flashduty keeps the original data type (object, array, number, and so on)
  • When a variable is mixed with other text (for example, "Incident: {{incident.title}}"), Flashduty converts the variable to a string and concatenates it
Example: Transform the default Payload into a custom format for an internal system:
If a variable path does not exist in the default Payload, the system keeps the original {{...}} text without replacement. First check the actual default Payload through invocation history to confirm available field paths.

Value mapping (value_mapping)

In the custom request body, you may need to convert Flashduty field values to the format expected by the receiving system. Value mapping automatically transforms values during variable resolution. You configure value mapping per field path, with each path containing a source value → target value mapping table. Example: Convert severity and progress to custom values for the receiving system:
Used with the following custom request body:
When the incident severity is Critical, the severity field in the push result will be P0. Flashduty sends values that match no mapping as they are.

Invocation history

Incident Webhook provides a complete invocation history, helping you troubleshoot push delivery and debug callback interfaces.

View invocation history

Go to the Incident Webhook integration detail page and switch to the Invocation History tab.

History record fields

View invocation details

Click View Details on a record to see the complete request and response information:
  • Request: Includes Endpoint, Request Headers, and Request Payload
  • Response: On success, shows Response Headers and Response Body; on failure, shows Error Message

FAQ

  1. Is there a response timeout?
    • Your service must respond within 2 seconds; Flashduty treats a slower response as a failure
  2. Will pushes continue after failure?
Retries for specific network errors, max 1 retries:
  • context deadline exceeded (excluding awaiting headers)
  • i/o timeout
  • eof
  1. How to ensure push order?
    • Flashduty pushes events for the same incident in chronological order, but retries can deliver them out of order
    • Services can filter based on event_time; after receiving a later event, they can drop earlier ones. Each push carries the latest complete information, so occasional event loss is tolerable
  2. Trusted IP whitelist for push source?
    • 47.94.95.118, 123.56.8.183, 47.94.193.81, and 1.13.19.96 (SaaS only; in a private deployment, pushes originate from your own environment’s egress address — check with your infrastructure team)
    • We may update this list, so check it regularly