Azure DevOps Work Item tag trigger

Sometimes a Power Automate trigger action is not sufficient for certain requirements. In that case a trigger condition might be a good alternative. In this article I will demonstrate how you can trigger a flow when a specific tag is used in a recently update Azure DevOps bug work item.

Inspiration

This question from rogemer:

I’d like to trigger an action based on adding certain tags to an ADO item. Is that possible with Power Automate?

Power Users Community thread: Triggering on ADO item creating based on tags.

System_tags

Typically when designing an automation like this you first start looking for existing connectors and their trigger actions. Microsoft has published an Azure DevOps connector with the following list of Azure DevOps trigger actions.

Using the When a work item is updated trigger action made the most sense in this example. After a couple of test runs with this action it was clear that the outputs included a system_tags field. The goal was to create a trigger condition expression which checks the value of this field.

Flow setup

In this example we are sending a Microsoft Teams private chat message to the product owner whenever a Bug work item is tagged with the tag Blocking in a specific Azure DevOps scrum project.

azuredevops

1. Add a When a work item is updated trigger action, from the Azure DevOps connector. Select your organisation and your project. Select the type Bug.

triggeractionazuredevops

2. Go to the settings of the When a work item is updated trigger action. Add a trigger condition. The expression can be found below.

blocking_tags

3. Add a Post message in a chat or channel action. Select the Flow bot and Chat with Flow bot. Enter the name of the product owner. Add a text for the message and include dynamic content fields from the Azure DevOps trigger action. In this example I only used the URL field value.

flowbot_chat

That is it for the setup of this example.

Happy testing!

You may also like...

5 Responses

  1. mark says:

    I’m trying to replace a system input with a user submitting a work item, via MS Forms. Is there a way to replace this? MS Forms -> Automate -> AzureDevOps… Azure and Automate show that I’m (owner of the flow) is submitting the form and I can’t seem to figure it out. I tried based on your example, but I can’t get it to work. Any tips?

  2. Jon Freed says:

    This is cool, and I certainly appreciate you sharing! Dankuwel! People should be aware of the pricing, because if they get into the pay-as-you-go $0.60 or $3.00 per run pricing they could run up costs very quickly! https://powerautomate.microsoft.com/en-us/pricing/

  3. Chris says:

    Hello – This post using the work item tag was very useful for me. Thanks!

    Discovered that my flow did not trigger when a user applied additional tags other than just the one my flow is looking for.

    @equals(triggerOutputs()?[‘body/fields’][‘System_Tags’], ‘Feature Template Dev’)

    Is there a way to add ‘contains’ a tag to this notation?

  4. Dennis says:

    Hi Chris,

    Yes, sure. Just swap the equals function for a contains function.

    @contains(triggerOutputs()?['body/fields']['System_Tags'], 'Feature Template Dev')

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.