<div dir="ltr">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.<div><div><br><div>We had intended to implement a feature whereby *installers* of apiman could loosen the restrictions and allow re-publishing of APIs, but we didn&#39;t get to it before the 3scale acquisition.  It&#39;s actually something that wouldn&#39;t be too hard to implement if someone in the community were willing to give it a shot.</div></div></div><div><br></div><div>Also note that &quot;public only&quot; APIs CAN be re-published, since by definition there are no contracts at risk.</div><div><br></div><div>-Eric</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Mar 24, 2017 at 12:28 AM, Ashish Patel <span dir="ltr">&lt;<a href="mailto:ashish.patel@futuregroup.in" target="_blank">ashish.patel@futuregroup.in</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-IN" link="#0563C1" vlink="#954F72">
<div class="m_-5763038036992166348WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Hi Harry,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">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.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">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.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Personal view – anyone else has any different angle to it?<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Thanks &amp; Regards,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Ashish<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;">From:</span></b><span lang="EN-US" style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;"> <a href="mailto:apiman-user-bounces@lists.jboss.org" target="_blank">apiman-user-bounces@lists.<wbr>jboss.org</a> [mailto:<a href="mailto:apiman-user-bounces@lists.jboss.org" target="_blank">apiman-user-bounces@<wbr>lists.jboss.org</a>]
<b>On Behalf Of </b>Harry Trinta<br>
<b>Sent:</b> 24 March 2017 00:46<br>
<b>To:</b> <a href="mailto:apiman-user@lists.jboss.org" target="_blank">apiman-user@lists.jboss.org</a><br>
<b>Subject:</b> [Apiman-user] Edition Published APIs<u></u><u></u></span></p><div><div class="h5">
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal">Hi, guys!<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">When I publish a API in Apiman, I can&#39;t edit it anymore.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">But, sometimes, is necessary to change the API Endpoint, plan, etc, and it is not possible.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Currently, I have to create another API version, or else, to delete the API and create it again with the new configuration.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Is there a way to enable API edition of a published API?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Thanks<u></u><u></u></p>
</div>
</div>
</div></div></div>
</div>

<br>______________________________<wbr>_________________<br>
Apiman-user mailing list<br>
<a href="mailto:Apiman-user@lists.jboss.org">Apiman-user@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/apiman-user" rel="noreferrer" target="_blank">https://lists.jboss.org/<wbr>mailman/listinfo/apiman-user</a><br>
<br></blockquote></div><br></div>