Create a service hook for Azure DevOps with Slack

TFS 2017

Post messages to Slack in response to events in your Azure DevOps organization, such as completed builds, code changes, pull requests, releases, work items changes, and more.

Create a custom app in Slack

  1. Refer to the Slack documentation, Sending messages using Incoming Webhooks to understand the process of using Web Hooks to push information to a Slack channel.

  2. Create a new Slack app Create slack app

  3. Activate incoming Web Hook and add a new Web Hook to the desired workspace incoming Web Hook

    toggle Web Hook

  4. Select the channel for which Web Hook must be created

    create-Web Hook

  5. Copy the Web Hook URL and go to Azure DevOps

    copy Web Hook

Create a service hook subscription in your organization

  1. Go to your project Service Hooks page:

    https://dev.azure.com/{orgName}/{project_name}/_apps/hub/ms.vss-servicehooks-web.manageServiceHooks-project

    Project administration page

    Select Create Subscription.

  2. Choose the types of events you want to appear in your Slack channel.

    You can filter each of the triggers in specific ways. For example, the pull request created trigger can be filtered on the repository in which the pull request occurs, the target branch it applies to, and the team members that are required or invited to review the request.

  3. Paste the Web Hook URL from the Slack integration that you created and select Finish.

    ![Action dialog box with the Web Hook URL]./media/slack/action.png)

  4. Now, when the event you configured occurs in your project, a notification appears in your team's Slack channel.

    Screenshot that shows a notification in a Slack channel.

Q & A

Q: Why don't I have the pull request events as an option when I configure my trigger?

A: Pull requests are only available with projects that use Git. If your project uses TFVC, pull event triggers aren't available, and your code event is called "Code checked in" instead of "Code pushed".

Q: How can I get multiple events to show up in my Slack channel?

A: Create a new subscription for each type of event you want. For example, if you want to see build failures and new work items in your Slack channel, create two additional subscriptions.