Use the Modern app SOAP endpoint for modern applications with web resources

 

Applies To: Dynamics CRM 2013

Unlike the REST endpoint for web resources, the SOAP endpoint uses the Organization service. This is the same service used when writing applications that exist outside of the Microsoft Dynamics CRM 2013 and Microsoft Dynamics CRM Online application. The differences are:

  • Requests are sent to a different URL: <organization URL>/XRMServices/2011/Organization.svc/web.

  • Authentication for web resources is provided by the application.

If you use this endpoint outside the application, you must implement authentication. More information: Authenticate the user with the web services

Using the SOAP endpoint with JavaScript

With JavaScript, you will be using XmlHttpRequest to POST requests to the service. The body of the request must contain the XML appropriate for the message you are using. You must also parse the XML returned in a response. You have several options for using the SOAP endpoint with JavaScript:

Sample: Sdk.Soap.js library

Sdk.Soap.js is a sample that demonstrates a JavaScript library that makes it easier to write code that uses the SOAP endpoint for modern applications with web resources. This library was created using the SOAPLogger sample application described in Walkthrough: Use the Modern app SOAP endpoint with JavaScript to capture and observe the XML data passed to the server. Sdk.Soap.js includes object definitions that correspond with classes and methods from the SDK assemblies. These include separate libraries for more than 200 messages you can use. Sdk.Soap.js is for use with web resources only. It does not provide the capability to authenticate from outside the application.

Sdk.Soap.js provides a programming model that is based on how you write C# code using the assemblies included in the SDK. You can write code using the late bound or early bound styles. To use the early bound style you must generate JavaScript libraries representing classes for the entities you will use in your code. Use the Sdk.Soap.js Entity Class Generator to generate the libraries you need. No additional libraries are required to write code using the late-bound style. More information: Entity programming (early bound vs. late bound vs. developer extensions)

If you use actions to create custom messages, you can use the Sdk.Soap.js Action Message Generator to generate JavaScript libraries for each action in your organization and then use Sdk.Soap.js to call those actions in your JavaScript code. More information: Create your own actions

Sdk.Soap.js Samples is a separate set of samples that demonstrates using Sdk.Soap.js with both late bound and early bound styles, messages, and queries.

See Also

Use web service data in web resources (OData and Modern app SOAP endpoint)
Walkthrough: Use the Modern app SOAP endpoint with JavaScript
Sdk.Soap.js
Sdk.Soap.js Entity Class Generator
Sdk.Soap.js Action Message Generator
Sdk.Soap.js Samples