Comparison with Version 4.2

This table explains differences between EMS web services version 4.2 (and earlier) and EMS REST API version 5.

Version 4.2 and Earlier

Version 5 and Later

Authentication

 

>Stateful authentication

>Need to call the login service explicitly before using others web services.

>Use the sessionIdentifier in subsequent calls

>Could give session timeout

>Need to call the logout service to close a login session.

>Stateless authentication (Basic Authentication)

>No need to call the login service explicitly. The authentication header is passed along with each request.

>Session timeout will never occur.

>No need to call logout explicitly.

Retrieve/Search (GET)  

>No consistent URI endpoints.

>Fixed and minimum set of attributes in output, leading towards further multiple calls.

>Common schema for all resource searches causes ambiguity.

>Consistent endpoints based on the resource name.

>Support of JSON in addition to XML.

>Provides data on demand. You can fetch complete attribute search calls, by using the embed parameter.

>Better and consistent content negotiations through the use of Request and Response headers (for example, Accept and ContentType).

>Specific schema for each resource search, which is in sync with the resource schema.

Create (PUT) Create (POST)

>Accepts only XML.

>Returns only the Location header. The resource definition cannot be retrieved in response.

>Use of standard HTTP method for creation.

>Accepts JSON as well as XML in input.

>Option to retrieve resource definition in response.

Update (POST) Update (PUT and PATCH)

>Accepts only XML in input.

>Single method for partial and full update. This causes ambiguity. You need to provide full resource definition even for a single field update.

>Always returns the resource definition in response.

Full Update (PUT)

>Accepts JSON as well as XML in input.

>The PUT method is used for the complete update (also called, "replace") of the resource. This behavior is more aligned with HTTP standards.

>Resource definition is retrieved on demand in response.

>Consistent response and error codes.

Partial Update (PATCH)

>Accepts JSON as well as XML.

>The PATCH method is used for partial update.

>Resource definition is retrieved on demand in response.

DELETE  
Available only for the parent resource. Available for the parent resource and for its associations.