The Designer Canvas
The flow designer presents your flow as a vertical, top-to-bottom sequence of cards: one trigger card at the top, followed by action cards connected by plus (+) buttons that let you insert new steps between existing ones. Each card is collapsible, shows its connector icon and operation name, and exposes an ellipsis menu with options like Rename, Delete, Add a note, and Configure run after, which controls whether a step runs on Success, Failure, Skipped, or Timed out of the previous step.
Cricket analogy: The vertical card sequence is like a fall-of-wickets scorecard read top to bottom, where each entry shows exactly what happened and in what order, and you can insert a note between overs.
Expressions and Dynamic Content
Inside any action's input field, clicking the lightning-bolt Dynamic content picker lets you insert outputs from earlier steps, such as a trigger's Subject field, without typing anything manually. Switching to the Expression tab exposes the full Workflow Definition Language function library, functions like concat(), formatDateTime(), if(), and coalesce() let you transform data inline, and every expression compiles down to the same @{...} syntax stored in the flow's underlying JSON.
Cricket analogy: Dynamic content is like a live scorecard feed you drag straight into your commentary script, while an expression is like manually calculating the required run rate yourself using a formula.
@{concat('Order ', triggerOutputs()?['body/OrderId'], ' due ', formatDateTime(addDays(utcNow(), 3), 'MM/dd/yyyy'))}
@{if(equals(triggerOutputs()?['body/Priority'], 'High'), 'Escalate immediately', 'Standard queue')}
@{coalesce(triggerOutputs()?['body/CustomerEmail'], 'no-reply@example.com')}Testing and Debugging
The Test pane in the top-right corner lets you run a flow manually with sample data, or replay the most recent real trigger, and every run produces a detailed run history showing each action's inputs, outputs, duration, and status. Failed steps display the exact error message and HTTP status code returned by the connector, and you can use Peek code on any action to view and directly edit its raw JSON definition when the visual designer isn't precise enough.
Cricket analogy: The run history is like reviewing ball-by-ball footage after a match, where you can pause on the exact delivery, like a no-ball call, that caused a controversial outcome.
Peek code shows the raw JSON for a single action, but it's read-only in the standard designer for most actions — to truly hand-edit a flow's logic you generally need to use the flow checker, the Code view (in newer designer versions), or export/import the flow definition. Manually breaking JSON syntax while editing can corrupt the action and require you to delete and rebuild it.
- The designer displays a flow as a vertical sequence of collapsible trigger and action cards.
- The ellipsis menu on each card offers Rename, Delete, Add a note, and Configure run after.
- Configure run after controls whether a step runs on Success, Failure, Skipped, or Timed out.
- Dynamic content inserts prior steps' outputs directly; Expressions use Workflow Definition Language functions.
- Common expression functions include concat(), formatDateTime(), if(), and coalesce().
- The Test pane runs a flow with sample or real trigger data and produces a detailed run history.
- Peek code exposes an action's raw JSON, useful for precise inspection beyond the visual designer.
Practice what you learned
1. What does the 'Configure run after' setting control on an action card?
2. What is the purpose of the Dynamic content picker?
3. Which of these is a valid Workflow Definition Language function used in expressions?
4. What does the flow's Test pane allow you to do?
5. What does the run history show for a failed action?
Was this page helpful?
You May Also Like
What Is Power Automate?
An introduction to Microsoft Power Automate, the low-code platform for automating workflows across cloud apps, desktop tasks, and business processes.
Connectors Overview
How Power Automate connectors work, the difference between standard, premium, and custom connectors, and how they expose actions and triggers.
Your First Flow
A step-by-step walkthrough of planning, building, testing, and turning on your first Power Automate cloud flow.
Cloud Flows vs Desktop Flows
How Power Automate's cloud flows differ from desktop flows (RPA), and how to decide which one fits a given automation scenario.
Related Reading
Related Study Notes in Programming
Browse all study notesApache Spark Study Notes
Programming · 30 topics
ProgrammingApache Flink Study Notes
Programming · 30 topics
ProgrammingHadoop Study Notes
Programming · 30 topics
ProgrammingSnowflake Study Notes
Programming · 30 topics
ProgrammingApache Airflow Study Notes
Programming · 30 topics
Programmingdbt (Data Build Tool) Study Notes
Programming · 30 topics