Disclaimer: This solution requires at least one full license for PowerApps or Power Automate.
Microsoft Approvals have become a staple for many companies, known for their simplicity, speed, and efficiency—especially when integrated with Teams. In Teams, you can easily track each recipient, see who has responded, and identify those who haven’t.
But what about using Approvals in Power Automate? The experience with approval cards in Power Automate offers a different dynamic compared to the Teams interface.
The Problem
Using Microsoft Approvals in Power Automate can be straightforward yet frustrating. You often have to wait for the entire approval process to complete before you can extract any content from it.
Most users rely on the „Start and Wait for an Approval“ action or, as I often did, the combination of „Create an Approval“ -> „Post adaptive Card to Chat or Channel“ -> „Wait for an approval.“ Both methods are effective when you only need a simple approval.
The Catch
Sometimes, you need data to be approved by multiple people. While you can wait for all responses, if one person doesn’t respond, you won’t know (unless the Flow creator checks the Approval Interface for responses). This approach is time-inefficient and frustrating.
So, let’s change that and explore a scenario to improve this process.
Scenario
We have an entity for employees to get their business travel approved. In our scenario, the manager, the Director, and the Billing Department must approve the trip.
To manage this, we created a subgrid with a subtable where a plugin assigns the corresponding approvers (which can vary depending on the situation). To reduce inquiries to the admin, we added a status field for each approver to show their corresponding response.
Normally when now using a Power Automate Flow to create the Approval as described above, you only would see an answer when each one hast given one. If not you has to ask all three if their already done it.
Lets change that.
First Step
We start by creating a Flow to initiate the approval process. The trigger can be of your choice. We list all recipients and add them to a variable, as you might already know.
Next, we use the „Create an Approval“ action and fill in all the necessary details. And do not forget about it if you want to Post it in Teams. Here’s the key change:
After creating the approval, we update the Business Travel entity and add the ApprovalID to an extra field.
This completes the first Flow. It’s straightforward—do not wait for the approval in this step. You can still perform other updates or actions, but leave the approval process „open.“

Second Step
Next, we create a second Flow to wait for the responses. We use the „When a row is added…“ trigger.

This Flow triggers whenever a response is received for any approval. Therefore, we must filter the responses to match the corresponding ApprovalID, ensuring we only process the responses we need.
Once we have the correct approval, we search for the approver and update their status. If needed, you can cancel the approval at any time, for example, if you only require 3 out of 5 approvals or have other specific conditions.
Summary
In summary, using Microsoft Approvals in Power Automate can be enhanced by separating the approval creation and response handling into two distinct Flows. This approach allows for more efficient tracking and updating of approval statuses, reducing the need for manual checks and improving overall process efficiency.
Disclaimer: Since English isn’t my first language, I’ve used AI assistance to correct this article.