An API for the basic web user (aka: someone who is not a programmer, but more someone who is like me that is just super happy the Internet exists and works and is awesome) is the language of software, that allows two different software systems to communicate with each other.
An API is the set of protocols, routines, and other data that programmers and developers need to a consistent program (thus, you’d end up with two programs that work together, or one that’s an application usable with the other and so on).
Programs can communicate with each other via an API, and thus the web seems more “seamless” to us users. The “seamless” kind of an API is a behind the scenes version that users don’t directly witness. How Stuff Works gives a great example in an article they wrote, paraphrasing: when you buy something online and you type in your credit card info, it’s via an API between the site you’re shopping from and a credit card verification site that your info is confirmed and the purchase is able to go through. As a user, you don’t see all this happen – you just click the “purchase” button and wait for the confirmation page to populate.
Software platforms can also open up their API, aka: make it public for other programmers to use, so that other people can make applications for a specific platform. Think of all the Twitter apps that are out there – from HootSuite to Monitter – they are all able to riff off Twitter and create complementary programs thanks to having access to Twitter’s API. (And Twitter releasing their API is just one example of endless software APIs that are available to programmers out there).
So that’s about the extent of understanding an API that the average person probably cares to know. Just know this: APIs make your life better – it’s how we’re able to say “there’s an app for that.” APIs give us more software options and tools, the output of a programmer’s hard work is awesome software that enhances our everyday lives in a variety of ways.
For super techies and programmers, those very adept at ones and zeros and making the Internet the amazing thing it is, an API (I’m sure) is far far more complicated.
Here’s a bit of a more technical description of the term:
PC Mag says that an API is, “ A language and message format used by an application program to communicate with the operating system or some other control program such as a database management system (DBMS) or communications protocol. APIs are implemented by writing function calls in the program, which provide the linkage to the required subroutine for execution. Thus, an API implies that a driver or program module is available in the computer to perform the operation or that software must be linked into the existing program to perform the tasks.” (PC Mag’s Encyclopedia).
In The ICUC Glossary I usually like to give the definitions my all, and write them myself. But when it comes to an item like an “API,” the nitty gritty is quite technical and thus I think it was best to defer to a programming expert for at least part of the explanation.
Image Source: Savvy Marketing Secrets