If you are developing a new app, there is a good chance that you are going to need one or more APIs. Oh no, you think – here we go again the acronyms and the tech talk! Well don’t worry, we are going to break it down for you.
What the heck is an API and what does it do?
The acronym API stands for “Application Programming Interface” and while the term may seem daunting, APIs are simply language or sets of rules that are designed to make a developer’s job easier.
The purpose of an API is to allow machines from different systems to talk to one another. Different systems and programs that need to talk to one in other are often written in different programming languages and APIs are a tool to help break this language barrier.
A common example is the purchasing of gift cards. Shopper’s Drug Mart and Home Depot and two different companies that use two different systems, and yet you can purchase a Home Depot gift card at Shopper’s Drug Mart. When the cashier at Shopper’s activates the card, an API is used to “talk” to Home Depot’s system allowing the customer to use the card at Home Depot.
Another example is when you sign up for an account on a website and you are given the option to either enter new login information or to sign in through your Facebook account. The website and Facebook are two completely different companies and yet through the convenience of having an API, the two systems talk to each other making it easier for the end user.
APIs provide mechanisms for one piece of software to communicate with another – the most common reason for this is to retrieve data. An example of this would be how Uber communicates with your phones GPS to provide the driver with information on how to find you.
Why you may need to use APIs in developing your app.
APIs streamline the process of app development. Operating systems like Apple’s iOS and others provide a large number of APIs, all of which are geared toward making app development easier. For example, say you want to be able to use your phone’s camera in conjunction with your app. There is no need to write your own interface for the camera. Rather, you can use the operating system’s camera interface to embed the camera function into your app.
The same idea applies when you want your app to access a payment gateway. There is no need for a developer to go through the onerous coding (not to mention regulatory) process of developing a whole new payment gateway. Rather they can use an API to connect to an existing platform such as PayPal, Moneris, etc.
APIs and user experience
We already mentioned that APIs make a developer’s job easier but they are also important for improving the experience of the user. Let’s look at social media management tools like Hootsuite or Tweetdeck as examples. These programs interface with various social media platforms and allow the user to view and manage several accounts at once rather than having to login to each one separately.
Another example are apps for public transportation. Rather than wait in the rain and cold not knowing when the next bus is going to arrive, a user can access an app that uses the transit system’s API in order to find out when the next bus is going to arrive.
So now that you have a better understanding of what an API is, the term isn’t nearly as scary is it? In fact, app development would be a whole lot more complicated without them!