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!