What Is An API?
Despite their rather uninviting title, application programming interfaces (APIs) are one of the internet’s greatest tools. You’ll encounter them every day when browsing the web, and their evolution has hugely simplified the process of creating useful and efficient websites or software.
In essence, an API is a set of standards that allows websites or applications to share information with each other. It acts as a virtual bridge between two software interfaces, programs or websites, supplying one organization’s services to another. This seamless process gives end users the impression that they’re dealing with a single information provider, rather than certain functionalities being subcontracted out to third-party specialists.
Since real-world examples can often provide a clearer picture than theoretical descriptions, here are some examples of APIs in action:
- Social media buttons. When you find yourself viewing yet another cute-kittens video, it takes just a second to click one of those brightly-coloured social media buttons and share it with others. These buttons are produced and supplied by the social media platforms, enabling the website you’re browsing to distribute its content to the widest possible audience. Social media providers actively encourage third-party content sites to adopt their buttons, as it increases activity on their own sites in the process.
- Video conferencing. Rather than building your own Skype rival, why not just use Skype? Software-as-a-service business models like video calls can be integrated into anything from intranets to instant messaging apps, using a robust (and professionally-developed) third-party interface to manage the technical aspects on your behalf.
- Mapping. Numerous modern websites use either Google Maps or Bing Maps on their Contact Us pages, often augmenting a basic 2D map with the ability to get directions from a particular starting point. This merely taps into the vast mapping databases of the world’s two largest search engines, allowing a sliver of their available content to appear in a specific location on a third-party website.
From the perspective of the information provider, an API allows their product or service to be appreciated by a wider audience. They can release just enough information to provide a function without having to turn their entire offering into open source code, and it’s possible to charge clients for usage. Introducing more consumers to their software will build trust and potentially expand their user base, as well as lessening the scope for rivals to do the same.
As for the recipient platform, website or service, their offerings can be improved by including specialist expertise from a particular field. A game programmer doesn’t have to create a brand-new cloud storage option for game saves; they can deploy a ready-made Dropbox solution. Equally, WordPress wouldn’t be the immensely popular website building platform it is without tens of thousands of third-party plugins, each performing very specific functions.
APIs do have their drawbacks, of course. Google is a good example of a provider that regularly kills off fringe services, leaving customers scrambling to find a replacement service. APIs can also cause compatibility issues and clients have little control over how reliably they perform or when they’re updated; outsourcing content can also slow websites or increase demand upon servers. It’s therefore important to deploy APIs only when necessary, though they remain hugely valuable for delivering ready-made solutions to end users.