APIs Part 1: What are APIs and how do they work?


Relatively basic stuff, I know. But it occurred to me that whilst I work with products that build and utilize APIs, I couldn’t comfortably explain the fundamentals. So I’m excited to find an opportunity to learn more—and would bet that there are some other folks out there feeling the same way! 👋😀

Application Programming Interfaces (APIs)

“A set of functions and procedures allowing the creation of applications that access the features or data of an operating system, application, or other service” (Oxford Dictionary, 2022).

Now that we’ve got the formalities out of the way, can we agree this concept is actually a little harder to grasp than you thought? But tucked away in there are some key phrases and inputs/outputs: 

  1. A set of functions and procedures [Read: Rules and logic]
  2. Allowing for the creation of applications that access [Read: Communication from one machine to another]
  3. Features or data of an operating system, application, or other service [Read: Interaction via an API call to a service with another machine]

So API’s dictate the rules of engagement, allowing one machine to interact with another machine or service in a predictable, pre-defined and speedy way. The consumer of the API benefits by accessing the service from the provider. And API service provider benefits from instant, exponential use of their platform to power network effects (which is when the return of value per user grows disproportionately.

The more participants on a platform, the more valuable the platform is to those participants. Whether consumers, platform providers, advertisers, app developers etc. in n-sided platforms). It’s also worth remembering that APIs aren’t [directly] interfacing with us [humans], they’re an interface between machines.

Input -> API (with set of rules, logic, or specifications) -> Output


It’s like a vending machine. We know that by putting in our money and selecting a particular code of the item we want [our inputs], the vending machine will give us a predictable and instant response. Whether that is success, chips released. Or failure, more money needed/item out of stock/item stuck [our outputs].

Next week, I’m interested to look at some examples and delve a little deeper. Maybe interact with an API too. Plus, and more importantly, my wife and I welcomed a baby girl in to the world this week. So my learning capacity is being spent there👶