The Beginners Guide To Power Automate V 2
The Beginners Guide To Power Automate V 2
Contents
Introduction ........................................................................................................................................ 2
Triggers .............................................................................................................................................. 34
Actions ............................................................................................................................................... 42
Controls ............................................................................................................................................. 48
Variables ............................................................................................................................................ 53
1
Introduction
“Focus on being productive, instead of busy.” – Tim Ferris
Productivity: The Holy Grail which all businesses and workers alike strive to attain. A quick
book search will give you over 30,000 results of resources aimed to help you discover how to
be more productive. The typical full-time worker in the U.S. works an average of 47 hours a
week, considerably over the standard 40-hour work week. How does one ensure that their
work is getting done while still having time for their personal life? You have to figure out how
to Work Less and Do More.
With Power Automate, you can connect and automate processes across over 200 different
applications ranging from social media services such as Twitter, FaceBook, Youtube, etc. to
line of business apps like Saleforce, GSuite, and more.
You can access Power Automate via most modern web browsers or the mobile application
available for iOS and Android. It is a cloud/mobile tool, so there is no desktop version. The
concept of how a workflow operates are fairly simple; you define what should trigger your
workflow then list out what actions should occur after your flow is triggered.
2
The true power in the Power Automate platform lies in the fact that a typical business user
can build out these powerful workflows and business processes without having to know or
write a single line of code. Power Automate is a true end-user tool. If you know your desired
business process or task, you can use the simple point and click interface in Power Automate
to work less and do more!
To make it even easier for you to get started with Power Automate, Microsoft provides
hundreds of pre-built templates for you to use. For an example of some of these templates
see the picture below:
Using one of these templates is as easy as clicking on the template and selecting the Create
Button.
Are you inundated with emails and want to automatically move any email attachment to your
OneDrive, allowing them to be organised and not lost in the shuffle? There’s a template for
that! This picture shows how you create a Flow from a template:
3
As you can see in the next picture, through this template, Power Automate has already
provided you with all of the steps needed to move over your attachments to OneDrive. In this
case, the only thing you need to tell it is the folder in your OneDrive you want to save the
attachment files to.
4
If you come from a SharePoint background, you might be familiar with another workflow
tool, SharePoint Designer. SharePoint Designer is a tool that allows you to create workflows
for data stored in SharePoint. With SharePoint Designer, there are only three ways to execute
or trigger your workflow: 1: Manually 2: When an Item is Created or 3: When an Item is
Modified. There are also a limited amount of pre-defined actions that you can utilise in your
SharePoint Designer workflows.
5
Power Automate can handle almost all of the same workflow functionality that SharePoint
Designer offers plus more. One thing you might have noticed that is missing from SharePoint
Designer workflow is the ability to trigger your workflows on a set schedule, such as daily or
once a week. Power Automate can accomplish this by using the Recurrence Flow trigger.
Power Automate Buttons are probably the most powerful feature of the Power Automate
Mobile App. They provide you with a way to manually trigger a Flow and perform a set of
actions. If an input is necessary for the Flow, you can configure an input screen to prompt the
user to enter information. A good implementation of this would be managing contacts.
Picture this: You are at a conference, meeting a lot of people and collecting lots of business
cards. What if instead of collecting multiple business cards, that you’ll inevitably lose, you
could click a button on your phone, enter the person's contact information and have it
automatically add that person to your Outlook Contacts, a SharePoint contacts list and your
MailChimp mailing list? That is a perfect use case for a Power Automate Button!
When you click on the "Save Contact" Power Automate button, you are prompted with an
input screen (both shown on the next page). Once you enter the contact information and click
6
"Done", the contact information will automatically be added as an Outlook contact, added to
your SharePoint list and your MailChimp mailing list.
You’ve seen just a few of the possibilities of Power Automate. Here are a few more examples
of things you can do with Power Automate:
7
• Automate approvals
• Automatically post to social media (Twitter, FaceBook, LinkedIn) when you publish a
new blog post or video on YouTube
The Per User license costs $15 per user, per month, and will allow that user to create an
unlimited number of flows utilising the full capability available to the platform. The same
rules apply as they did previously, though, that if you create a flow that requires premium
functionality, then the users of the flow will also need it.
While this isn’t as expensive as the same plans in Power Apps, you are still going to be quickly
pushing up your monthly spend if you’re having to license all of your users, especially if you
only have a few flows which make the most of the premium services.
Just like Power Apps, we have a new type of license which is the Per Process license, which is
intended to provide a more cost-effective approach to licensing just a number of processes.
8
Per user plan with attended RPA
UI flows, which are the new robotic process automation capability in Power Automate will be
generally available worldwide on 2nd April 2020. UI Flows enable you to connect Power
Automate to legacy applications and allows users to ‘record’ processes in older applications
such as clicking buttons or entering data into input forms, similar to recording macros.
This license allows users to create unlimited flows exactly like the Per user plan but also
includes the ability to design and use these new UI flows.
A summary of the current Power Automate licensing structure can be seen below. To see
more in-depth information on licensing go to https://us.flow.microsoft.com/enus/pricing/.
9
Office 365 license
Access to Power Automate is also included in the Business Premium, Business Essentials, F1
Plan, and the E1-E5 Enterprise Plans in Office 365. This means that if you have one of these
subscriptions you also get access to Power Automate and can design and run flows.
However, with these plans you only get the standard connectors so the per user or per flow
plans mentioned previously must be purchased separately if you will need to access the
premium connectors.
10
All of the Office 365 programs such as SharePoint, Outlook, OneDrive, etc. have their
connector. There are also numerous connectors to non-Microsoft cloud tools such as Twitter,
Dropbox, Salesforce, and MSN Weather to name a few. There are currently 243 different
connectors in Power Automate. The picture below outlines just a short example of some of
the most common connectors.
Types of Connectors
There are two ways connectors are grouped: Standard and Premium. As discussed in the
previous chapter on licensing, there are several premium connectors which require an
additional Power Automate Per User license to use (previously Plan 1 or 2). Some examples of
premium Connectors include DocuSign, SalesForce, Eventbrite, MailChimp, Infobip, Service
Now and Stripe. To utilise these premium connectors, you will not only need a subscription to
11
their services but also a Power Automate Plan 1 license or higher to consume them in Power
Automate.
Components of a Connector
Connectors are comprised of two different elements: Triggers and Actions. A trigger is a
mechanism to perform an action. An example of a trigger could be “When a New Item is
Added to a SharePoint List”. Actions are changes performed by the users. For example, when
you send an email, add an Item, delete an Item, etc.
Managing Connections
You can see a list of the connections that you’ve set up in Power Automate by clicking on the
“Data” tab and “Connections”. The Connections screen will show you a list of the connections
that you have configured and their status.
To add a new connection, you can select the “+ New Connection” button from the
Connections tab. You can browse through the list of Connectors and select the plus icon next
to the one you want to add.
12
When you select add, a dialogue box will pop up giving you additional details about the
connection with the option to cancel or create the connection.
After you select the “Create” option, you will be taken to a screen to log in with your
credentials to the connectors site.
13
Once logged on with your credentials, you select “Allow” on the dialogue box, and the
connection will be added and ready to use.
14
Connecting to On - Premises Data
In addition to the over 200 connectors to cloud-based services, Power Automate also gives
you the ability to connect to on-premises data like SharePoint and SQL. You can connect to
these on-premises data sources by configuring the Data Gateway. This configuration will
require at least a Power Automate Per user or per flow license to set up. For more information
on setting up the on-premises data gateway access the link below:
https://docs.microsoft.com/en-us/flow/gateway-reference
To set up a gateway, click on the Data tab in Power Automate and select the Gateways
options. You will then redirected to a page where you can download and install the
onpremises data gateway.
Custom Connectors
Power Automate provides you with ways to create automated workflows connecting to over
200 different data sources. But what if your workflow requires access to a system for which
there isn’t a built-in connector? To support this need, Power Automate gives you the ability
to build custom connectors with their own triggers and actions. Building custom connectors
15
does require a bit of knowledge about API’s and JSON. To learn more about how to develop
a custom connector you can reference these links from Microsoft:
Power Automate includes a PowerApps Trigger which allows you to execute a Flow from your
PowerApps app. There is also a Respond to PowerApps action in Power Automate which
enables you to send data back to PowerApps. The Event Scheduling app is one example.
When you click on a button to save a new event, you want to send out a meeting invite and
update an item in SharePoint. A perfect example of PowerApps and Power Automate working
together and one of many possibilities where these complement each other so well.
16
Let’s take a very simple example. You want to click a button in PowerApps and have it call a
flow to send an email. In this scenario, you would select the “Click a button in PowerApps to
send an email” option. The values for who to send the email to, subject and body need to
come from your PowerApps application.
To make that happen, click into the properties in flow and select the “Ask in PowerApps”
option in the Dynamic Content window as seen in the screenshot below. This functionality
allows you to pass data to your flow from PowerApps.
17
To connect your flow in your PowerApps application, select the item you want to click on to
trigger the flow then select the “Actions” menu and “Flows” as shown here.
18
Once Flows is selected, all of the Flows you have built using the PowerApps trigger will appear
on the right-hand side as shown below.
19
Clicking on the Flow you want to execute will add it to your formula bar in PowerApps. The
formula bar uses intellisense to show you what variables the Flow is expecting to be passed
in.
For example, in the screenshot below, it requires you to enter an email address, subject and
body.
20
The screenshot below shows what it would look like with the variables populated correctly.
21
We can take this example a step further and push back a message to PowerApps to confirm
the email has been successfully sent.
Accomplish this by inserting a “Respond to PowerApps” action after our send email step in
the Flow as seen below:
22
The Respond to PowerApps action enables you to configure outputs to send data to
PowerApps.
23
If you wanted to return a yes or no response, then you could add a Yes/No Output and set the
value to Yes as shown below.
This is just one example of how you can use Power Apps and Power Automate together.
24
The software will need to be downloaded and installed on a computer that will be available
whenever the Flow requires it. Currently, you will also need a Power Automate per user or per
flow license to access on-premises data using a data gateway.
25
Installing the Gateway
When you execute the download, it instigates a wizard to set up the gateway with a start-up
very similar to most Microsoft installations.
The next screen will ask you to name the Gateway. Select a name which gives the Gateway
some context.
26
This screen also asks for a recovery key, take a note of it, you might need it in the future.
The gateway is now ready. The gateway software must be running and showing active for the
connected flows to work.
27
Using the Gateway in Power Automate
In this section, we will look at three different connectors that can use the gateway, file
system, SQL Server and SharePoint. Each is slightly different.
28
SQL Server
When you add a SQL Server action to your flow, it will need details to set up the connection.
Tick the Connect via on-premise data gateway and the gateway box will appear at the bottom
of the box.
29
File System
To connect to files stored on-premises, you will need to use the File System actions. The first
time you add one of the File System actions, it will ask you to set up the connection.
Note Azure File Storage has the same logo but is not the same; you need File System.
If you already have a connection set up with the right credentials then in action you can click
on the ellipsis in the top right of the action and select a connection to use.
30
SharePoint Server
You can use the same actions as you use for SharePoint online for SharePoint server. Click the
ellipsis in the top right corner of a SharePoint action and select Add new connection. The
action window will change with a tick box, tick Connect via an onpremise gateway and more
boxes will appear to create the connection. Future actions will have the connection listed
under My connections.
31
View Gateway Information
In the Power Automate web page, you can navigate to Data and Gateways to see a list of your
gateways registered. A gateway can be shared by clicking on the ellipsis menu and selecting
Share.
32
Clicking on the gateway name will provide further details. You also can see the connections
that have been set up using that gateway.
Note of Caution
Gateways are a very useful tool in the flow toolset, but they also can expose data within the
organisation by creating a secure but possibly unknown by IT gateway into your data.
It is possible to restrict which users can create gateways although by default this is
unrestricted.
Currently, there is no way to get usage stats from gateways across a business, but this feature
is on the Power Automate roadmap.
33
Triggers
When creating a new flow from blank, i.e. without using a template, the first thing you need to
do is select a trigger. As the name suggests, the trigger is what will start your flow, and
Microsoft currently provides a choice of hundreds. These range from events in Office 365 apps
and services such as when an email is received, or an item added to a SharePoint list through
to external triggers for instance when a tweet has been posted, or a file uploaded to a
Dropbox folder. There are also triggers that allow you to run flows on a schedule, from
PowerApps and using buttons in the Power Automate mobile app.
When you create a new flow, a small subset of the most popular triggers is presented to you,
with the option to see all available triggers by clicking the Search hundreds of connectors and
triggers link:
You can then use the search bar to find triggers based on the service they connect to or the
actions you want the trigger to fire on:
34
35
The triggers are also categorised to make it easier to find if you’re not sure what to search for
using the search facility. Aside from the All tab, which shows every trigger, there are the
following categories:
Built-in
These are triggers that are part of the Power Automate/PowerApps environment and don’t
necessarily need to wait for something to happen in another service to start the flow. See
examples of the most popular built-in triggers below:
36
Power Automate button for mobile
Power Automate has a mobile app that is available on iOS and Android. This trigger enables
you to create a Power Automate button started by pressing a button in the mobile app. Once
created you can start it by pressing the corresponding button that will appear in the Buttons
section of the mobile app:
37
PowerApps
This trigger allows your flow to be called using a button or link within a custom PowerApps
app. When you build your flow using this trigger you can use a dynamic content option called
Ask in PowerApps, which allows you to use data from your app within your flow. For example,
you could send an email and populate the recipient details with a people picker field in your
app:
Schedule
You may want some flows to run at specified dates and times and this trigger allows you to do
this. Once you’ve added this trigger to your flow you can set the interval and frequency, which
tells your flow when to run:
38
The example above will start your flow every six hours. You can also add a different time zone
if required but if left blank the default time zone for your Office 365 tenant is used. If you want
the schedule to start at a particular time in the future, you specify this in the Start time field.
If you choose daily or weekly frequencies, you can set the days and times that the flow will
run. The trigger below will start your flow each week on a Monday at 8:30 am:
Standard
The triggers in this group are available as part of every Power Automate plan, including the
free plan included with Office 365. The standard triggers include Microsoft and Office 365
39
services and apps as well as other common ones such as Twitter, Facebook, Dropbox, Gmail
and RSS.
As this is the biggest group of triggers, there are too many to list each one and their purpose.
As with everything else in Office 365, these triggers are constantly updated and added to by
Microsoft, but their basic premise remains the same:
For most of the triggers the ‘when something happens’ is self-explanatory. If, however, you’re
not completely sure what the trigger does you can click the information icon to the right of
the trigger name, which will give some more detail:
Premium
These triggers work in the same way as the standard triggers but are only available to users
that have the paid Power Automate per user or per flow Plan. The premium triggers include
services such as Adobe Creative Cloud, JIRA, MailChimp and the Microsoft Common Data
Service (CDS).
Custom
By default, there are no custom triggers setup as these need to be manually created. To
create these requires knowledge of webhooks and APIs and is beyond the scope of this book,
40
but if you’re interested Microsoft provide documentation on how to create custom
Trigger Inputs
Using a manual trigger to run the flow, gives an option to provide inputs at the time of
running the flow. Examples of triggers that this applies to include Power Automate button for
mobile, PowerApps and a selected file. When you add a trigger of this kind you will have an
option called Add an input:
When the end user runs the flow, they are prompted to enter the inputs that you have
specified. This information can be potentially utilised in subsequent steps in the flow. In the
above example, we could add an action to send an email to the email address entered in the
Manager Email input.
41
Once you’ve configured a trigger, using a combination of actions, controls and variables you
can specify what you want the flow to do.
Actions
Once you’ve configured your chosen trigger you then get a button that allows you to add a
new step to your flow:
As with the triggers you’ll then be presented with a box displaying all the actions, with the
ability to search and browse the different categories:
42
A flow can take actions which can be divided into two main categories:
Do something - Some examples of doing something, create a contact, send an email, create a
file, move a document or post a tweet. When you add an action that does something you then
configure it to set the relevant fields or metadata, which vary depending on the action.
Get or list something - Examples of actions that get or list something are List files in a folder,
Get attachments and Get Manager.
It’s quite common to use a combination of actions that both do something and get or list
something, especially in longer more complex flows. A simple example of how this is shown
below:
43
In this example, the flow uses the Office 365 Users connector to get the manager of the user
who manually triggered the flow. An email is then sent to this manager. You can also see that
fields from each step in a flow can be passed onto the next step. In the example above the
User name field from the trigger is passed to the Get Manager and Send email steps. The
output from the Get Manager step is also passed onto the Send an email step.
Using dynamic content means you can tailor what happens in subsequent steps based on the
values provided previously.
You can also build on this concept further by manipulating dynamic content using
expressions. Clicking on the Expressions tab brings up a list of expressions; these can be
grouped into various categories including string, logical and date/time functions.
44
Clicking See more next to a category name will show you the full list for that category.
Each expression also has a short description which tells you its purpose.
45
In this example, the addDays() expression is used to add 14 days to the Event Date value
provided by the user who triggers the flow. The output from this expression is then used to
populate the start time of an event created by the flow.
Parallel Branches
In all the examples shown so far, each step of a flow has started after the preceding step.
Sometimes you may need actions in a flow to run at the same time as each other, by using
parallel branches this is possible. To create a parallel branch, you first need to create the first
action that you want to run in parallel with another and then click the + icon above this
action. You can then click Add a parallel branch:
46
Performing this function allows you to add further actions that will run in parallel, as in the
example below where an email is sent at the same time as an event is created:
47
Controls
Controls are special built-in actions in Power Automate that can be used to control how other
actions behave and interact with each other. There are currently six control types, which can
be accessed by going to the Built-in category of actions and clicking Control:
Condition
This control is the equivalent of an if statement and allows you to check the value of an input
and then perform one of two sets of actions based on this check. The input that is checked
can be passed from any preceding step in the flow and expressions can also be used as part of
this.
48
This flow is checking the department of the manager obtained by the Get manager (v2) step.
If the department of this manager is marketing, then it sends an email, if not it creates an
item in a SharePoint list. You can also use the Add button in the condition step to add
multiple checks with a combination of and/or statements if required.
Apply to each
As the name suggests, this control allows you to perform a set of actions on a number of
different items. This control is normally used in conjunction with a Get or list something type
of action. The image below shows how a list of all files in a OneDrive folder is passed to the
Apply to each control. Each file would then be deleted as this is the action in the Apply to
each section, but you could perform any number of actions here.
49
Do until
This control will perform a subset of actions until a value meets a specified condition. In the
example below the Do until step is checking the Complete field of a SharePoint list item.
Using the Delay action, it periodically checks if the Complete field is set to Yes. Once this
condition is true, the Do until step will end and the flow can then move onto the next step,
which in this case is sending an email:
50
It is important to note that one of the steps within the Do until section is Get updated items.
Do until has to perform a check each time so it gets the updated version of the list item and
can verify that the appropriate value has changed.
51
Scope
When you start creating larger, more complex flows, scopes can make it easier to keep track
of the various steps. A scope allows you to group actions logically, so it makes it easier for you
and maybe other IT admins to see what each part of the flow is doing. If you’ve ever used the
older SharePoint Designer workflows, you can think of scopes as the equivalent of stages.
Switch
Switch is the equivalent of a switch case used in various programming languages and is
similar to the Condition control. The Switch control allows you to check a single field for
multiple values and then run a subset of actions depending on the returned value:
In the example above the Switch, control is checking the Status field of a SharePoint list item.
If the status is not started, then an email is sent, but if the status is compete, then a tweet is
posted. You can use the default case to specify what actions should be started if none of the
other cases is matched.
Terminate
The Terminate control allows you to stop a flow before the end. You can also specify the
status and any messages reported if this action is carried out:
52
If this control is used then any subsequent steps in the flow will not be completed. It's
normally used with a condition or switch as you may want to end the workflow early if certain
conditions are met.
Variables
Variables can be used to store values that can then be referenced and manipulated in
multiple places throughout the whole flow. The value in the variable won’t be retained when
the flow has finished but can be written to a field in a list item or similar.
The first step when using variables is to use the Initialize variable action:
Using this action allows you to declare the name of the variable along with the type of data it
will hold. You can also set an initial value that will be stored in the variable, but this is
optional.
53
Once you have initialised a variable in a flow there are then many ways to update the value of
it:
Append to array variable – add a specified value to the end of an array variable
Append to string variable – add a specified text string to the end of a string variable
Set variable – completely replace the value of a variable with the specified value
When initialising and setting the value of variables, you can either use static information that
you enter yourself or use dynamic content and expressions as mentioned earlier in this
section.
54
2. The first step is to select the type of approval. Only making a difference if the approval
is going to multiple people. Do you need to wait for everyone to reply or will the first
reply be the final reply?
55
3. Enter in a Title for the approval, who is the approval assigned to and who the
requestor is. Multiple values for the Assigned to should be separated by a semicolon
(;).
4. Enter the details of the approval request. Markdown can be used for formatting the
details. Details of Markdown support can be found here. In my experience, the most
common mistake in Markdown is not leaving spaces between the markdown and the
text.
5. If the approver has access to the related item, then you can populate the Item link and
Item link description. Please note the approver doesn’t have to have access to the
item but does need to have an account that can access Power Automate.
56
1. Straight after the Start an Approval, add a Condition action.
2. Enter in the condition details of Response, from the Start an Approval, is equal to
Approve.
Please note you need to type in Approve manually and it is case sensitive!
3. Add actions to the if yes and the If no boxes. Often this includes emailing the
requestor. When the approver sends their reply, this can include a comment; this
could be included in the email. Any actions, including secondary approvals, could be
added.
Email Request
An email is sent that includes all the details from the flow action and includes Approve and
Reject buttons.
57
Clicking either button will show a Reason box and a Submit button.
58
Clicking Submit will change the email to show your response and the reason given.
On Website
On the Power Automate site, click on Approvals under Action Items in the left-hand side
menu to see any outstanding approvals.
59
Clicking on approvals opens up a tab to give various options.
60
Limitations
Approvals are limited by the general limitations mentioned elsewhere in this book. Meaning
they are limited to 30 days and then they will time out. Clicking on Approve or Reject on a
timed out approval will give an error.
61
You can restrict the approval timeout to a short time and have actions that react to the
timeout. That is beyond the scope of this introduction book.
On the home page for Power Automate, you can find the templates by a few methods.
2. Click a suitable Featured Collection to see a list of templates based around a business
concept
62
3. Click a Service to show templates that use that service
Template Icons
Each template has a square icon showing you all or some of the connections used within that
template. The example below shows that this template uses Outlook, O365, and
Notifications.
Once you have found a template you want to build, click on the icon.
A longer description of the flow template is detailed in the next screen. Below lists the
connections used and the account also used for each connection.
63
The above example is using connections I have already logged into the browser. If the
connection is a new one or you are not logged in it will show a Sign in button for you to add
credentials.
64
Once all the connections have signed in you can click Create Flow. You are then prompted to
one of 2 options.
If your flow requires no editing to start, you will be taken to the flow details page. You can edit
the flow by clicking on Edit in the top right corner, or you can start testing your flow, e.g.
asking your manager to email you.
If your flow requires more details, such as a SharePoint site address and library name, you
will be directed to the flow editing screen.
65
Some steps will require more information and will show boxes to be filled in. Other steps will
not require editing. Before you can save your flow, you will need to fill in all the required
information.
Below you can see an example, which was created using Send a customised email when a
new file is added template. There is a trigger step that requires more information and 2 action
steps that already have enough information. Different templates will have different
combinations.
If you want to edit the sections that have default information. Click on the options to Edit or
other similar links.
66
Naming your Flow
Flows by default will have the name of the template, normally this will need to be changed.
While in the Edit screen click on the name in the top left and type in a new name.
Beyond Templates
Once you have explored the templates, you probably will want to create flows starting from a
blank flow.
3. On the next screen click on Create from Blank (yes they want to make sure)
4. Find your trigger to start designing your flow. The minimum a flow must have is one
trigger and one action.
67
See further in the book for an introduction to triggers and actions. Remember to rename and
save your flow as you go.
Team Flows
When you create a flow, only you can edit the flow or see the run history. Not good practice
for a process that could be part of business-critical solutions. The obvious answer is to share
flows and make them into team flows.
There are some security considerations to think about, and these should be part of the Power
Automate strategy within your company.
3. Enter the name of the new co-owner and click on the name to add the user.
68
4. READ THE NEXT DIALOG CAREFULLY and see the notes below regarding security.
69
Security Notes
What the above dialogue means is that the co-owner could edit the flow and add new actions.
These actions would use the existing connections; for example, they could add an action that
sends an email from you to anyone.
A co-owner can also add other new co-owners. A co-owner can also see the details of any flow
and any data passed as part of that flow.
70
Be careful who you give access to your flows or start using some generic accounts or explore
other options on how to export flows. I don’t wish to scare people away from sharing their
flows, but it is essential to consider the security aspects.
Team Flows
Any flow you have shared or has been shared with you will be listed under Team Flows.
Clicking on a flow to view the flow details page will also show who has access.
3. Click Add.
71
Run only Users
If a flow has a SharePoint connection, you can add users who will be able to run the flow
using their connection to SharePoint. To access this:-
1. From the Power Automate details page, under Manage Run-Only Users, click add a
new user.
2. In the pane that appears, enter the names of the users or groups.
4. Click save.
72
Removing Access
The co-owner list requires maintenance and co-owners could potentially require to be
removed as job roles change.
73
Note
Check all connectors still work as the user might have been providing access for a connector.
A co-owner cannot remove the main owner’s access from a flow.
Flow Checker
Before you even try running your flow, the Flow Checker will alert you to any errors or
warnings in your flow, such as missing values within actions, or potential
performance/reliability issues. If there are issues, you’ll see a red dot on the Flow Checker
icon in the upper right area of the Flow Editor, and you won’t be able to save or test your flow
if there are any unresolved Errors.
74
Here’s an example of an error where the flow was to create an item in a SharePoint list, but
there was no value specified for the Title field, which is required:
75
If it failed, you could click on the Failed row in the RUN HISTORY to see a diagram of the flow.
Each action will have either a green checkmark or a red X in the upper right corner. Find the
action with the red X and click on it to expand it and see what the problem was.
When you have clicked on the failed action, a pane will open on the right which gives you
more information about the error. In this example, here’s what the Details pane reports:
76
We see from this Details pane that there was a problem with the email addresses required by
the Send an email action, and we can see from the Inputs listed within the action that the To
field is blank, meaning that there was no address passed to this action from the previous
actions. So you can then look into why that is, and click the Edit icon in the upper right to go
back to your flow and try to fix the problem. You can also click on ”Resubmit” from this
77
screen, which would be similar to the “Test using data from previous runs” feature as
discussed in the next section.
When you click “Test”, you can select to trigger the flow again yourself or to use data from a
previous flow run (usually your best bet), whether it failed or succeeded.
Something to watch out for when using Test is that if you have added a new Connection
within the flow since the previous flow run, then you need to re-trigger the flow rather than
use data from previous runs. Otherwise, you’ll get an error similar to this:
78
InvalidTemplate. Unable to process template language expressions in action
'NewActionYouAdded' inputs at line '#' and column '#': 'The template language expression
‘SomeExpression' cannot be evaluated because property
While the flow is running during a test (or at any time), you’ll be able to watch it step through
the actions on the screen, and (hopefully) a satisfying green checkmark will appear on each
one!
But what if you run into a problem you don’t know how to solve? It might be an error not
discussed here, or just that you’re unsure how to approach an automation scenario. Your best
bet for help is the PowerAutomate Community forums, where Power Automate experts and
aficionados, as well as Microsoft staff, are always watching for questions to help answer. You
can also report bugs and make feature requests here.
79
not need to have a PowerBI license to view them. However, you do need to have a Power
Automate per user or per flow Plan license to view any analytics.
80
OR
If you try to go to Analytics, but you do not have the correct license, you’ll be prompted to
start a free trial of premium Power Automate, but you should probably check with your Office
365 administrator before doing that.
When you arrive at the Power Automate Analytics page, you’ll see several charts on the
Usage tab:
81
Note that you can select a timeframe of the past week, the past two weeks, or the last 30
days. The available analytics are:
2. Number of runs (a doughnut chart which shows the proportion of successful, failed, or
cancelled flows)
3. Flow runs trend (a stacked bar chart showing successful, failed, or cancelled flows by
day)
Each chart has small icons in the upper right corner (when you hover over them), which allow
you to expand the size of that chart, or access a menu of options for that chart:
82
Using the 'More options' menu, you can export the underlying data to a CSV file, display the
underlying data in a table, spotlight that chart on the page, or change the sort order and sort
field (i.e. by date/status or by the number of flow runs).
Switching to the Errors tab at the top of the analytics page allows you to see charts which
display the types of errors which have occurred on this flow. Note that the number of errors
reported might not match the number of failures, because things like failed checks (where
Power Automate is unable to check for the trigger occurrence) do not count as failures. See
the Power Automate Analytics now includes Error Details section of this article for details
on using the Errors tab.
To get to the Power Automate analytics, select Power Automate from the Analytics dropdown
menu:
83
You can change both the timeframe and the environment by clicking on Change
Filters (or on the filter icon in the upper right), which opens a filter pane on the right:
84
There are currently six types of analytics available for Power Automate, accessible via the
tabs across the top of the page. Giving you access to some really useful information about
your organisation’s flows! Note that just like the individual flow analytics, each visualisation
has an Expand icon and a More menu, which allows you to export/display the underlying
data, spotlight a chart, or sort in a different way. Also, generally speaking, you can hover over
bars or data points to view the values, and you can click on the legend text to highlight that
aspect of the chart. Also, you can right-click on elements of the charts and choose to Include
(show only that data point) or Exclude (show all but that data point).
Runs
This tab shows Daily, Weekly, and Monthly runs, as stacked bar charts (broken down by
successful, failed, or cancelled), with a line denoting total runs.
85
Note that although the maximum timeframe filter you can select is 28 days to retrieve
individual flow run data, the Weekly and Monthly runs reports display aggregated data much
further back.
86
Usage
The term Usage here means something different than on the individual flows. Shown here is a
breakdown of the types of flows in use (for example scheduled, manual/button, or system
events).
A list of the names of the flows in use (I.e. those which ran) during the period (sorted by the
number of runs), and finally a line chart of flows in use by day during the period (that is, the
number of flows which ran, not the total runs).
Created
These are the same charts as on the Usage tab, but showing the number and types of flows
created during the period.
Errors
This tab displays a breakdown of the types of errors which occurred during the period, and
which flows errored. Note that this includes all types of errors, not only those causing failures.
87
You can click on a heading in the table to sort by that column – the table in this screenshot is
sorted descending by Error Count, to see which specific flows have errored the most.
Shared
Here you can see the number and type of flows shared in your environment, and specifically
which flows those are.
Connectors
This analytic is quite interesting – it shows the specific connectors used during the period,
how many flows use each connector, and the individual connections (calls to the connector).
Note that you may see a lot of Office365 connections, as this is related to Exchange and there
are many calls to that connector.
88
In summary, the various Power Automate Analytics dashboards give you plenty of
information about your own and your organisation’s flows.
Limits
The best place to look for the current limits in Power Automate is the official Limits and
Configuration reference article, which lists limits broken down by topic. You can find some
additional limits regarding accounts in the Billing Questions article. Here are some key limits
which flow makers often run into and should be aware of:
89
Run duration 30 days
90
Flows per account 250
Limits such as the number of flow runs allowed per month, flow run frequency, and
availability of some connectors, depends upon the Power Automate license you have.
Limitations
While Power Automate does a lot of things very well and goes beyond many other workflow
solutions in terms of connected services, it does have some limitations; there are some things
it cannot currently do which you should be aware of before beginning to construct a flow.
One example is a “state machine”. That is, there is not currently a way to create a flow which
is directly based on transitions from one state to another (though you may be able to use
looping to emulate this).
Another fairly common ask, which Power Automate does not (yet) allow, is the ability to copy
a flow from one SharePoint list to another or include a flow in a SharePoint site template.
It should be noted that the Power Automate team at Microsoft are continuously working on
new features, so things which Power Automate cannot do right now may be possible in the
future. So keep an eye on the Product Roadmap! And did you know you can help influence
future plans by contributing and voting on ideas in the Power Automate
91
Community? If you find there is something you’re missing in Power Automate, visit the Ideas
forum and search to see whether someone else has already suggested it so that you can vote
on it. And if it hasn’t yet been suggested, add it yourself and promote it on social media to get
votes.
FAQ
Hopefully, most of your questions have been answered within this book!
However, if not, Microsoft has included a list of some of the most frequently asked questions
within the Power Automate documentation. Here you can get answers to general questions
about the tool itself, functionality, and licensing.
Probably one of the most frequently asked questions is about credentials for the connections
used within flows. That is: What happens when the person who has created all of these flows
leaves the organisation? The first answer is: Flow makers should be trained and encouraged
to add additional owners to flows which are used organisation wide so that they become
Team Flows. That will allow the other owners to edit the flow in the future if necessary. Also,
an administrator can take ownership of a flow from the Power Automate Admin Center. But
it’s true that the connection credentials would need to be changed if the creator’s credentials
were no longer valid. Another possibility is to create flows using a service account rather than
an individual’s account, with the caveat that you might not want everyone having access to
shared credentials for many service connections.
92