“How can I temporarily disable an action / a section of my Power Automate flow without deleting the action(s)? I need to debug a flow but I don’t want it to send out emails during the testing.”
Power Automate doesn’t have a simple functionality to disable an action in a flow. There isn’t any checkbox you could check and the action would be skipped. If you need to disable part of a flow, e.g. to not send an email, not create an item, or not post a message, you’ll need a workaround. And this post will offer three of them.
Condition
You can use a ‘Condition’ with fixed values and put the action(s) into one of the branches. If you use for example condition if ‘2 is equal to 1’, the flow will skip all actions in the ‘If yes’ branch.
It’s a solid solution, but you must add the ‘Condition’ to your flow and move the actions there. And if you want to disable multiple sections in your flow you’ll need multiple conditions.
Static result
Another option is to use ‘Static result’ for an action. If you configure an action to provide ‘Static result’, it’ll give you just the result you define. The action won’t do anything else, why should it when it already has the result?
This solution will not skip the action, but it’ll block it from doing anything. It’s applicable only on actions that use some connection and only one by one. You must define the ‘Static result’ for each action you want to disable.
Since it can disable only one action, you should be careful if you don’t need that action’s output later in the flow. In that case you must either define a full, valid result, or disable also the other actions. And that could mean combining multiple approaches from this article.
Configure run after
The third option is to use the ‘Configure run after’ functionality. This configuration allows you to define in which situation an action should run depending on the previous action outcome.
The configuration I use is to run after action ‘is skipped’. It’s the same configuration for the action I want to disable and for the next action.
The first ‘is skipped’ action will tell the flow to skip the action if the previous actions was not skipped (= if it run correctly). The second ‘is skipped’ on the second action will resume the flow. Since the first action will be skipped, the second action will run after the skipped action.
This solution can be used on a single action, or on multiple actions if you put them inside a ‘Scope’. There’s no limitation to only actions using connections as when using ‘Static result’.
The problem can appear if flow skips the action before. But actions are skipped only when condition is not met or if the previous action fails, and in such cases you can use different ‘run after’ configuration.
Summary
The three solution described above should cover all situations when you need to disable an action or a section of your flow.
Condition is the simplest solution but it’ll complicate your flow. It might be a lot of conditions and a lot of moving actions in and out of the condition.
Static result is a good solution to disable a single action, e.g. send an email or create a file. If you need to disable multiple actions it might be better to use either the condition or run after configuration.
With the run after configuration you can disable whole sections of your flow (if they’re in a ‘Scope’) and it’s easier to manage than many conditions. It is my preferred option when I need to disable any action(s) in my flows.