Creating Your First Power Automate Approval Flow in Under 30 Minutes!
Business Process Automation can be super complicated, but what makes the Power Platform unique is that anyone can get started quickly, and with no prior tech knowledge! Join Microsoft MVP Vlad Catrinescu for this 25 minute session recorded at the Microsoft Power Platform Conference 2023 to learn how to create your first #PowerAutomate approval flow! No prior knowledge of Power Automate required!
Looking for content on a Microsoft Certification Exam, Microsoft 365, and the #PowerPlatform?
Watch my 50+ courses on Pluralsight
Video Summary
Here are the key points from the video:
- Introduction: Vlad Catrinescu, a Microsoft MVP from Montreal, Canada, introduces himself and his background in Microsoft 365 and Power Platform.
- Power Automate Overview: Vlad explains how Power Automate allows for business process automation without coding, using SharePoint as an example to create an approval workflow.
- Creating a Flow: He demonstrates creating an automated cloud flow for purchase requests, including setting up triggers, getting manager details, and configuring approval steps.
- Adaptive Cards and Approvals: Vlad shows how to use adaptive cards for approvals directly in Outlook and Microsoft Teams, making the process interactive and efficient.
- Demo and Conclusion: He wraps up the demo by approving a purchase request for a Ferrari race in Las Vegas, highlighting the ease of using Power Automate for approvals and encouraging attendees to enjoy the rest of the conference.
For more information, read the transcript blog below, or watch the video above!
Video Transcript
Hello everyone, my name is Vlad Catrinescu. I’m a Microsoft MVP from Montreal, Canada. I’ve been an MVP for 10 years now, mostly in Microsoft 365, and I came from the SharePoint world like many other business apps MVPs nowadays. Now, I do a lot of work with the Power Platform. I had the good chance to talk to some of you who listened to my side courses earlier today. I have about 80 courses on there, covering quite a few types of content, so check it out. I’m also the author of three books that have nothing to do with today’s subject, but I wanted to have three things there on the slide. For those of you on Twitter, because it still feels weird to say “for those of you on X,” you can find me at Vlad Catrinescu and also blog at VladTalksTech.com. I know Vlad Catrinescu is not the easiest handle to spell, but luckily Twitter also has some AI in there, so if you follow a bunch of other Microsoft people, there aren’t that many Vlads out there, so hopefully you’ll see my face show up.
Now, I have a question for you. You’ve been sitting down and looking at mostly slides this morning, so for this session right after lunch, do you want to see slides or do you want to just do demos? Demos? Awesome! I didn’t really have slides, so I was counting on you all to say demos. Perfect! Can you still hear me sitting down? Yes? Perfect.
Power Automate allows us to create business process automations without a single line of code. How do we get there? Go to make.powerautomate.com. If not, now I can say this because it’s right after lunch, you click on the waffle. If I say this before lunch, you’re all going to look at me with hungry eyes, so I can make this joke after lunch. Then you find Power Automate in here. Once you get in, my goal is to not say the “C” word that you’ve heard all morning. I’m going to try to do the session without saying it at all, and don’t try to bait me. I have a feeling some of you will put trick questions in there, so don’t try to make me do it. You have this “Start building your flows with AI” ad in the middle, but where you’re probably going to spend most of your time is going to be “My flows” here on the left. My goal for the next 25 minutes is to build an amazing approval workflow, and I have a nice SharePoint site here because we all know SharePoint is the best database that you can use. We go to “Purchase request.” I love it that some of you got it. I have this beautiful SharePoint list here in which we have a title, an amount, a justification, and of course, if we want, an attachment.
Let’s start creating our flow. I’ll click on “New flow” here, and then I have three main options that you care about: an automated cloud flow, an instant cloud flow, and a scheduled cloud flow. These are the three types of triggers that we have in Power Automate cloud flows. We have automated triggers, so when something happens in another system, like when a new item gets added to SharePoint or when a file in OneDrive changes, that’s an automated cloud flow. When something happens in another system, we will trigger the flow. An instant cloud flow would be if I have a document and I say, “Start an approval on this document.” It’s something that I manually trigger. The last one, scheduled, is like every Friday at 3 p.m., look at everybody that didn’t submit their timesheet and spam them until they do. We’re doing a purchase request, right? So it’s going to be an automated cloud flow. I need to select my trigger. Luckily, it knows me pretty well, so SharePoint is the second one there. When an item is created. Now, who here heard what the concert is later today? Who is it? Carly Rae Jepsen? Okay, so the flow name will be “Approve Me Maybe.” There we go. Hopefully, we’ll get some approvals in here. Awesome. Let’s click on “Create” here.
By default, I know they announced the GA of the new Power Automate editor. We’re going to use it after. I want to show you what you have today, and then I’ll show you what you’re going to have tomorrow as well, all in 25 minutes. But as smart as Power Automate is, it doesn’t know exactly where to get the information from, right? It knows that it will trigger this flow when an item gets created in SharePoint, so we have to tell it in what SharePoint site to look. Luckily for me, “Getting started with Power Automate” is right in here, but most of the time, you might have my luck where you see all the 100 SharePoint sites you have access to except the one you actually need. I don’t know why that always happens. If it ever happens to you, you just go click on “Enter custom value” here, go to the SharePoint site, copy the URL, put it in here, and then life is beautiful again. When I click on “List name,” it’s able to go to that site and show me all of the different lists. Perfect. I’ll select the “Purchase request” list.
Now, for purchases, who usually approves them? Okay, unless you work for the government because that gets complicated. Usually, it’s your manager, right? Let’s make it a bit dynamic. I want to find the manager of the user that created the purchase request. So let me go here, choose an operation, search for “manager” here, and you see I have an action called “Get manager,” part of the Office 365 Users connector. What it will ask me is, “Okay, Vlad, whose manager do you want me to get?” Because again, it’s smart, but it won’t do everything for you. If you click on it, you will have the dynamic content pane that appears. From here, you can pass information from the trigger and all of the different actions above where you’re currently at. So I’ll search “Created by” and I’ll say, “You know what? Find the manager of ‘Created by’ email.” So I’m passing this as an input, and the output will be the manager of that user. Great. Then I’ll start my approval. I’ll search for “approval” here, and I’ll have a few options. My first option, which is the one you will use most of the time, is “Start and wait for an approval.” So start an approval, wait until an outcome is decided, and then continue to the next thing. If you have a longer process where you can do things meanwhile, you also have a “Create an approval,” go do other things, and then wait for the approval to be done later. So you do have those options, but for now, I’ll just do “Start and wait for an approval.” Great. It will ask me for the approval type. Two main ones that we will get are “Everyone must approve,” so let’s say I send my approval request to five different people. That’s the government style. All five of them need to approve before that gets approved. If one of them rejects, then the outcome is rejected. I can also do “First to respond,” which means I send it to five people. The first person that answers, if they reject, it’s all rejected. If they approve, it’s all approved. So make sure you buy a drink or a Starbucks for your favorite person in that group. Let them know when you’re going to submit it so they approve it first. In this case, we only have one approval, so it doesn’t really matter.
Now, the title. How many of you have to approve things quite regularly? How many of you get a few approvals every day? A few of you. Don’t you just love it when the email you get is just “New approval needed” with no context, no information at all? Isn’t that so useful to you? What we’re going to try and do today is make this approval, the information that the approver receives, so useful they don’t even have to go to the item in SharePoint. So I can use the dynamic content for that. I can say, “Okay, new purchase approval by,” and let’s get the “Created by” display name. So, “New purchase approval by Vlad,” let’s say. And let’s be honest, as a manager, you don’t really care what I’m buying. You only care about the amount. So, “For,” and let’s put the amount in here. Perfect. Now, who do we want to assign it to? We will get the manager here. So search for “Ma,” you can see I got all of the information I can get from the “Get manager” action I had before. Really important, you can rename your actions. That’s something, for those of you that listened inside the keynote, you know they had like an AI prompt. I almost said it. They had like the AI prompt where somebody went in and they said, “Explain to me what this flow does.” You remember that? But all of the actions they had in there were “Update item 1,” “Update item 2,” “Send email 6.” Sure, if you do that, really good job security. Nobody will understand what you did. But remember, that might be you on Friday at 4:30 p.m. trying to fix something, and then you miss your happy hour because of that. So what you can do, you can go here, rename, and say, for example, “Find manager of item creator.” Doesn’t that look so much better? When you read, you can actually see what was done rather than “Update item 2,” “Update item 3 and so on. After that, now of course the flow we create is quite small, but after that, when you search for dynamic content, you will be able to see directly here the new name for the action. So you won’t even need to ask AI what the flow is about because you’ll just understand what was done. So I’ll pass in the mail. Okay, now the details of the flow. Let’s be nice; we want to get it approved. So I’ll say, “Hello, manager display name.” Let’s go in here, then we’ll say, “Created by display name wants to,” and don’t forget to run it with spell check before you put it in production. “Wants to purchase,” let’s put it here, we’ll get the title of the item in SharePoint. Great. Here, for the amount of, let’s get the amount. Perfect. We’re going to add a dollar sign at the end. There are ways with expressions if you want to get the currency and format it right, depending if it’s USD or Canadian, because you know we cannot agree on which side to put the dollar sign on. So if ever you’re in a multinational company, with expressions, you can actually format the currency for all types of currency. But for now, we’re in Vegas, so everything is in US dollars. Perfect. Here is the justification provided, if any. We are going to get the justification here and then say, “Thanks.” Perfect. Then you will ask me for a link to the item. Let’s search for link. I actually have a link to the item property that’s pre-made for me. Awesome. And then for the description, I can even put text, for example, “Click here to see the full request,” or you can use dynamic content if you want to have the title, for example, in there so you can customize what they see different from the link because, let’s be honest, it’s not pretty to see links in emails.
Then after that, we are going to do a condition because depending on if it’s approved or not, we are going to send different things. So under control, here is where you will find all the different logical operators for Power Automate. We have loops, we have conditions, we have switch statements, and many more. So I’ll do a condition. And what do I want to look at? I want to look at the outcome of the approval. Now, really important, a mistake I always make, like I talk to myself when I do Power Automate, it’s a problem. You know, knowing it is half the way to fixing it. But when you talk to yourself, you’re like, “Okay, if the outcome is equal to approved or if the outcome is equal to rejected,” right? That’s the way we talk about it. What it wants is the actual name of the button. So you want to have only approve or reject. If not, it will not work. Great. So then if yes, what I will do is I will go here and I will send an email. We’re going to send an email with Office 365 Outlook. Who are we going to send it to? You will notice that for some connectors, you click on it here and the dynamic content pane doesn’t open. So what’s our first reflex? It’s to click 10 more times until it opens. That won’t work. In case it doesn’t open right away, you have an add dynamic content right here, and it will open it. So I’ll search for created by email over here, and we’ll say, “Congratulations, your purchase for [title] got approved.” And it looks like Power Automate is hungry because it ate a word. And here I’ll just put “Yay!” with a happy smiley face, right? Because we all put smiley faces in emails now.
Now, any of you here work in Human Resources? A few of you? Okay. So now we can either leave it like this, where I call this the recruiter mode, where if you get denied, we just ghost you. We don’t tell you anything. Okay, now we’re going to be nice. We’re going to add an email even if you are denied. So we are going to send an email here. So let’s send an email with Office 365 Outlook. Who do we want to send it to? Created by email here. Where is it? Created by email. I can also go in, show advanced options, and add, for example, the manager in CC. This way, when the user gets denied and they’re not happy, they can just reply all to complain. Isn’t this service? One-click complaining. “Your purchase for [title] got denied. Try again later or complain to your manager in CC.” There we go. I forgot the sad smiley face. Perfect. And see, this is where it’s really important to rename them because if now you look at them and it’s send email V2, send email V22, it’s not pretty. And that’s when you need AI to explain to you what you did. So we’re going to click on Save here. Perfect. Give it a few seconds. Now we are going to add some items. So what do I want to purchase? First of all, MPPC 2024 because this year is so amazing. The amount, if you purchase early, I think about $1,800. The justification, remember the manager will see this in the email, so you are the best. Always be nice to your manager when you need something. That’s Approvals 101. Perfect. We are going to click on Save. And what’s the next thing that’s probably going to get denied is, let’s say, Power Platform User Group in Hawaii. It would be cool. Anybody from Hawaii here? I think no. Yes? I’m jealous. I want to go back. There used to be a SharePoint Saturday there before, so I want to go back. The amount of that will probably be closer to $5,000 only because of the hotels. It’s too cold in Canada. Perfect. Click on Save. Great.
Now we go back here. We’ll go back to our flow overview here. Yes, it’s ready to go, and it looks like the demog Googs are with us. The first one already started. Now, this can take anywhere between one second to start and one minute to start. Usually, the more people that are looking at you, the longer it takes. And if your manager or the person with the budget is looking at it, double that time. It’s scientific. Okay, one of the cool things we can do, let’s see, the second one didn’t start yet. It’s okay. If we click on it, we’ll actually be able to see the flow live where it’s at. So I can click on when an item is created, or let’s do here, find manager. You can see the input that we gave it is VL Global Manticor, and this is the output. The display name is Vanessa Lee, for example, and it’s waiting for the approval. You can see the first one started fast. The second one, the demog Googs are playing with me a bit, but it’s okay. The first one started. I’ll go in and log in as Vanessa, and then once it goes to the inbox, I have my email. We look at the title: new purchase approval by Vlad Catrinesco for $1,800. We should have probably put a dollar sign in there, but we got to keep something for v2 of the flow, right? Then let’s make sure we show the block content here. What we have from the approvals is what is called an Adaptive Card. The cool thing about this is we can actually interact with it directly from the email, so we don’t even have to leave Outlook in order to interact with it.
You see, I have my new purchase approval. Hello Vanessa Lee. I don’t know why there’s something in there, probably spell check again. Run it with spell check, this is exactly why. Hello Vlad at FES, who wants to purchase an MPPC 2024. Well, probably I should have added conference ticket for the amount of $1,800. Here’s the justification provided, if any: “You’re the best.” How can I refuse that, right? So directly from the email here, I can add some comments. Of course, if we want to, we can leverage those comments and add them after when we send to the requester. Here are the comments you got, but right now they’re not doing anything, so I’ll click on submit.
The other way, because some of you have to do approvals 5-10 times a day, what are you going to do? You’re going to create an Outlook rule where this will go to a folder that you’re never going to look at. One of the cool things that we have with Power Automate is we have the Approval Center. So I can go to Power Automate, to the Maker Portal on the left, I go to Approvals, and here I can see all of the approvals that are waiting for me. It’s also available on the mobile app if you want to. So there’s a Power Automate mobile app, you have approvals in there, you can see everything that is waiting for you.
So again, I can see the second one here: new purchase approval by Vlad Catrinesco for $5,000, Power Platform User Group in Hawaii. This one I will say reject, only if you take me with you. Perfect. Now we’re going to reject this one, and if we go to emails over here, what will happen is shortly I will have two emails here: “Your purchase for Power Platform User Group in Hawaii got denied,” sad smiley face, really important, and “Congratulations, your purchase for MPPC 2024 got approved.” So far, pretty easy, right? Pretty cool too.
Using Microsoft Teams instead of emails, I think I have like five more minutes left, right? What if we try to take this flow now and instead of doing everything by email, we try to do it via Teams? No more emails. Would that be cool? Yes, awesome. I mean, I feel like everybody’s been trying to kill email for the past 10 years. Yammer tried to kill email, Teams tried to kill email, my inbox doesn’t agree with that, but we’re going to help. We’re going to help in the fight to inbox zero.
Okay, so I will go to my flow here. Well, actually, I promised you that I will use the new interface, so what I will do is I will edit with the word that should not be said, which is how you get today to the new interface. Some of you might not have that option, just so you know, and that’s why I wanted to do both options because especially if you’re in government or if you’re not in the US, you might not see that option yet. So here I have the new one. I will hide, we’re not going to use our good friend here, and we see the same thing, right? It’s the same flow.
What I want to do now is, you know what, I want to delete this approval here, so I will delete it, and then I’ll go into the condition and just take that out. What I will do is I will add an action above, and in order to do via Teams instead of doing a start and wait for an approval, I will just do create an approval. And from now, again, once you know how to use Power Automate in one experience, it’s the exact same thing in the other experience, just a little bit different. This is more of a modern design, but nothing really groundbreaking.
So okay, we did the first one fancy. Now, in the interest of time, we will just be a bit more funny than production-ready. So I’ll just say, “Just approve it,” and we can still add, if you want to add dynamic content, it won’t open when you click it automatically. You have to click on dynamic content here. Let’s get the title from the SharePoint list. Perfect. Who do we want to assign it to? We’ll get the mail of the manager. The details: “Don’t look, just approve.” There we go. And I don’t even need to provide any of the advanced ones. Perfect.
Now I will go to add another action here, and let me search for send card. Remember when I said card Teams? I like other search better. Okay, Microsoft Teams here. No, see more. There is send a card, post card in a chat or channel. So remember when I said in Outlook we had an adaptive card and we could interact with it? Well, the cool thing is that adaptive card can live in a Power App, it can live inside a Teams message, it can be in Outlook, it can be on a website. It’s not only for Outlook. So what I want to do is, why reinvent the wheel? I’ll just take that exact same adaptive card and send it via chat. So I’ll do post card in a chat or a channel.
Then who do I want to post it as? The user that’s currently running the flow, the flow bot, or I also have integrations with PVA and Power WS. Usually, I like to do it as the flow bot. Display comes from Power Automate and not everybody gets spammed by Vlad Catrinesco because if not, they’re really not going to like you. If you create all the flows for your company and you’re the one sending all the emails and the messages, they’re not going to love you. So this way they can hate the bot. It’s a lot better that way. I will send it in a chat with the flow bot. We’ll give it a few seconds. Who do we want to send it to? Let’s send it to the mail of the manager. And for the adaptive card here, let’s search for adaptive. You can see from create an approval, I have a Teams adaptive card directly ready for me in dynamic content. Perfect.
Great, so let me save that. I’m posting it now. What do I have to do? I have to wait for the approval to be done. So let me add an action. We will search for approval here. We will do wait for an approval. And then what approval do we wait for? Dynamic content. We search for ID, and you can see we have the approval ID already for us in dynamic content. Perfect. Now I’ll go to the condition. This is probably from the old one, and I just don’t want to risk it, so I deleted it. Look, here’s for the outcome from wait an approval. Great. And then after that, I only got one more minute left, right? Well, imagine that we also change the send the emails to send a Teams message. So let’s click on save here, wait for it to be saved, and then we will… Let’s do one that will be approved. Let’s end up on a good note since the approver is not going to look. Ferrari race in Las Vegas. The amount is about $700. I will send you the video and then click on save. By the way, if you haven’t done it and you’re looking for something to do in Vegas, it’s quite a cool experience to drive a Lambo or a Ferrari. That’s not yours because then you know what they say, the fastest car in the world is the rental car. Those are always the fastest cars in the world. If not, what you can also do, by the way, if you don’t want to waste time, let me just go back because I really want to approve that Ferrari. But if the demog Googs don’t… There we go, perfect. Thank you, thank you demog Googs. I was going to relaunch the conference, you know, but the Ferrari is way cooler. I’ll go here under Vanessa. I have Power Automate that sent me a card, and it’s again the same thing as we have in Outlook. We didn’t do any code or anything. I have this nice adaptive card. It says, “Don’t look, just approve. Go for it, but don’t crash it.” Click on submit, and then of course, right now we are sending an email, but you could just send a Teams message and not have any emails at all. Pretty cool stuff. Well, that was it. Thank you so much for attending. I really hope you enjoyed it and enjoy the rest of the conference. Thank you.
