What Are APIs and How Do They Work?
When it comes to the application programming interfaces (APIs) and the API economy, the question that gets asked most frequently is "What is an API?". Thanks to the wider-spread attention that APIs are getting from the mainstream media, "What is an API?" is in fact the million dollar question because for those who understand the potential of APIs, there could be millions of more dollars to be made, or saved.
Answering in a relatively comprehensive but cogent fashion can not only help developers to be more contemplative about fully leveraging the promise of APIs in their wares, it can really jumpstart the conversation that needs to take place between (1) business stakeholders looking for new opportunities and operational efficiencies and (2) the technical staff that's chartered with turning an organization's compute infrastructure into a reflection of the go-forward strategies and objectives. Therefore, establishing a common understanding of what APIs are, how they do what they do, and what some of the most important benefits are is central to moving that conversation forward in a meaningful way.
In creating this seven part series on What are APIs and How Do They Work, ProgrammableWeb editor-in-chief David Berlind turns to some very commonly known real-world metaphors so that readers can more easily understand how APIs fit into our world, what they're used for, and the sorts of opportunities that are unlocked by their underlying architectural principles of standards and abstraction.
In debating what metaphors were applicable, it became clear that none were perfect (somewhat proving the highly unique value proposition of the API). However, some make the power of APIs easier to visualize even if a liberty or two has to be taken in order to bring certain points home. For example, in comparing APIs to electrical wall sockets, the service provider isn't exactly responsible for the last mile of wiring right up to the socket. But, if you'll allow David a few such liberties, his explanation is sure to empower you with a command of the API domain that will be useful in just about any context from consuming developers to API providing organizations.
Finally, this series is one of several that we consider a part of the core curriculum to ProgrammableWeb's API University. As we look to expand this core curriculum (as well as all of the content that API U hopes to offer), it is also our intention to revisit these series and improve both their content and presentation. To that extent, we welcome suggestions and look forward to your feedback in an effort to ensure that ProgrammableWeb is the ultimate destination for maintaining your understanding of the API economy.
In this, the first part of our series, we explain APIs as an alternative to something that pretty much everyone who has used an application is familiar with: the user interface. Software needs an interface that makes it easy to consume data. Enter, application programming interfaces.
In Part 1, “APIs Are Like User Interfaces--Just With Different Users in Mind” we introduced the idea that an application user interface, or API, is an interface for software. APIs are used by software applications in much the same way that interfaces for apps and other software are used by humans.
In Part 2 of this series, “What Are APIs and How Do They Work?,” we used the standard electrical socket found in most walls as a metaphor for explaining the principles of an API. Imagine what life might be like without such a standard. With no plug, matching socket or standard particulars.
In the last part of this series, “What Are APIs and How Do They Work?”, we covered the key benefits of APIs. Now we’ll focus on the classes of APIs that matter the most to ProgrammableWeb, the ones that are enabled for consumption from across a network or fuel the development of Web applications.
In the previous part of this series, we took a deep look at how Web and browser APIs make the Web programmable while fueling what is known as the API economy. In this part, we will examine how the concept of abstraction is a major contributor to flexibility for API providers.
In the last part of this series, we focused on the API concept of abstraction and the type of flexibility it creates for API providers. In this part, we’ll talk about why the Web’s technology is key enabler for networkable APIs, thus giving birth to the notion of “Web APIs.”
The API economy now spans thousands of API-providing companies across hundreds of categories. Within each category there are multiple offerings, all competing for the affections and money of third-party developers--any one of which could unleash the next API-consuming Zillow, Instagram or Uber.