Slack Integration Guide

Slack is a powerful chat tool that can be used by organizations to tie various services into a single communications platform. Slack makes it easy to communicate with your team. This integration allows you to acknowledge and resolve your PagerDuty incidents from within Slack. This complements our Slack to PagerDuty integration guide, which allows you to trigger PagerDuty incidents from Slack and replaces our Legacy PagerDuty to Slack integration guide.


In PagerDuty

  1. In the navigation, click to Configuration and select Extensions.
  2. Once you are on the Extensions page, go to the section for Service Extensions.
  3. Under the Service Extensions section, click + New Extension.slack_v2-1_
  4.  Select Slack from the dropdown menu.
  5. Enter in a name for your Extension.
  6. Users in Slack that are not users in PagerDuty can acknowledge/resolve incidents in PagerDuty if you have any Slack user selected. If you do not want any Slack user to acknowledge/resolve incidents unless they have a PagerDuty account, choose PagerDuty users only instead.
  7. You can select which updates you want sent to Slack: Acknowledge, Resolve, and Assignment Changes.
  8. Click Authorizeslack_v2-2_
  9. Select the channel to which you’d like PagerDuty to send messages and then Authorize the integration.
    Pasted image at 2016_09_06 11_21 AM
  10. If you setup the integration on a private channel, go to your Slack channel and add the @pagerduty_slack_bot to your channel. 
    Now you’re done! Slack



When a Slack user acknowledges or resolves a PagerDuty incident, how will the PagerDuty incident behave?

When a Slack extension is added to a channel, Slack users in that channel will be given the opportunity to sign into PagerDuty to associate their Slack and PagerDuty accounts. Whenever an incident is triggered, the trigger message in Slack will show an acknowledge button and a resolve button. Users who have associated their Slack and PagerDuty accounts will respond as their PagerDuty users when using these buttons, keeping records of their actions from Slack consistent with actions from other clients in your analytics. If they do not have permissions to respond in PagerDuty, they will be unable to respond in Slack. Optionally, users who have not associated accounts will be unable to modify the state of the incident.

I have the option to only allow Slack users that are also PagerDuty users to acknowledge/resolve incidents in Slack. How will the incident behave?

When you use the option to only allow PagerDuty users to acknowledge/resolve incidents from Slack, they will be prompted to link their Slack user to the PagerDuty account. Once they have done that, any action they perform will show their PagerDuty user taking action on the incident. Users who have not linked their accounts yet will be be unable to take action, and instead will be prompted again to link accounts.

I’ve already got a Slack webhook set up. How do I switch to the new integration?

In this case, you’ll set up the new extension the same way as outlined above, then you can delete the old webhook.

I enabled alerts for my service; how does this appear in Slack?

If alerts are enabled for a service with Slack, Slack will only update the incident_key. Slack doesn’t update based on alert, but it notifies other Slack users of incidents for an alert grouping based on incident_key. You can still ack or resolve an incident in Slack to update the incident status in PagerDuty.

If there are multiple alerts that are merged, the source incidents will appear as merged in Slack and will be updated as resolved with the resolved_reason as merged as well as the target incident number they are merged into.

Can I unlink my PagerDuty and Slack user after it has already been linked?

Yup! If you go to your PagerDuty user profile page, click to the User Settings tab, and you will see the option to link your user with your Slack user.