DEV Community

Cover image for Deciphering The API Conundrum
Joseph David
Joseph David

Posted on • Edited on

Deciphering The API Conundrum

Another mystery to unravel, APIs

An acronym for Application Programming Interface, APIs are best described as a medium or intermediary that allows two applications to communicate.

Nowadays, they are heavily used by developers to make software development super easy by providing most of the building blocks needed in a function. As a result of that, we tend to use them a whole lot, indirectly.

You might wonder why I termed it super easy.

Take for example, as a web developer, you intend building a web app that helps YouTube content creators to easily gain access to analytics based on the views they gained.

I know you might be pumped up to flex your skills in logic, but hold on 🖐

As a developer, to be precise, a smart one, it isn't really necessary for you to know how YouTube parses those data.

You can easily make development faster by implementing YouTube's Analytics API. It would help you integrate YouTube's functionality in the best way possible, into your desired web app.

Follow through, and congratulations, you have a successful project, working optimally with fewer flaws.

From the above illustration, you can tell that APIs allow developers to save time by helping them move on to other important aspects of their projects without doing the underground work and trying to re-invent the wheel

Alright, away from the developer's angle, let's see the last, and most probably, the simplest illustration of an API's function:

Now, if you've ever visited a site that required you to create an account, you might notice an easier way of doing so by clicking on the Sign in with …. Network instead of the classic Email approach

I'm so sure using that approach made your registration easy-peasy. Glad to tell you that you indirectly interacted with an API, the Web Authentication API to be exact.

Role

The main role an API plays is to simplify programming by reducing certain implementations and characteristics to expose only essential actions that a developer needs. In software engineering, this process is known as abstraction.

APIs vs Libraries and Frameworks

APIs are related to software libraries. The major difference is;

An API describes and prescribes a set of rules to be implemented.

A library, on the other hand, is the utilisation of this set of rules

Examples of APIs and their Uses

a. Spotify

It's mostly used to retrieve information from their catalogue about artists, tracks, and playlists

b. YouTube

We can grasp an idea from the illustration we earlier looked at. YouTube's API allows developers to access video statistics and YouTube channels

c. Twitter

The bird app's API allows you to search tweets, build custom direct messaging experiences, and create/manage ad campaigns

Top comments (0)