Flow/SharePoint allows flows with certain actions to be triggered manually, despite the Flow having a non-manual trigger.
When non-manual Flows are triggered manually, there is great potential for errors and confusion.
This is even more frustrating because there is no way for an admin to manually remove incorrect Flows from the SharePoint dropdown, you just have to train users: "Run FlowA, not FlowB. If you run FlowB it breaks the whole site."
If you have a Flow set to trigger "For a Selected Item", then that flow shows up in the right-click menu for any item specified in the flows trigger.
item > Flows > MyFlow
This is mostly working as intended, but the problem is MANY Flows which are NOT set to the "For a Selected Item" trigger end up appearing in this context menu, which creates errors/confusion.
I have ListA and ListB on sharepoint
I have a Flow, ManualFlowA, which is set to trigger "For a Selected Item", specifying ListA. This Flow should only be able to be manually initiated from ListA by a user.
I have a second Flow, UtilityFlowB, which is set to trigger on an HTTP request. This Flow should only be able to be initiated by an HTTP POST action from within ManualFlowA. UtilityFlowB should never be ran in any other context.
Here, everything works as expected.
ManualFlowA shows up in the dropown for ListA, but does not show up in ListB.
And UtilityFlowB does not show up in the dropdowns for either list.
Unfortunately several Flow actions break this expected behavior:
Sharepoint - Get Attachments
Sharepoint - Create Item
Sharepoint - Update Item
Suppose that, within UtilityFlowB, we add a "Create Item" action, and set it to create an item in ListA. Now, if we go to ListA on sharepoint and right-click an item, ManualFlowA and UtilityFlowB both show up! This is confusing as running UtilityFlowB manually in this way has undefined consequences!
Similarly, suppose that within ManualFlowA, we add a "Get Attachments" action, and set it to grab attachments from an item in ListB. Now if we go to ListB on sharepoint and right-click an item, ManualFlowA now shows up! This is confusing because ManualFlowA is set to operate on ListA, but it is looking at the ID for the item selected... which we are selecting from ListB!
Is UtilityFlowB triggered by an HTTP request? Will it appear on List A?
You said that several Flow actions break this expected behavior, how are the flows created?
About the ManualFlowA which is going to Get attachments from List B, how is it configured? Where do you get the Id for the Id field?
All of my Flows are created in... the normal way?
flow.microsoft.com > Create from Blank > Create from Blank > choose appropriate trigger
Yes UtilityFlowB is set to trigger by HTTP request.
This Flow does NOT show up in ListA, UNTIL a connector is added which points to ListA.
More specific to my situation:
1. Sharpoint user goes to ListA a runs ManualFlowA via right-click
2. ManualFlowA does some stuff, then uses the HTTP POST action to run UtilityFlowB.
3. The body of the request happens to contain the ID of the item in ListA that initiated the flow.
4. UtilityFlowB uses the ID supplied in the body to perform a Get Attachemts action.
5. The presence of that Get Attachments action is the determinig factor as to whether or not UtilityFlowB can be initiated by the user from ListA.
6. The expected behavior is that UtilityFlowB should never be able to be initiated via right-click, because it does not use the "For a Selected Item" trigger.
Also I appologize, but I was mistaken on the second scenario. Flows set to trigger "For a Selected Item" are showing up properly in the lists that they point to, and no other lists.
What I was seeing was just more HTTP-triggered Flows incorrectly showing up in the contenxt menu:
1. FlowC set to be triggered only by HTTP request.
2. FlowC has a connector to create a new item in ListC (this doesn't require an ID or any special knowledge about ListC).
3. Go to ListC and you can observe that FlowC is able to be triggered manually from the right-click menu.
Flows set to trigger on HTTP Request will show up on any list to which they connect through actions.
Learn how to create your own user groups today!
Check out the new Power Platform Community Connections gallery!
Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.