PowerObjects Blog 

for Microsoft Business Applications


The New CRM 2016 Web API is Here and It’s Better Than Ever!


The New CRM 2016 Web API is Here and It’s Better Than Ever!

Post Author: Joe D365

One of the biggest updates for developers in CRM 2016 is the new REST Web API endpoint. This is a promotion of the preview item that was available for CRM 2015 Update 1 (online only) customers to an officially supported feature. The new endpoint is being positioned to eventually replace the current SOAP and REST-based endpoints that were introduced in CRM 2011 as the main way of interacting with CRM for both internal and external data access. In today's blog we will go into more detail about the new Web API and what it means for you. So let's get started!

What does this mean for developers?

If you have existing code talking to CRM, there's no need to panic, as Microsoft hasn't changed anything yet. When they do finally decide to pull the trigger, in all likelihood, we'll get another full version "grace period" to upgrade code much like the change that happened when going from CRM 4.0 to CRM 2011. The 2011 SOAP endpoint is still a first-class citizen in CRM 2016, however, the 2011 REST endpoint has officially been marked as deprecated. This means there is a good chance that in the next major CRM release it will be removed. Any new development against the REST endpoint (most commonly JavaScript) should be done targeting the Web API endpoint to avoid having to update code later on.

So why change now?

We can look at this from a couple of different angles. Microsoft's "Mobile First, Cloud First" strategy could be an underlying reason. More and more people consuming services from their mobile devices inevitably puts more demand on software makers to deliver that data faster, more efficiently, and to a wider array of devices. The Web API endpoint directly addresses some of those demands. The data being transferred with the 2011 SOAP endpoint is XML, which contains a lot of extra pieces besides the actual data to form its structure, while the 2016 Web API endpoint uses the JSON data format. Arguably, JSON is the preferred format of the modern web at the moment over XML due to its light-weight nature. Lighter weight means less data transferring from the server to the device. Less data generally translates into better performance and less cost to the consumer when considering the data caps mobile carriers put in place.

When we talk about consuming services from multiple devices, this often translates into using a variety of different programing languages for developers. The current 2011 SOAP endpoint lends itself best to .NET based development as Microsoft provides a set of libraries in the SDK so that developers don't have to craft the SOAP requests by hand. Outside of .NET developers don't have that luxury. While it's not impossible to access CRM currently from non-.NET languages, it's usually a little bit trickier. The Web API endpoint helps in two ways. The first is by using OAuth v2.0 to handle authentication. The second is using the Open Data Protocol (OData) v4.0 standard. Both of these technologies are readily established and are platform agnostic.

What to do next?

For existing CRM developers, take a look at the official documentation and start getting familiar with what the Web API provides so you are ready to hit the ground running when your CRM 2016 upgrade occurs. For new CRM developers, spin up a CRM Online trial and start trying out some of the samples. For those that might be considering Microsoft CRM but aren't necessarily a Microsoft shop, give it another look as integrating with your existing applications just got way easier. Want to learn more? Check out our blog, Start Your Engines: Getting Started with the CRM 2016 Web API, to kick off using the new Web API. You can also find the official CRM Web API documentation from the CRM 2016 SDK here.

Happy CRM'ing!

By Joe D365
Joe D365 is a Microsoft Dynamics 365 superhero who runs on pure Dynamics adrenaline. As the face of PowerObjects, Joe D365’s mission is to reveal innovative ways to use Dynamics 365 and bring the application to more businesses and organizations around the world.

2 comments on “The New CRM 2016 Web API is Here and It’s Better Than Ever!”

  1. Hi Joe,

    I would like to know how does the new CRM WebAPI handles very frequent requests to CRM portal?

    Example scenario - I have to make call to Dynamics CRM through WebAPI every 1 minute and update some information in couple of entities (I want to have the data reflected in real time). A call can be single or tens of contact entity update every minute. Would love to know your views on the same.

  2. Hi Joe,
    Could you please explain what are the changes needed if the system is upgraded from 2015 to 2016 and we want to use Web API for the existing REST Endpoints (to replace).As we have web resources code (Javascript) which calls the CRM using REST endpoints but do not get sufficient information what the changes required while upgrading to Web API?

PowerObjects Recommends