Andrew Connell

Slipped in Under Our Noses: SharePoint 2013 Now has the OData/REST $metadata Operator!

When SharePoint 2013 was released, one of the biggest additions was the mostly full adoption and implementation of the OData [REST] API. I've writted in the past how I prefer the OData API over the CSOM API (as well as some of the libraries I use to make life easier), but one knock on them was the lack of one big piece: the implementation of the $metadata operator. The $metadata operator on an OData service is one of the biggest selling points of an OData service. This is what makes the service self-describing. It is what enables Visual Studio to create a proxy for the service. But the SharePoint team elected to not include it due to a few bugs before shipping SharePoint 2013. This was a major let down. However last week I learned very soon before one of my sessions at the SharePoint Intersections conference that it was now present in Office 365's SharePoint Online! I mentioned it during my talk. Rob Windsor was in the room and went digging... unfortunately things aren't as easy as they should be (are they ever with SharePoint these days?) as Rob blogged about late last week showing how to leverage it...

When SharePoint 2013 was released, one of the biggest additions was the mostly full adoption and implementation of the OData [REST] API. I’ve writted in the past how I prefer the OData API over the CSOM API ( as well as some of the libraries I use to make life easier ), but one knock on them was the lack of one big piece: the implementation of the $metadata operator .

The $metadata operator on an OData service is one of the biggest selling points of an OData service. This is what makes the service self-describing. It is what enables Visual Studio to create a proxy for the service. But the SharePoint team elected to not include it due to a few bugs before shipping SharePoint 2013. This was a major let down.

However last week I learned very soon before one of my sessions at the SharePoint Intersections conference that it was now present in Office 365’s SharePoint Online! I mentioned it during my talk. Rob Windsor was in the room and went digging… unfortunately things aren’t as easy as they should be (are they ever with SharePoint these days?) as Rob blogged about late last week showing how to leverage it with a Office 365 based site .

And after my talk, I learned from Microsoft that in addition, it was also included in a cumulative update for those of us with SharePoint 2013 on-premises deployments. Paul Schaeflein went digging and found that the $metadata operator is included in the April 2013 cumulative update .

Awesome stuff! Now time to dig in and see if I can get something working that I’ve wanted to use in SharePoint for a long time… stay tuned!

Andrew Connell
Developer & Chief Course Artisan, Voitanos LLC. | Microsoft MVP
Written by Andrew Connell

Andrew Connell is a web developer with a focus on Microsoft Azure & Microsoft 365. He’s received Microsoft’s MVP award every year since 2005 and has helped thousands of developers through the various courses he’s authored & taught. Andrew’s the founder of Voitanos and is dedicated to delivering industry-leading on-demand video training to professional developers. He lives with his wife & two kids in Florida.