Saving files to SharePoint from Outlook Web Access (OWA) – Part 1

Recently, I was working with a customer who was evaluating Office 365 for a very particular use case.  The scenario was this:
The customer has several “kiosk” type computers in a store, and need to be able to save email attachments directly to the cloud without having to touch the file system of the kiosk.  These kiosks are very locked down and basically just have a web browser with internet connectivity enabled and nothing else.  They need to have an online email application that is capable of taking email attachment files from customers and then collaborating on them internally, and then be able to send the revised files back to their customers directly from the collaboration tool.
The customer was very interested in evaluating Office 365 because a subscription would allow them to have both an email solution and a collaboration solution in the same package (plus a lot more).  Office 365 provides the email solution with Exchange 2013 and the collaboration solution with SharePoint 2013 Online.  Obviously, both of these are hosted by Microsoft, so the customer does not have to worry about installing and configuring the servers and/or farms.
Ok, that all sounds great, but what about saving files directly from an email client into a SharePoint team site document library?  In this case, the customer’s email client will be Outlook Web Access (OWA).  Where is the hook to build something that will integrate with both OWA and SharePoint Online?  Is Microsoft going to let us touch their servers?  Short answer, NO WAY!
The solution:  Office Apps.  This is a new model for running and deploying custom coded solutions for Office and SharePoint, and the cool thing is that the apps do not touch the host servers, i.e. Exchange 2013 and SharePoint 2013.  The idea was to build an Office Mail App that would “light up” when a user is reading an email message that contains one of more file attachments.  Once activated, the app would allow them to identify and save the attachments in the message directly to a SharePoint document library, where members of the team site could then collaborate on the document using all of the goodness of SharePoint.  Once in SharePoint, the users would then be able to send it back to the client directly from the document library once they have finished working on it.
Here is a video showing what this looks like in action:

For those of you out there who want to know the technical details, then here’s all of the good stuff!
The basic architecture of this solution is an Office Mail App that is running on a remote web server that has been framed (i.e. an IFrame element) in to the OWA email message.  The remote web server that contains the special Office Mail App also has some REST web services being served up via the .NET Web API.  Here is what the high-level, physical architecture of the solution looks like:
As you can see from the architectural diagram, there is quite a bit going on when the user selects attachments and tries to save them into the SharePoint document library.  The first thing that happens in the remote web application’s web service is that the attachment files must be retrieved from Exchange.  Once retrieved, then the web service needs to call into SharePoint to save the attachments and any other metadata about the files.  Then the web service call returns back to the client’s browser letting it know that either everything went ok or there was an error.
In my next post, I will go over the technical architecture more closely as well as diving into the code for this solution.

Thoughts on “Saving files to SharePoint from Outlook Web Access (OWA) – Part 1”

  1. Hi Matt,
    Thanks a lot!
    I think the reason why Microsoft does not provide this capability in OWA is because they probably figure that most users have the desktop version of Outlook 2013. In that scenario, the user can simply save the attachment to their file system and then upload it into a SharePoint document library. This is purely my opinion and speculation though!
    I am currently working on part 2, and should have it out by next week.

  2. Hi, did a search for this exact functionality (we use SP doc libs) as it’s still not present in OWA (or O2016) yet you are able to save to OneDrive, which seemed odd. Frustratingly this is the first post that comes up – from 3 years ago!
    I say frustratingly as this really should be OOTB – is this an app that’s available to us?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Tim McCarthy

More from this Author

Subscribe to the Weekly Blog Digest:

Sign Up
Follow Us