PagerDuty

Connecting PagerDuty for on-call management

incident.io Engineering Team avatar
Written by incident.io Engineering Team
Updated over a week ago

In an incident, at the boundaries of your knowledge and need help to figure something out? We've all been there.

With incident.io, you can use /incident escalate to directly page users in Slack β€” no need to log in to PagerDuty, search around and find the right place!

You can also use the PagerDuty integration to attach related PagerDuty incidents, pull information onto your timeline, and even auto-create incidents from PagerDuty!


πŸ›  Setting Up

You can connect PagerDuty to incident.io in just a few clicks.

1️⃣ Go to Settings > Integrations

2️⃣ Press 'Install' next to PagerDuty.

3️⃣ Fetch your API key from PagerDuty

You'll need to create an API key by heading to your PagerDuty account, and navigating to Integrations > API Keys

❗ If you can't see the API Access Keys menu item, you probably don't have access to create API keys in PagerDuty.

Click Create an API Key

We do need write access, so leave the 'read-only key' box unchecked!

πŸ“‹ Copy the key to your clipboard.

4️⃣ Paste the API key from your clipboard into the incident.io modal

5️⃣ Choose your bot account

All escalations will originate from the email of the chosen account. This is unfortunately a limitation of the PagerDuty API. When you create an incident, it must always be associated with the email of a valid PagerDuty user, as bots (i.e., us) are not allowed to create incidents on their own.

If you'd rather not have incidents attached to a user's email, you could create a dedicated account in PagerDuty and connect that to incident.io. However, be aware PagerDuty will charge you for the extra seat.
​

image

Alright, you're all set up with PagerDuty! πŸŽ‰


πŸ”” Escalating an incident

Just head over to the incident's Slack channel and hit /incident escalate.

Who can I page?

  • An escalation policy: a way to notify on-call users about an incident that relates to a service or system, and have the right people notified at the right time.

  • Any user on PagerDuty: sometimes, you know that special someone that can help you out when you get stuck. Escalate to them directly, and bring them in to help.

  • Both the above at once! In the middle of a particularly gnarly incident? You can page multiple teams and individuals all at once πŸ˜…

Things to know πŸ’­

All escalations will originate from the email of the user that you selected when connecting PagerDuty to your incident.io account. This is unfortunately a limitation of the PagerDuty API. When you create an incident, it must always be associated with the email of a valid PagerDuty user, as bots (i.e., us) are not allowed to create incidents on their own.

If you'd rather not have incidents attached to a user's email, you could create a dedicated account in PagerDuty and connect that to incident.io. However, be aware PagerDuty will charge you for the extra seat.

We now support auto-creation of incidents from PagerDuty. Take a look

FAQ

When will incident.io automatically acknowledge the PagerDuty incident?

We auto-acknowledge incidents when:

  • Someone manually goes "Yes, that PD incident is related to this incident"

  • When a triage incident is accepted

Once triggered, we check:

  • If the PagerDuty incident has already been acknowledged, do nothing

  • If the actor doing the trigger action is not a human (e.g. a workflow), we do nothing

  • If the human was not paged by this escalation (or we can't match them to a PD user), we do nothing. In this case, we post a message with a button saying "want to acknowledge this?"

If all those conditions pass, we acknowledge the incident and add a note saying "Automatically acknowledged via incident.io", and link to the incident.
We then best-effort send a message to the user, saying "We've acknowledged PagerDuty incident … for you".

Can I control which services or escalation policies sync with incident.io?

Yes! For any given service, you can add incident-io-ignore anywhere within the description and we'll no longer pull this into our platform.

Similarly for an escalation policy you can add incident-io-ignore as a tag.

Did this answer your question?