“I have an approval process with different approvers based on a department, how can I build it in Power Automate without repeating the same actions?”
Every time you start adding repeating actions in your flow, you should pause for a moment. Is it really necessary to have another action, or does it contain only minor changes from the other one? Is it another approval task only to use different approver? Or is it a whole branch in a flow only to send slightly different email? Your flow should never look like the one below.
Such flow will have too many actions, it’ll be slow to open, and imagine if you want to do any changes in it. You’d have to update all the duplicate actions with every change you do.
That’s why you should use configuration lists.
Why use a configuration list
A configuration list will help you avoid hard coding inputs directly in your flow. If you have for example an approval process, you don’t want to assign the approval task directly to a specific user in the flow.
Such configuration would mean that if the approver changes, somebody would have to update it in the flow. And if there’s another approval task for a different approver, you’d need another action leading to the first screenshot.
You should always use dynamic contents in this situation, and if it’s not available from previous actions, you’ll need a configuration list.
What is a configuration list
Configuration list is a data source where you can lookup a specific information. In combination with Power Automate it’s often a SharePoint list (or Lists list). Such list contains at least 2 columns – a value used for the lookup, and the value to return. It can be e.g. a list of approvers per user, or a list of approvers per department.
How to use a configuration list
To get a value from a configuration list you must add a lookup to the list into your flow. Use the ‘Get items’ action with a Filter Query on the configuration list. Continuing with the list above, you want to get the Approver for the specific department.
The returned item will be the corresponding configuration entry, with the configuration available as a dynamic content. Use it to assign the task. The final flow will then be much simpler.
Note: if you don’t like the automatically added ‘Apply to each’, you can remove it, but it’s not a must.
You should always have a good reason for repeating actions in Power Automate flows. If it’s only to change some value in an action, you should use a configuration list instead. Keep the action only once in the flow, and change its input based on the configuration.
There’s no limit on what your configuration list will look like. You need one column used for the lookup, and then it’s up to you how many more columns with information it’ll have, the usage will be the same. You can even use multiple columns for the lookup, all you have to do is use multiple filters in the Filter Query.
You could even define whole approval paths in the configuration list if you extend it.