It's no secret that Microsoft is making a concerted effort to transition from custom implementations of anything under the Office 365 umbrella. This is a very good thing. It brings overall stability to the platform which is what everyone expects. Organizations pay for a service and they want this service to provide their content and provide it any time they need it.
As a service provider, it makes complete sense that Microsoft has taken this position. As a solutions architect that's trying to give customers what they need out of the platform, this can be a big hurdle. There's a great deal of customizations that you can do through client side development which can impact the look and feel of the site, this is relatively easy. However, implementing lower level integration of Office 365 to external systems can be a little more of a challenge. Enter Microsoft Flow.
Microsoft Flow is being billed as Microsoft's competitor to the IFTTT (IF This Then That) platform. IFTTT has long be heralded as a service that can connect many popular web applications by hooking into their API, listening to these services, then providing reactionary process actions into a separate service based on what's happening in the first service. This allows users to 'connect' completely separate systems to streamline those arduous and time consuming tasks automatically without any user interaction.
Microsoft Flow is currently in a Preview stage but it's looking pretty promising. To get started, just go to https://flow.microsoft.com and sign up with your Office 365 credentials. Doing so will get you connected with Flow and allow you to start creating your own Logic Flows to help automate some of your own mundane daily tasks. Below is a walkthrough of a simple scenario for creating a new Logic Flow to handle email attachments. This Flow is one of the preconfigured actions but gives a good intro into the setup and execution of it all. Once you complete the registration for Microsoft Flow, you will now have the Logic Flow app icon available in your Office 365 App Launcher. Click the app icon to take you to the Microsoft Flow home page.
On the Microsoft Flow home page, you can scroll down and see a few of the predefined templates to start with. I chose the 'Save my email attachments to a SharePoint document library' template for this example. Select the template from the list then click the 'Use this template' to get started.
The template will require that you provide credentials for your Office 365 Outlook account and your SharePoint Online account. For this example, both of these services are within the same tenant. I haven't tested trying to move documents across tenants but this could be a great use case if you're trying to move or publish documents from across tenants.
Once you've made connections to your Office 365 Outlook and SharePoint Online accounts, you will be taken to a page where you can configure the specifics of you Flow. I configured my Flow to take any email attachments and store them within the EmailDropBox document library located at https://cribtoso.sharepoint.com/EmailDropBox. The Site URL field and Folder Path fields are both auto populated and manually editable. I did notice instances where the Site URL drop down would include items that weren't 'really' a site URL and if the site URL wasn't properly entered, the Folder Path pop out menu would have a cryptic error message. This should be expected; it is just a Preview after all.
Once you have the Flow all configured and ready to go, click the Create Flow to save it. You should now be able to see your new Flow within the 'My Flows' listing.
Now that our Flow is configured and ready to go, let's give it a little test. I'll go ahead a create a test email to myself and include a document as an attachment. Once that email is received with the attachment, boom, this document is dropped within the SharePoint Online document library. Nice.
Lastly, even though our test ran successfully, the Logic Flows provide a listing of the history of execution for the Flow. This is really helpful with the debugging and monitoring of your Flows to figure out where any errors might be coming from.
Even though Microsoft Flow is still in its infancy, I'm optimistic of its future as a platform. I don't believe that it will ever over take IFTTT but I doubt it's meant to. At the time of this writing, there are roughly 35 systems that Flow will integrate with compared to the 300+ systems that IFTTT connects to. That's all right though, I see Flow positioned as a platform to get and share data between external systems with Office 365. Office 365 and Azure will likely always be the focus of Flow. Having a strong automation interface between Office 365 and external systems will only speed to market the development of business solutions resulting in a greater adoption rate of the platform. It's a win-win for all involved.
What sort of business processes can you see being automated with Microsoft Flow? Let us know in the comments.