[openstack-dev] [openstack-tc] Proposal for API version discovery

Mark McLoughlin markmc at redhat.com
Wed May 8 05:39:18 UTC 2013


On Tue, 2013-05-07 at 15:44 -0700, Vishvananda Ishaya wrote:
> Basically our goal is to provide a way for clients to determine what actions
> are available on a server. Essentially this means a few things:
> 
> A) what resources are available
> B) what actions can be performed on those resources
> C) what (url) parameters are available?
> D) what is the structure of the request/response?
> 
> HATEOS seems to provide the cleanest solution for A)

Kind of a random side-bar, but I've always felt that HATEOAS is actually
claiming to be the solution to all of this ... but I've never seen a
complete implementation of my understanding of the idea.

The term is "hypermedia as the engine of application state" meaning
(IMHO) that the interface to making the application change state is the
hypertext itself ... and if the interface for a specific action isn't in
the hypertext, the client knows it's not available.

For e.g. (c), I keep thinking of a HTML form - you know what parameters
can be POSTed to the URL in a form because the form describes those
parameters pretty richly. Wouldn't it make sense for a REST API to have
something similar? You allow the parameters to be discoverable by their
presence in the "form".

Cheers,
Mark.




More information about the OpenStack-dev mailing list