[Openstack] OpenStack API Versioning Conventions

Brian Waldon brian.waldon at rackspace.com
Tue Oct 11 17:15:51 UTC 2011


That is one case that would require a major version change where a URI is still valid. However, changes to the URI are still allowed across major versions. That causes me to think content-types are not good enough to handle versioning.

On Oct 11, 2011, at 11:21 AM, Kiall Mac Innes wrote:

> Pretending we are talking about "User" resource for me, "kiall" for moment.
> 
> The v1 API might represent the kiall user resource as {"name":"kiall"} while the v2 API might represent the kiall user resource as {"USERname":"kiall"}.
> 
> The kiall resource has not changed, only the API representation. Hence, a single URL using headers to determine the resource representation (json_v1, json_v2, yaml_v1, yaml_v2 etc) is correct IMHO.
> 
> Some more info on the general idea: http://barelyenough.org/blog/2008/05/versioning-rest-web-services/
> 
> Thanks,
> Kiall
> 
> 
> On Tue, Oct 11, 2011 at 3:11 PM, Soren Hansen <soren at linux2go.dk> wrote:
> 2011/10/11 George Reese <george.reese at enstratus.com>:
> > Versioning should not be included in the URI. It belongs in the headers. A URI should be a persistent reference to a resource. As such, versioning always breaks that persistent reference.
> 
> I don't follow. If the version is included in the URI, that's got to
> be a more persistent reference to a resource than a URI whose
> behaviour differs depending on a header that you have to include?
> 
> --
> Soren Hansen        | http://linux2go.dk/
> Ubuntu Developer    | http://www.ubuntu.com/
> OpenStack Developer | http://www.openstack.org/
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack at lists.launchpad.net
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack at lists.launchpad.net
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
> This email may include confidential information. If you received it in error, please delete it.



--------------------------------------
Brian Waldon
Cloud Software Developer
Rackspace Hosting


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20111011/69c6e458/attachment.html>


More information about the Openstack mailing list