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:
Create a library yourself using the procedure described in Walkthrough: Use the Modern app SOAP endpoint with JavaScript.
Use the Sdk.Soap.js sample library described below.
Use open source libraries.
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