One of the most popular tasks to automate with flows is approval processes. If you have been waiting for someone to approve an item, its possible to automate reminders for it. I’ve based this on one of the templates available in Power Automate, but this is a much simpler scenario. Here’s what’s being built:
- Someone submits an item for approval.
- The approver gets the request- an email as well as a Teams notification.
- The approver responds the request – all good in this case and no reminder needed.
- If it has been a while and there is no response from the approver, send them a reminder email to action the request.
At the end, you’ll have a flow that looks like this:
I’ve just used a manual trigger for this example, but realistically it might be coming from somewhere else such as Dataverse.
This action will allow you track whether or not the request has been approved. In the case where it has been approved in time, the reminder will not be sent out.
Create an approval
The Approval action you are likely already using.
Branch 1: Approval received in time
Under the Create an approval step, you can add a new action- Scope. It makes it visually easier to group the actions together in a scope.
Wait for an approval
In the scope, add the Wait for an Approval action, and add in the Approval ID dynamic content. The next action should be Set variable. For that variable created earlier in the flow, this will flag it as done/true.
Condition for the approval outcome
Here you can add in the usual steps that occur once an approval request is approved or rejected. In the example here it will just be sending back an email to let the requestor know about the outcome.
Branch 2: Approval reminder needed
You will now add another scope (as a parallel branch) underneath the Create and approval action. You can call the scope Approval reminder, and here we will put in the steps that handle automating a reminder out to the approver if they do not provide a response in time.
First, add a Do until control in the scope. This will have the reminder repeat itself if necessary, i.e. until the approvalDone variable is set to true, which is an action you have built in the previous branch.
You can change the count as well by clicking Edit in advanced mode. You can set this number to the max number of times you want the reminder to be sent out. Note that Do until can loop for a max period of 30 days.
Add the Delay action into the Do until control. Here, you will set how often you want the reminder to be sent if there is no response from the approver. In this example it has been set to 2 days.
Condition: to send reminder
Under the Delay, you will have an action to check whether or not the response has been approved before sending out a reminder. Your condition should use the approvalDone variable as dynamic content, equal to true.
You can leave the If yes branch empty, because nothing else should happen if it is approved. You have handled these actions in the other scope created earlier.
Send an email reminder if request has not been actioned
In the If no branch, you can add the action for the reminder to the approver. This may automatically put it in an Apply to each control if there are multiple approvers.
Add an action to send an email, and add the email to the approver in the To field. To make the link to the request a hyperlink, click on the </> button in the Body field, and enter it as shown below. <a href=Respond link>View item</a>
If you want to test it out quickly, you can change the Delay action to a few minutes. In the end, your flow will be looking something like this: