Hi,

The API Manager REST API [1], [2] follows the semantic versioning strategy.
It currently requires you to have the Major.Minor versions in the URI
scheme (/api/am/publisher/v*0.10*). This however is problematic because
practically, as we add features to the product we need to add new resources
to the API (backwards compatible API changes) and hence have to change the
.Minor version of it on every new release.

This results in complications because we have to keep supporting at least a
few .Minor versions backward on a given product version (support for v1.0,
v1.1, v1.2). Which means that we have to ship and maintain several versions
of the JAX-RS (or Microservice) at any given time.

Shall we adopt a strategy where we only mandate the .Major version in the
URI scheme (/api/am/publisher/v*1*/) and request for the .Minor version to
be sent as a Header? This will ensure that we don't have to maintain
several versions of the JAX-RS on a given server runtime and if we need the
.Minor version for some functionality we look it up from the Header.

[1] - https://docs.wso2.com/display/AM200/apidocs/publisher/
[2] - https://docs.wso2.com/display/AM200/apidocs/store/

Thanks,
NuwanD.

-- 
Nuwan Dias

Software Architect - WSO2, Inc. http://wso2.com
email : [email protected]
Phone : +94 777 775 729
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to