There are many features that you get access to when you use a document management application like SharePoint that you just don’t have in a server file share. One of them is the ability for the owner of a file to be notified when a change has been made to the file. This is especially useful for official corporate documents or templates, for example. SharePoint has had the document approval feature for many years, but it has always been cumbersome. The process involved visiting the document library, looking at the properties of a file, going to the “more” option, then “approvals,” then approving the change. If you were managing any more than a small handful of files with infrequent changes, it would become a hated task in short order. An improvement to this process was needed, and now we have one in Microsoft Flow.
Here’s what the old process looked like before using Microsoft Flow. It was an “Old McDonald’s Farm” situation. (With a click-click here and a click-click there, here a click, there a click, everywhere a click-click.) Imagine staff in a company moving their mouse through the procedure below for each and every document change that came their way! (Those completely unfamiliar with Flow can check out this tutorial from Microsoft.)
A much easier email-based approval method
When a document is saved after being edited, you receive an informative email letting you know which file has been changed, where it resides, who edited it, and a link to the file so you can review it. No one will see the change until you take action. When you are ready you can hit the “approve” or “reject” button.
If you reject the change, you’ll find out that you don’t get an opportunity to send a notice to the person that it’s been rejected. In fact, they’ll never know. The only person that knows is you. This is obviously a problem that will need to be addressed.
After you’ve approved (or rejected) the file, the content of the email changes, so if you’re later browsing through your email you aren’t left to wonder whether you handled the request yet or not.
Here’s how you implement ‘approvals’ via email
Make a library that requires approvals. Kind of an obvious step, but as a reminder, this is where you perform that task. You will find it under “list settings, versioning settings.” Choose the radio button “yes” under “require content approval for submitted items?” You can also select other options to retain the item’s previous versions, set who can see unapproved or draft items, and set the check-out requirement. None are required for the approval process, though.
Back in the document library, click “flow,” “add a new flow from templates” and “see more templates.” Select “start approval when a new item is added,” as seen below.
Open the Flow and immediately click the link at the bottom to go into “advanced” mode. In advanced mode, we’re going to be able to customize the email to add some critical information that will allow the approver to make an intelligent decision. It should look like the figure below.
The diagram that you now see before you is the step through flow chart of how Flow is going to work. Start at the top providing it the information that it needs.
When a new item is created, it asks for the site access and list name. Using the drop-down box you should be able to select the site and list you want to use this Flow on. If it doesn’t find it, don’t use the manual entry option. It won’t work. You’ll need to check to make sure that the account you’re operating under has admin permission to the library. Then come back and try again.
“Start an approval” asks for some basic information. The “item link” and “item link description” are called dynamic content and correspond to the fields you have configured in your list or library.
Now here is where it gets interesting. Remember at the top of this article where I mentioned that the person who edited the article doesn’t get an email letting them know that you’ve approved or rejected it? Well, we have the option to include that in this Flow. It’s in the “condition.” You’ll want to click “edit” to customize the email that they will receive. See the figure below for some suggestions
That’s it! Your Flow is ready to go, but it won’t start working right away. I don’t have a reason for this other than it’s in the queue for processing at Microsoft but it will take an hour, almost exactly in my testing, for the Flow to become active and start to work. So hold off on your testing, go to lunch or something, and when you get back it’s ready to test.
Convert Microsoft Flow into a Team Flow
One more thing about Microsoft Flow that you need to know. The account that you just used to create the Flow is the owner of that Flow. If that account goes away, so do the Flows configured under it. To prevent the loss of this Flow you will want to convert it into a Team Flow.
It’s a simple process. All you need to do is invite someone else to the Flow. Click on the “people” icon next to the Flow. Then enter their name to add them.
The process that I’ve developed is that as soon as I’m ready to declare that a Flow is in production, I add another team member. Those in-production Flow then move over to the Team Flows tab in Flow. The rest of the Flows that I’m still working on are under My Flows. Here we see my Team Flows.
Microsoft Flow is the powerful tool that SharePoint administrators have been waiting for. Previously, this kind of functionality was the expensive purview of developers, but now admins have a great deal of power to bring solutions to long-standing problems or annoyances to the businesses they support. Being able to bring solutions to the business groups is what makes one admin outshine another, and businesses out-compete their competition.
16 thoughts on “Go with Microsoft Flow and make SharePoint document approvals easy”
I’m just experimenting with flows. How do you apply a flow to a document library rather than a list? There doesn’t seem to be any option to do this?
There is a sharepoint connector for document libraries. Try this link, https://us.flow.microsoft.com/en-us/connectors/shared_sharepointonline/sharepoint/
When I have multiple approvers, how do I know who hasn’t approved yet? In SharePoint there used to be workflow tasks to see the status of who needs to approve.
The flow approval process is separate from the sharepoint one so you won’t see it there. My example just shows a single approver but you could create a flow that once approved goes to the next person.
I don’t see the Flow updating the actual Approval Status on the document in SharePoint. Does this publish the document after the request is approved through email?
It does not update the status in SharePoint but it does published the article once approval is given.
I am wondering if I can use this approval method for my scenario:
When an order is made it should be approved if the order can be done or not. If so the approover should set the planned delivery date
How can I do this the most simple way.
Approvals can’t automatically send that type of information back. However, there may be a way to integrate the Planner App to achieve this.
Hi Amy, thanks for the article, it was very helpful.
I’m also testing MS Flow with my Sharepoint List and so far it’s working as expected. Users create/modify an item on a list and managers get an email requesting for approval.
However, I’d like managers to receive on their email the exact changes that have been made by users (such as “the Starting Date of Job XXXX has changed from dd/mm/yyyy to dd/mm/yyyy”).
This way the managers won’t be required to open Sharepoint and search for changes every time a user modifies something.
Any tips on how to achieve that?
Thank you in advance.
You could use regular expressions to have it compare the data and then include that information into the email notification. Personally, I would find that challenging. I would instead just include the information from each field into the notification email and let the recipient determine what has changed. It would at least save them the step of having the visit the site.
If you want to be able to approve Sharepoint list items directly via the mail, check this link https://powerusers.microsoft.com/t5/General-Flow-Discussion/Set-Content-Approval-Status-Action-works-as-expected-but-always/td-p/82356
Rejection seems to stop the entire flow is there any way around this?
I created the flow to email multiple users however if the first user to grab it rejects the document then the flow stop and no one on the list can respond anymore however all users can approve.
Thanks! this was very informative. Is there any way to automate the document\file status in SharePoint?
Your article gave me a start towards my solution, but I am stuck here:
In my case, I have retention labels that I am going going to apply to the documents in sharepoint. So, the document expiry would happen based on the expiry date that Retention label carries.
[example:- Doc A has 1 year retention label. so, 10 days prior to that the author/owner of that document should receive the notification]
How can I achieve this notification/trigger depending on the Retention label expiry.
Thanks in advance
This is a tough one Gurujyot. The Flow will only trigger on a document status change. So 10 days prior to a change there is nothing for the Flow to trigger on. Somewhere something is maintaining the document count down to expiry. Once you find that, perhaps via Microsoft Graph, you may be able to make a custom Flow from it. I’m really unsure how this would work without programming.