Backward Compatibility Policy
Following are the key points regarding the backward compatibility policy of Sentinel EMS REST API version 5:
>Adding new mandatory parameters to an existing REST API request or response, or marking an existing parameter as mandatory always results in a new version of the API. This means that customers using an earlier version of the API will not be impacted upon upgrade. This ensures backward compatibility.
>Adding optional parameters to an existing REST API request or response will not result in a new version of the REST API. In order to ensure backward compatibility, the existing implementation should simply ignore these additional parameters. Also, when processing REST API responses, you must use the Tolerant Reader pattern, which is an industry standard. Web service clients must only extract what is needed, ignore unknown content, and expect variation in the response parameters as the REST API evolve. This ensures backward compatibility.
What is a Tolerant Reader Pattern?
Tolerant Readers extract only what is needed from a message and ignore the rest. Rather than implementing a strict validation scheme, they make every attempt to continue with message processing when potential schema violations are detected. Exceptions are only thrown when the message structure prevents the reader from continuing, or the content clearly violates business rules. Tolerant Readers ignore new message items, the absence of optional items, and unexpected data values as long as this information does not provide critical input to the service logic.
NOTE For customers implementing Sentinel EMS REST API but not applying the Tolerant Reader pattern, it is suggested that you test the upgrade in a development environment and make the necessary changes.