A-P-You & A.P.I.

I know you’ve seen the term before: API. It’s available for practically every major website you visit or service you use on the regular.

As is the case with most seemingly random abbreviations, “API” refers to something technical. Of course to you, John and Jane Q. I-want-to-develop-an-app-and-be-a-tech-entrepreneur, “technical” is synonymous with “programmers.” If you’re not a developer—then you probably don’t care. But here’s the thing:

If you plan to build an app [read: get an app built], you should probably know a thing or two about APIs.

What is an API?

API stands for Application Programming Interface. In one sense, you can think of it as a bridge between your application and some external software, hardware device, or server. In another sense, you can think of it as a Lego-kit. Whichever analogy you want to use, an API’s primary role is to specify how software components should interact with each other.

Let’s take Facebook for example. If you want to connect your application to Facebook by offering some kind of profile syncing, or perhaps a ‘log in using Facebook’ feature, the person developing your mobile application is going to have to write code that interacts with Facebook.

Naturally, every item on the Facebook website, whether it’s a button or a dropdown or a blank field for text-entry, is defined within its code. Most of them are defined uniquely: that is, Facebook Developer 63821, who was responsible for writing a certain page of code, named these objects in a way unique to him/her. The API functions like a glossary of all the items that Facebook wants you to have access to.

But that’s just one kind of API:

API’s can also be used to access databases or hardware. So what’s the easiest way to get your app, for example, to take photos on an iPhone?
Through the iOS Camera API.
In yet another metaphor, an API is kind of the keys to the castle. You might be able to find a way in by scaling the walls or digging a tunnel or parachuting in from above, but the easiest way in is to just use the front gate.

Of course, an API won’t give you access to everything that a website or service has to offer—it will only grant you the tools to interact with the software in the way that the company wants your app to interact.

Facebook offers an API to log-in using their service because it’s a win-win for everyone: More apps integrate with Facebook (instead of pulling users away), and the app-developers can make their app easier to gain new users. So Facebook has defined precisely how it wants other software to interact with its own—and the API presents that toolkit.

Why Do I Need the API?

The keys-to-the-castle. Your developers, (depending on how good they are and how much you want to pay them), could dig piecemeal through the public code, and gather much of the information they need. It’s possible that they could then find a way to tunnel in and devise a means for their software to interact with that code, but it’s going to take a lot of time, and it might not be worth it.

You will also have no access to anything on the other site’s server (unless you want to illegally hack it—and that could prove to be very difficult and risky), so your interactions will be quite limited. Your developers could spend a week gathering the info they need, only to realize that the desired functionality is not actually (or legally) possible to create!

So whether it’s the bridge between your mobile application and some other software, or the keys to the castle and access to a server, or even the Lego-kit with which to interact with an external site’s user interface, or the hardware device on which you choose to have your app: you now know what an API is and when and why you might need one.

Be a better entrepreneur by understanding mobile app development.