I’ve done a post for the Reputation Online site explaining that widespread yet, to the uninitiated, obscure acronym API:
The humble two and three pin electrical plugs and sockets are in many ways a mini-marvel of standardisation.
Electricity generation and power distribution companies can change what they do and how they do it in all sorts of different ways, as can the manufacturers of devices which requiring plugging in. But as long as each keep the socket and the plug the same, their changes don’t get in the way of the new systems and products continuing to happily work together.
The common standard for the interface between electricity generation and consumption means people can make changes without having to either consult others in huge detail or breaking that which previously worked.
In the world of computer programs, APIs (or Application Programming Interfaces to give them their full name) fulfil a similar function. They let different pieces of software, even when from highly competing firms, work together and continue to work together and bug fixes and upgrades roll out.
But that’s only half of the power of APIs. The other half is that they permit different pieces of software to work together in the first place.
Take the example of Google Analytics. This is a free service from Google that lets you track how many people visit your website, which pages they go to and so on. You normally access the data by logging in to the Google Analytics website.
However, because the data is also available via an API you can build other software that combines data from Google Analytics with either other functions or other data from elsewhere. (This use of APIs is one of the common methods for producing mash-ups.)
Perhaps you want to combine the web traffic statistics from Google with the weather reports from the Met Office so you can see how the weather affects how many people come to your website and what they then do there? With the Google Analytics API you can do just this – and the system will carry on working even as Google changes who their software work, as long as they don’t break the API in the process.
In other words, APIs make it easy for different pieces of software to work together effectively. That means you can do more effective, more interesting and more integrated work.