Versioning

The ICWS API is versioned in two important ways. Groups of related APIs, called features, are versioned together as Feature Versions. API consumers should use the Feature Versions when determining which APIs are supported by the server. The Interaction Center server installation also has a version number is also made available for informational purposes.

Note

These values only change when the server is updated, so an application can use caching strategies rather than repeatedly query the feature versions of the server.

Feature Versions

Groups of APIs are versioned together as a set called a Feature. The Version for each Feature is a positive integer value. When items are added to an API or a new API is added to a Feature, the version number for that Feature is increased.

All APIs are documented with the Feature and Version that the API was first introduced to the ICWS API. When items are added to an existing API, the individual items will indicate which Version they were introduced. For more on the documentation, see Versions.

The Versions for all Feature on a ICWS server can be acquired using GET /icws/connection/features. If an application is interested in a specific Feature, GET /icws/connection/features/{featureId} can be used to get a single Version. If a Feature is not included, it can be assumed that the server does not support that Feature.

Simple integer values for the Version values are used so that client applications may perform simple integer comparison when determining whether or not a server supports the desired functionality. Well-formed applications will use the Feature provided by the server to change application logic to match the functionality the server supports. Since individual items on APIs are also versioned, applications can be written to provide basic functionality to older versions of ICWS while also being able to provide advanced functionality to those instances of ICWS that support higher Version. This allows an application written once to be used across multiple installations of Interaction Center.

In some cases, a part of the ICWS API may have multiple Features listed in the documentation. In this case the part of the API is supported if the server supports any of the Features listed.

Obsolete Versions

If an API element is no longer supported, it will be documented with the Version in which the API was obsoleted in the ICWS API. If the API has multiple Features listed, each will have its own obsolete version. For more on the documentation, see Obsolete Versions.

Server Version

A server's overall installed version information can also be queried using GET /icws/connection/version. This general version information is primarily for informational purposes but in rare cases may be useful to programmatically determine whether required functionality is available for broader API additions that were introduced with a release.