Ashish is quite right about the design. The goal was to shield
applications/clients from having the API contract changed out from under
them AFTER they had agreed to the terms. Clearly, there are *some* changes
(e.g. the API endpoint) which would not affect the Contract - so a more
mature implementation of our approach would take that sort of thing into
account. However, there would always be some grey area to it.
We had intended to implement a feature whereby *installers* of apiman could
loosen the restrictions and allow re-publishing of APIs, but we didn't get
to it before the 3scale acquisition. It's actually something that wouldn't
be too hard to implement if someone in the community were willing to give
it a shot.
Also note that "public only" APIs CAN be re-published, since by definition
there are no contracts at risk.
-Eric
On Fri, Mar 24, 2017 at 12:28 AM, Ashish Patel <ashish.patel(a)futuregroup.in>
wrote:
Hi Harry,
No offence meant, but that’s the way APIs are being designed, so that
consumers are protected/intimated in advance for the changes in API
contracts. Here, you can change v1.0 definition - N times before you have
published to consumers.
Say you have API version v1.0 published and 3 consumers already using it,
now you need to change the contract parameters and these consumers have
already published their applications using your API v1.0. So, ideally you
should publish v1.1 along with keeping v1.0 for a given period (say a week
to month) allowing consumers to move to new version v1.1 . Practically you
can also retire v1.0 itself and create v1.1, however this should be done
with prior communication to consumers for changing their endpoints – seems
very challenging considering different applications’ different release
cycles.
Personal view – anyone else has any different angle to it?
Thanks & Regards,
Ashish
*From:* apiman-user-bounces(a)lists.jboss.org [mailto:apiman-user-bounces@
lists.jboss.org] *On Behalf Of *Harry Trinta
*Sent:* 24 March 2017 00:46
*To:* apiman-user(a)lists.jboss.org
*Subject:* [Apiman-user] Edition Published APIs
Hi, guys!
When I publish a API in Apiman, I can't edit it anymore.
But, sometimes, is necessary to change the API Endpoint, plan, etc, and it
is not possible.
Currently, I have to create another API version, or else, to delete the
API and create it again with the new configuration.
Is there a way to enable API edition of a published API?
Thanks
_______________________________________________
Apiman-user mailing list
Apiman-user(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/apiman-user