Cisco Unity Connection REST interfaces essentially are not versioned. There are several mechanisms in place to ease forward and backward compatibility:
- The version is available as
a resource at /vmrest/version:
<VersionInformation> <name>vmrest</name> <version>18.104.22.168</version> </VersionInformation>
- Extra fields in a resource
are ignored by the server.
This means that if we add a field to a resource in a future release, and the new resource is sent to an older server, the operation will complete (with the exception of updating the field that it does not have).
Clients ignore new fields.
The XML schema files that are provided for clients include a provision for arbitrary fields to be added at the end. This means that when a new field is added to a resource exposed by the server, it will not affect client code.
New resources are added at new URLs.
Adding a new resource means adding a new URL, not changing existing URLs. This means that existing client code can continue to run against the new version without change.