Trends that grow exponentially for an extended period of time are always important. One trend that we have been following is the rapid increase in the number of API’s (application programmer interfaces) over the past decade. It took eight years to reach the first 1,000 API’s. The web is now adding 1,000 API’s every four months! It is likely that the next 1,000 API’s will be added in under three months.
What is an API?
An API is a description of the interface that two software components use to talk to each other. As browser applications have become more dynamic and interactive, the need for more complex interactions has grown. In most cases, API’s define the connective tissue of the web and facilitate the exchange of data between the various components of an application.
Like many trends, the initial euphoria around ‘mashups’ (applications comprising a variety of web services) flared up in 2008 but then petered out. Enthusiasm was dampened, in part, by unresolved technology issues of whether to use REST or SOAP for integration points between websites, whether the response should be formatted in XML or JSON, and a host of other arcane issues.
By 2010 web engineers had finally converged on RESTful architectures as the preferred method of integration. As we enter 2012, the simplicity of JSON and its natural fit with ubiquitous client-side Javascript has led to it becoming the widely accepted response format. Over 3/4 of new API’s now use a combination of REST and JSON. Standardization, as always, is a precursor to adoption.
Implications
Developers have been quick to realize the power of API’s. Instashirt provides a good example: by connecting Instagram’s photo API to Zazzle’s custom product design API, users can order T-shirts emblazoned with their favorite Instagram photos. By allowing unaffiliated developers access to their API, both Zazzle and Instagram have benefited.
Yesterday, Nike announced that it is opening an API for NikeFuel, the metric for tracking physical activity. The API will allow third-party music developers to add NikeFuel features into their apps. And now you can share your workouts with the mobile app, Path via their API. Will all these be successful? It’s hard to tell but allowing other developers to experiment with and add value to the FuelBand is bound to lead to success that the original designers probably never envisioned.
A well-designed, accessible API can be a tremendous point of leverage for startups. By harnessing the passion of developers startups can rapidly add value for their customers. This has become even more important in a post-web world where services are increasingly accessed via a multitude of tablets and smart phones. Mobile applications have been the fuel on the API fire. Looking at the Zappos metrics, it’s clear that mobile devices have been a significant component (40%) of their API traffic.
The needs of mobile developers differ in some important ways, though. Mobile applications tend to make many more requests but with a smaller data payload. As these needs collide with API’s designed for browser-based access, API’s will have to become more complex, allowing developers to filter data more efficiently on the server.
API analytics will eventually give enterprises an important view of their data. While web analytics gave enterprises insight into user behavior, API analytics will allow them to intersect their users’ behavior with the value of their own data. Organizations will gradually begin to distinguish between strategic and incidental data. Netflix, for instance, likely values their database of user movie ratings far higher than their database of actors and movie titles. The former will remain strategic to Netflix but the latter will be open-sourced.
Tom Mornini of Engine Yard described the significance of API’s as the final realization of the dream of reusable code. It may be that open source data is an even bigger side effect.