<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Mar 12, 2015 at 1:42 PM, Brian Rosmaita <span dir="ltr"><<a href="mailto:brian.rosmaita@rackspace.com" target="_blank">brian.rosmaita@rackspace.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">I don't know how elaborate we want to get here, but Everett Toews had an<br>
interesting suggestion in the openstack-api channel. It would go something<br>
like this:<br>
<br>
(1) User gets "/x1/search" endpoint from service catalog<br>
(2) User does some request against /x1/search<br>
(3) User receives 400 with an error message like:<br>
This is an experimental API.<br>
You must include the following header with your request:<br>
    x-openstack-api-status: acknowledged<br>
By using this header, you acknowledge that while we think this API is<br>
pretty solid, we reserve the right to make breaking changes as we analyze<br>
usage patterns and API consumer comments during the experimental period.<br>
Please send comments to the OpenStack Future Development Mailing List with<br>
the subject "[Glance] x1 API".<br>
To subscribe to the mailing list:<br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
(4) User makes all subsequent requests including the<br>
x-openstack-api-status header<br></blockquote><div><br></div><div>What keeps me, as a shady client, from just including x-openstack-api-status  from the start?  and how is that different from intentionally selecting an EXPERIEMNTAL endpoint form the service catalog?</div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
If we did something like that, my conscience would be completely clean if<br>
we wound up introducing a breaking change.</blockquote></div><div><br></div><div>You also could do proper versioning even though it is experimental.  That'll help prove the version handling is working properly too.  As a dev trying to get early use on an experimental API, I still need to be able to detect when changes occur.</div><div><br></div><div>dt</div><div><br></div>-- <br><div class="gmail_signature"><br>Dean Troyer<br><a href="mailto:dtroyer@gmail.com">dtroyer@gmail.com</a><br></div>
</div></div>