Demystifying APIs

Estimated reading time: 4 minutes

Introducing our inaugural guest post by Saidimu Apale, Director of Engineering at Jozu. Saidimu’s journey began as an Engineering Manager at ACN, and his evolution led him to embrace a full-time role at Jozu. At ACN, we have an unwavering commitment to nurturing the growth of each incubation we work with, propelling them to greater heights. It is with immense pleasure that we witnessed Saidimu’s transition within our program, culminating in his current role as Director of Engineering. In this blog post, Saidimu will explain key concepts around Jozu’s central playground: APIs.

What makes APIs mysterious or hard to understand? For starters, the acronym itself, Application Programming Interface, assumes a lot of knowledge about computers and programming. What’s in a name? Quite a lot it turns out! We can do better. Let us make APIs “easier to understand”.

Imagine a now common habit made popular during the heydays of the pandemic: shopping online for groceries. This is what such a typical online grocery shopping session may look like:

  • Login to https://fresh-as-a-cucumber.grocer 🥒
  • Be presented with a list of your last few orders and have the option to re-order
  • Browse existing products and add them to your cart
  • Checkout and pay
  • Specify delivery times
  • Receive your fresh cucumbers and start craving cookies instead 🍪 

Mysteries Galore 🧙

What if I told you that mysterious APIs were central to getting the groceries to your doorstep? And that any delays in getting your groceries delivered, or in having items in your order replaced by alternatives, are also likely due to other mysterious APIs?

Before continuing, let us establish some essential truths upfront:

  1. The list of products at the online grocery store, their pricing, and availabilities are not stored on your phone but rather on the online grocer’s computers “in the cloud” (computing services provided to the online grocery store)
  2. The list of people who have shopped at the online grocery store and their list of previous orders is also stored “in the cloud”
  3. The app on your phone simply displays what is in the online grocer’s cloud computer systems

How does the app on your phone know what to display?

For the app on your phone to know what to ask for (a list of groceries) and how to ask for them it needs to have an agreement with the grocery store’s cloud computers on how to communicate and exchange information. This agreement is exactly what an API is: an Interface (a structured way to exchange information) for Application Programs (API). In this example, the specification to display products from the grocery store might be called ListProducts and it might provide options to filter the list by products on sale or products the user previously ordered.

To provide a complete and seamless online grocery shopping experience the app on your phone will typically need to exchange information with the grocery store’s cloud computers via many APIs. For instance:

API NameAPI Function
ListProductsGet a listing of all products available for order
GetProductInfoGet more details on a specific product
GetPreviousOrdersGet a list of a customer’s previous orders. This is useful to enable easy re-ordering as grocery orders typically do not change much.
AddToCartAdd an item to the cart for purchase. This step typically also checks for an item’s availability.
CheckoutComplete an order by paying for it using a payment provider and specifying a delivery address for a delivery provider
CheckOrderStatusGet details on an order’s status (in transit, delivered, etc)

APIs as shipping containers

By providing a structured way of exchanging information between services without needing to know all the details of how those services work, APIs end up having a similar effect to computer systems and services as shipping containers did to global cargo transport. Before shipping containers were invented and popularized, shipping cargo came in all sorts of packaging: boxes, sacks, barrels, and many more. Transporting cargo from ships to trains and onward to trucks was more complicated and costly due to the lack of standard ways of safely handling the cargo. The invention of standardized 20-foot and 40-foot containers revolutionized global shipping as cargo companies only needed to know how to deal with an agreed-upon shape, size, and weight of containers.

The structured interfaces (ways of exchanging information) at the heart of APIs enable a huge number of computer systems and services to communicate with each other and provide better, and often cheaper, services to consumers. Service providers no longer need to understand all the complexities of, for instance, payment and delivery systems, they are free to focus on providing the best value to their customers.

APIs as connective tissue

By connecting many service providers: payment providers like VISA and MasterCard, delivery providers like UPS and Fedex, and product providers like the online grocery store’s inventory systems, public APIs are the connective tissue that enables complex interactions between multiple services to be delivered in a relatively simple and seamless manner.

APIs as Lego pieces

Structuring and creating services, for example, ListProducts, like small Lego pieces enable those same pieces to be mixed, matched, and reused to create new services without needing to reinvent the wheel at every step of the way. Payment providers, like Stripe, provide standardized ways of making payments that can be bundled into many different products without needing to reinvent payment for every one of those services.

APIs as hidden reservoirs of business value

Just as observing global shipping traffic volume and patterns can provide incredible insight into the world’s economies, observing the volumes and patterns of information exchange between various services can provide tremendous insights into the health of a business. Deep analysis of these information exchange highways can help diagnose points of concern for a business: falling demand for a product, and barriers to customers’ access to a service, among many more insights.

Jozu: unlocking hidden business insights

As more and more application value comes from interactions between machines (internet-of-things, modern manufacturing, and AI apps like ChatGTP) these API interactions also become increasingly critical. Two decades ago marketing automation vendors revolutionized business-to-consumer applications by allowing vendors to see details of how we, as customers, were interacting with their web stores – what we searched for, what we bought, and what we discarded. Today, those same insights happen at the API layer in how systems interact as much, or more, than at the consumer’s front-end interaction. Having detailed access to the business observability data that comes from API traffic is critical to enterprises if they are to meet the increasingly complex demands from today’s customers and partners. Jozu will address this need by providing a data enrichment and growth platform targeted at product managers and business owners whose applications rely on business-critical API interactions.

Categorized as Engineering

By Saidimu Apale

Director, Head of Engineering at Jozu