Automating the Provisioning of Selective Teams with Guest Access: Part 3.5 — Flow Enhancements

Michael Mukalian
5 min readMar 7, 2020

Some enhancements to the process we created previously

Series Contents

Improving & Enhancing the Process

In Part 3 of our series, we spoke of how to set up the main process via a Flow in Power Automate to create and configure our team. Since then a couple of enhancements came out, as well as a few new ideas based on discussions/work with a peer of mine, Corey Buzzell, out of our Minneapolis MTC (follow him on LinkedIn here). I wanted to share with you these items that we worked out so that you can add these improvements/enhancements if you like.

Notifications: Why Use Email When We’re in Teams? Let’s Use Teams!

Since we’re requesting a new Team why not also have the notifications surface in Teams as well? A new action (currently in Preview) let’s you do just that. In the Microsoft Teams Connector look for the Post a message as the Flow bot to a user (preview) action.

This action will allow you to, well, basically do as it says…post a message to a user as the Flow bot. Like below:

This provides a bit more control over not just the message but it appears in a person’s Activity Feed inside of Teams. So, when they’re in Teams doing work they’ll see the notification pop and be able to track it from there. What’s the interface look like? Check the below out:

Just like the other actions in the connectors, you can fill in the fields with either content from prior actions or a combination of that and other text you’d like. This is a great way to perform the notifications and have the user stay inside Teams and see them pop in the feed.

Approvals: Why Use Email When We’re in Teams? Let’s Use Teams!

Experiencing deja vu? Well, not quite, but did you know that you’re not limited to posting messages, but can also perform approvals *inside* Teams? When you use the Create an approval action in Flow, one of the attributes of that action is its adaptive card. You can use this card with the Teams action Post your own adaptive card as the Flow bot to a user (Preview).

You fill this action in like you normally would any action, but when you click inside the Message field, it exposes prior action’s attributes, including the Adaptive Card one from the prior Create an approval action! You can use this as the message contents and send it off, combining it with the Wait for an approval action. This results in an approval being delivered to the user inside Teams for them to act on!

This card, exposed through Teams, will allow the user to approve or reject the request, add a comment, and then submit it. Again, a great way to participate in the process without leaving Teams.

Check The Team’s Creation Status

In the prior article, we used a Delay action to give our process enough time for the system to catch up as it created the necessary assets of our Team (group, site, etc.). Did you know that you can use the Operations endpoint to obtain that action’s status? Luckily our Location variable that we created contains the proper information to construct the call. The variable will look much like this: /teams(‘GUID’)/operations(‘GUID’). Using this in combination with the GET method will allow you to make the call to see where the operation is.

The parse action will allow you to get the operations status. You could then loop through the above (throw in a 5–10 sec delay action) until you get a status of succeeded. This way you’re not always putting in a delay of 60 seconds each time you create a Team.

Adding Owners

Because the current endpoint to create a team doesn’t allow multiple owners to be added during creation (yet) you could add a looping mechanism to loop through your array of owners and call the relevant Graph endpoint to add them to the group.

This then allows you to create a team with multiple owners at creation time.

Conclusion

The above items are a little bit more than the nice-to-haves, especially when you look at the notification/approval integrations with Teams. These lead right into the next article where I show how to use a Power App to front the request process. Spoiler alert! We embed this power app in Teams so that the entirety of our process stays in Teams! Stay tuned!

--

--

Michael Mukalian

Covering the Microsoft Modern Workplace as a Technical Architect at the Philadelphia Microsoft Technology Center in Malvern.