A canvas or a list
Join steps on a canvas, from the start at the top to End, or edit the same steps as an indented list.
Workflows
Build reusable workflows from steps or a sample, and run them manually or on a schedule.
Join steps on a canvas, from the start at the top to End, or edit the same steps as an indented list.
Parameters ask for values when the workflow starts, and variables carry what a step found to the steps after it.
Start from a sample such as Offboard a Leaver or Lock Down Stale User Accounts, then adapt a copy.
Run a workflow in Altivane, or from Windows Task Scheduler without a window.
How it works
Add steps and fill in their settings.
Every change goes in the change log.
Windows Task Scheduler runs it without a window.
Each step does 1 thing, such as getting data, making a bulk change or exporting a file. Connections show the order the steps run in, not their position on the canvas.
Choose a step, then fill in its settings. Steps pass what they find to later steps through variables.
Get data runs a read-only Exchange Online cmdlet, such as Get-Mailbox, and saves the results. Run command runs an Exchange Online cmdlet. Bulk change makes any of the changes the Explore pages offer, such as Block sign-in, on a list of targets. Run report saves 1 of a report's tables, and Back up policies saves the tenant's Entra ID and Intune policies as JSON files. Apply a blueprint adds and updates what a blueprint declares, and never removes anything.
For each runs its steps once for each item in a list, and chooses whether a failed item stops the loop. Stop ends the workflow as succeeded or failed, with a message.
Set a value or the result of an expression, add to a list, or build a table a row at a time.
Keep the items that meet a condition, work out a new value from each, sort them, or read a CSV file into rows.
Export to file writes a list to an Excel workbook or a CSV file in the tenant's output folder.
Parameters ask for values when the workflow starts. Variables carry what a step found to the steps after it.
{{ shared }}, or a property of 1 item as {{ mb.PrimarySmtpAddress }} .shared.Count -gt 0 . Insert, beside a setting, lists the variables you can use, and functions for text, numbers, lists and dates.tenant, testRun (true in a test run) and lastStatus (the status of the last step).A run makes the changes, and the change log records each one.
--workflow "Name" with --apply runs a workflow and makes its changes, and --set Name=Value sets a parameter. See scheduled runs.Many samples find items that need attention and export them to Excel. Some can also make a change when you set a parameter. Duplicate a sample to keep the original.