Missing incident_key from event payload when sent through Webhook V3


Currently, my setup involves:

  1. An integration sending an event to a PagerDuty service
  2. A user acknowledges that event in PagerDuty
  3. PagerDuty send an updated status back to the integration

When I use Webhook V2, the incident_key that my integration receives in step 3 would just be the dedup_key that my integration sent to PagerDuty in step 1. This is with Incidents and Alerts turned on.

However, now that I am using Webhook V3, PagerDuty is not sending an incident_key unless I explicitly turn off Alerts and Alert Grouping, which I would prefer not to do.

Is there any way using Webhook V3 that I would be able to mimic the functionality of Webhook V2 without turning off alerts? Or is turning off alerts the only way to receive a non-null incident_key in the payload that PagerDuty sends to my integration?

Do you see it in the incident trigger webhook v3 event?


“incident_key”: “d3640fbd41094207a1c11e58e46b1662”

For any other webhook v3 event type, you’ll either need to store and use the incident_key from the initial trigger or make an API request back to PD to get it using the incident ID PXXXXXX or QXXXXXXXXXXXXX to get it

No, I do not see the incident_key in the incident trigger webhook v3 event. The only way that I have been able to receive an incident_key is if I create the event in PagerDuty, not if an event is sent through an integration.

Is this a confirmation that incident_key is disabled for all webhook v3 event types that aren’t triggers? In which case, the only way to receive an incident_key would be to disable alerts or make an API request back to PD?

Thank you for your time and I appreciate your help!

I would consider this a bug if we don’t provide this in at least the trigger webhook v3 event.

That makes sense. Would that be a bug on the integration’s side or on PagerDuty’s side? Just trying to see how I can resolve or escalate this issue.

Making an API request using the incident ID yields a null incident_key as well, so it seems like incident is being saved without an incident_key somehow? Disabling alerts might be the only way to get around this.

My team solved the issue! For some reason, PagerDuty leaves the incident_key blank and saves it as an alert_key for an alert they don’t give you any access to through the event payload. The way around this is to keep track of the incident id they send you and make an API request for all alerts associated with the incident, then scan through and find the one that you need.

Is this issue resolved? Because I am still getting null incident_key for V3 webhook, is getting incident_key as null expected behaviour?

Nope, don’t think PagerDuty has done anything about this. Current work around is still to make an API request for all alerts associated with the current event and then scan through them for the incident_key.

It definitely seems like a bug, but nothing has been done about it, so maybe it’s intended functionality.