What is an API? In English, please.
Petr Gazarov

Thanks for the article Petr. Good read!

If I may add to the conversation, the way I like to explain what an API is is the following:

It’s the set of instructions one piece of software uses to communicate with another piece of software.

API’s are typically implemented at two levels:

  • Within a single application: where distinct parts of the software/code (e.g. libraries) need to communicate with each other. E.g. You may have the JQuery library integrated into your application, but the JQuery API is what actually makes it possible to make use of the JQuery library’s functions from within you own javascript code.
  • Between two applications: where one application makes use of the other applications’s API in order to perform some action. E.g. The API of a database (which is an application on it’s own), provides a structured way for some other application to input, extract and manipulate data in the database.

When one piece of software makes use of the API of another piece of software, this is called ‘consuming the API’.

The API documentation is the information on what the API can do for its ‘consumer’ and how the consumer can go about using that functionality (in the form of a set of conventions and instructions).