Microsoft announces SharePoint Embedded to help corporate devs and ISVs get stuff done
I’ve just come back from ESPC23 in Amsterdam, where I was speaking.
Also speaking was Jeff Teper, President, Collaborative Apps & Platform, known in the community as “the Father of SharePoint”.
It’s a few weeks after Microsoft Ignite so we weren’t expecting too many surprises, but there was one new announcement: SharePoint Embedded. I’m not an expert in SharePoint development but I found this a really interesting new feature and one I’ll be digging into. Here’s why.
The Problem
If you’re a developer in a large enterprise, or an ISV trying to sell into a large enterprise you’ll know the challenges around getting new stuff deployed, particularly if that new stuff includes user data. There’s understandable push-back from those who are responsible for securing access to sensitive data and making sure it doesn’t leak outside of the organisation. That responsibility makes IT admins nervous about any new deployment of things, as it’s yet another attack surface and set of resources they have to worry about. This is why it’s often so hard to get new applications deployed inside enterprises.
What is SharePoint Embedded?
Trust is hugely important here, and IT admins (for the most part) trust Microsoft. They certainly trust them more than a small ISV trying to get their product deployed, or an internal team with a skunkworks project.
Microsoft are leveraging this trust to help these developers, by offering them their content management platform as a safe place to store and access data for their apps.
Essentially, Microsoft are saying: “Developers, you keep your front-end and your business logic, but we’ll give you a set of APIs for storing and accessing data. We’ll keep that data in the customer’s Microsoft 365 tenant for you so you don’t have to worry about it”.
And to the IT admin they are saying: “IT Admins, we know you’re trying to minimise your attack surface but you want to enable developers. Here’s a safe way of doing this. All the same security and compliance capabilities of Microsoft 365 hold true and the data will be living in your tenant alongside data generated by Microsoft 365 apps. This is a safe way for you to work with developers.”
SharePoint Embedded (SPE) is a set of APIs that allow developers to abstract data storage and retrieval of content for their apps.
How it works
SharePoint Embedded APIs are built on top of Microsoft Graph which is already familiar territory for developers. There’s a new storage primitive – a container – which developers can use to store app-specific data.
What’s cool is that these containers are then treated like first-party data when it comes to things like:
- audit and eDiscovery
- autoscaling, high-availability, Microsoft 365 backup and disaster recovery scenarios
- SharePoint Premium workloads such as document processing, eSignature etc.
- Microsoft Search, including the Microsoft 365 semantic index. This means your data can be used by Copilot for Microsoft 365
SharePoint Embedded is already being used today by some Microsoft first-party services such as Microsoft Loop and Microsoft Designer.
How to get started, and what it costs
SharePoint Embedded is currently in public preview, with GA scheduled for mid-2024 (Build maybe?).
It’s a consumption-based model which you’ll want to make sure you’re happy with, it’s based both on the amount of storage you use and the volume of API calls. Billing is performed through your Azure Subscription.
Full pricing is here: SharePoint Embedded Public Preview Terms and Conditions | Microsoft Learn but here’s the basic table of charges (correct as I write this post, check the link to be sure):
- Storage – $0.00667 per GB per day
- API calls – either $0.00050 or $0.00075 per call (there are two transaction classes but no information about the difference between them)
- Express Egress – $0.12 per GB. (No details yet on this, I imagine the standard GET requests are throttled at scale and this represents a better way to export large amounts of data)
As a reference point, a single API call with Azure API Management is about $0.0000035. These isn’t directly comparable because that doesn’t include the storage etc, but it gives you a feel for where SPE sites costs-wise.
It’s going to take some maths and guesswork to figure out if SharePoint Embedded comes in cheaper or more expensive than the consumption-based equivalent costs of running your own database, but even if it’s more expensive, don’t forget the data governance and architecture benefits.
If you’re ready to get started, check out: Enable SharePoint Embedded from Microsoft Learn.