Copilot Studio Friction
"No output was received from flow" — outputs never arrive
Last verified
Details & related
Assessment
- Confidence
- Confirmed officialConfirmed by Microsoft documentation or an official statement.
- Severity
- Blocking
- Typical time lost
- Hours
Identification
Verification & changes
Verified
Doc check by human: Official error-code reference and flow docs re-read during seed migration; both error messages still documented.
Change
Provisionally approved by the Product Owner; external LLM quality review pending.
Change
Initial record created from the seed dossier (migration wave 1).
Are you in the right place?
- Your agent calls an agent flow and reports "No output was received from flow …".
- Or the error says an output parameter "is missing from the response data".
- The flow's run history in Power Automate shows the run as succeeded.
- The problem appears only for some requests — other requests through the same flow work.
If instead the call fails immediately with FlowActionBadRequest → see Flow fails with "FlowActionBadRequest".
If instead the flow fails after about 100 seconds → see Agent flow fails with FlowActionTimedOut.
If instead the flow never appears as a tool → see Your flow doesn't show up as a tool.
What's happening
The agent expects every output your flow promised — on every single run. Outputs only travel back through the "Respond to the agent" action. When your flow branches, each branch is its own path to the end. A branch that ends without a "Respond to the agent" action returns nothing. A branch whose respond action fills only some outputs returns an incomplete set. Both cases produce these errors, even though the flow run itself succeeds. Picture two checkout lanes where only one prints receipts: half your customers walk out empty-handed. The tricky part: your test probably went down the good branch, while real users hit the silent one.
For technicians
The requests that fail map exactly to the conditions of your "Condition" and "Switch" branches. Compare the failing inputs with the branch logic to find the path that skips or under-fills the respond action. The run history shows which branch executed on each run.
How to fix it
Solution 1
Official workaroundComplete "Respond to the agent" on every branch
- Open the agent flow in the flow designer.
- List every branching point in the flow ("Condition", "Switch").
- Follow each path to its end.
- Add a "Respond to the agent" action to every path that lacks one.
✅ You should now see: every path through the flow ends in a "Respond to the agent" action.
- Open each "Respond to the agent" action.
- Fill every output parameter in each of them.
- Use an empty text value where a path has nothing to report — never leave an output unset.
- Save the flow.
✅ You should now see: identical output lists in every respond action.
Check that it worked
Trigger the flow through the agent with one test input per branch — including the error paths. Expected: the agent receives values on every run, and the error messages no longer appear.
If it didn't work
- You renamed or added outputs while fixing branches. The agent still calls the old shape. Refresh the tool configuration in the topic — see Flow fails with "FlowActionBadRequest".
- An expression returns nothing at runtime. Open the failed run in the run history. Inspect the respond action's actual values.
- The channel still runs your old agent version. Publish and propagation delay is a standard suspect. See Teams answers with an old version.
- The flow ran too long before responding. Slow runs die before any output arrives. See Agent flow fails with FlowActionTimedOut.
Prevent it next time
- Make "every path ends in a completed respond action" a review point for every flow.
- Keep the output list identical across all respond actions; fill gaps with empty text values.
- Keep slow work behind the response — use the async continuation pattern for long-running branches.
Evidence
Official documentationlearn.microsoft.com
The official error-code reference documents both the missing-flow-output and the missing-output-parameter error messages.
Official documentationlearn.microsoft.com
The official doc makes the 'Respond to the agent' action the only path by which flow outputs return to the agent.
Microsoft statementmicrosoft.github.io
Microsoft's CAT team requires agent flows to end with the 'Respond to the agent' action for the agent to receive results.