api.openstack.org

Registered by Joe Savak

For implementors and contributors, we need to have a way to present API documentation in a fashion that is quick to digest across multiple openstack projects. The dev.twitter.com page was mentioned as an example, but we should probably focus first on API doc.

Product: api.openstack.org

Problem Statement: Currently, API information is in individual service documentation and isn't tied together neatly for developers and implementors to consume. For example, if an implementor wanted to see what URIs the OpenStack APIs accept and block any others, they would have to find and read the API docs for each individual service.
If the presentation of API documentation causes frustration, then adoption of OpenStack services as a whole would be challenging.
Proposed solution:

    Display APIs in a style similar to dev.twitter.com/docs/api - something that shows the verb, resource, and description for all API calls.

    Detail can be retrieved easily for the call. This detail includes:

    Parameter (including if it's optional or not)

    Parameter description

    Drop down box showing JSON or XML

    If JSON is triggered in the drop down box, then JSON request and response for the call is shown.

    If XML is triggered in the drop down box, then XML request and response for the call is shown

    Provide a search box that will find the queried content and expand the containing section as necessary if query is in a hidden div (jQuery magic can do this)

    Content updates triggered from successful jenkins reviews.

Please see the full specification for open questions and issues.

Blueprint information

Status:
Complete
Approver:
Anne Gentle
Priority:
Medium
Drafter:
None
Direction:
Approved
Assignee:
Rackspace Integration
Definition:
Approved
Series goal:
Accepted for essex
Implementation:
Implemented
Milestone target:
milestone icon essex-4
Started by
Joe Savak
Completed by
Joe Savak

Related branches

Sprints

Whiteboard

Joseph Heck was able to provide a mockup (thanks Joe!):
The repo for this is on GitHub (https://github.com/heckj/api-site-mock) and taking advantage of github pages to host up my mockup site. If you haven't used github pages previously, it's basically anything in the branch "gh-pages" gets pasted up as a website that github helpfully hosts for you - perfect for simple/static sites and mockups like this. The README in the main repo has how to get to the code, etc:

The live mockup page is here:
http://heckj.github.com/api-site-mock

If you want to edit/collaborate, let me know your github userid and I'll add you as a committer to this repo. Pushing any changes to the branch "gh-pages" will make it immediately live. If you'd prefer to clone and send me pull requests, I'm totally cool with that as well.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.