[Openstack] API Versioning and Extensibility
Bryan Taylor
btaylor at rackspace.com
Thu Oct 27 05:50:54 UTC 2011
On 10/26/2011 04:45 PM, Jorge Williams wrote:
>
> On Oct 26, 2011, at 1:19 PM, Bryan Taylor wrote:
>
>> So no pdfs or excel spreadsheets without conneg.
>
> But PDFs and excel spreadsheets are precisely why you want variants!
Reports and spreadsheets are presentation layer resources that should
come from control panels and dashboards and not from a web services API
layer.
In fact, it's with some reluctance that I even suggested having HTML in
the services layer, but we said an API goal was to target developers
eyeballing our data formats in a browser. HTML is the best media type to
use for this, leveraging the <pre> element, perhaps with some syntax
highlighting eye candy.
> "Here's my usage stats for 2009...
>
> http://usage.api.acme.com/v1.0/jorgew/2009/usage.pdf"
That shouldn't be coming directly from an openstack API.
We're actually building a usage service on top of OpenStack and we don't
have any PDFs in it. Dashboards, control panels, BI systems etc, should
host that resource, not our APIs.
> You mean to tell me that I can't send that out as an e-mail? Instead I
> have to say
>
> "Please run this command to see my usage stats for 2009
Our use case is to show *developers* what the openstack API payloads
look like, not to deal with arbitrary end user presentation desires.
> curl -H "Accept: application/vnd.acme.com+pdf;version=1.0"
> http://usage.api.acme.com/jorgew/2009/usage"
> That seems silly to me, we're missing an important feature, the ability
> to click.
We are adding an important feature by leaving it out: separation of
presentation and data.
More information about the Openstack
mailing list