Fork me on GitHub

API Design

In the early days APIs were just about deploying and consuming. You were doing one or the other. Then came API management from providers like Mashery, then others like 3Scale and Apigee. Now the API universe is expanding and API design is coming front and center with new approaches, tools and even companies stepping up to provider services.

I define the world of API design as everything that goes into planning and designing your API, as well as the design of your API that lives on as your operational interface, and the truth in the contract you are entering into with API consumers.

Depending on our needs, API design may begin with learning about HATEOAS as part of your design definition or API design might be just about generating a Swagger definition so you can generate interactive API documentation, or possible automate your API monitoring and testing.

Ultimately your API design will be the definition of each endpoint, its methods, fields and much more. In a technical sense it is a JSON or XML blueprint that describes your API, and in a creative sense, API design is an art and can possess a strange technical beauty and speak to the value it delivers to end-users.

Thoughtful API design early on can save you a lot of mistakes down the road. This site is not meant to endorse any particular approach or methodology, but provide a single resource where you can find the best information on API design, allowing you to have a conversation around an API definition throughout its lifecycle.

This site will be an open source informational and technical repository of the companies, building blocks of API design, tools for assisting you in your API design planning and execution and companies that provide services in the area of API design.

My goal is to provide the information you need to navigate the world of API design. I’m also working on a white paper which will be published here when ready.

The Heroku HTTP API Design Guide

(Posted on )

I stumbled across a cool resource out of Heroku today, their HTTP API design guide, which intends to direct practices for API design on the Heroku API platform. Heroku’s goals around APIs design are, "consistency and focusing on business logic while avoiding design bikeshedding”. They put out the guide to drive consistent aPI design practices at Heroku, but are also interested in sharing with the wider API community. I think API design best practices are something every API provider should have, and publish publicly (on Github). I think it is ok to even fork, and modify existing guides like Heroku’ more.

Bizcoder - A drive by review of the Uber API

(Posted on )

Uber recently announced the availability of a public API.  I decided to take it for a spin and provide some commentary.  The quick version is that it is a fairly standard HTTP API and that is both a good thing and a bad thing.You can find the official documentation for the Uber API on their developer site.  In general the documentation is easy to read and it seems fairly comprehensive for what is, at the moment, a pretty simple API. more.