Installation

What is an API (application programming interface)?

APIs are used to allow software applications to communicate. This unique interface dictates requests and responses to and from different systems to allow for the exchange of data. As an acronym, there is important meaning in each word that an API represents.

Interface: Let’s start with the “I” because that helps better contextualize the term in question. As an interface, an API is a way to interact with the underlying program or software for which this API was created. We work in interfaces everyday. In fact, you are currently viewing this article through an interface – a graphical user interface (GUI or UI). Developers spend much of their time coding in a different interface – a command line interface (CLI). When you talk to Siri, you are leveraging yet another interface – a natural language interface (NLI). We could go on here, but I think you get the picture.

An API is a unique interface in which to interact with software.

Application: APIs are specific to an application, service, or function. The application is what an end user (whether that be a person or another application) is trying to communicate with by way of an interface. The same way you are interacting with this UI to reach Aloi or you would be interacting with the bank when using an ATM.

APIs are specific to an application.

Programming: This speaks to the function of this interface. The same way UIs are intended for everyday consumers and CLIs are intended for developers, APIs are intended for the communication among and between different programs, software, or applications. While humans interact with APIs to develop and connect them, the end users of an API are other applications.

Why are APIs used?

APIs enable apps to utilize data or functionality of other software within it.

A great way to think about APIs is to put it in the context of your own interactions with applications. When you are using an application, say Google, you have a prescribed method of interacting with it. You know to type the search criteria into the search bar and press “enter” or click the button that says “Google search.”

You are also intimately familiar with the format of data that will be returned to you: at the top of the page you will often see a few sponsored results that are paid for, likely a summary about a place or person in a box to the upper right if that is the nature of your search. The point is this: as a user of Google’s UI, you have an intuitive understanding of how the system is requesting data and responding. In the event you do something outside the parameters of the app’s expectations, you will receive an error message explaining what went wrong.

An API is no different. In fact, Google’s search application has an API. Through the application programming interface, the same parameters are upheld in a different format to achieve an executed search through Google’s search application. While the UI is leveraged by internet users, the API is leveraged by other applications that want to utilize a Google Search natively.

Who works with APIs?

In short, everyone works with APIs. But an answer as simple as that would be as helpful as answering “what color is the sky?”

Developers build the interface; just like they build UIs. Software engineers also work with APIs to connect them. Once an API is built and published, it can interact with other APIs through the internet. Through the connection of APIs, the software can communicate with one another.

Developers build, connect, and manage APIs.

Software applications consume and request data from APIs.

What does an API look like?

API endpoints are the URLs that an API user communicates with in order to access a particular action in that application.

For example, in looking at Insightly’s API documentation you can see that in order to access information on a particular contact the action would be “GET contacts.”

In order to get information on a contact, the API call would go to the following endpoint:

https://api.insightly.com/v3.1/Contacts

To execute the GET contact API call for a contact with the ID 294272126, you would call the API as follows:

https://api.insightly.com/v3.1/Contacts/294272126

The Insightly API would return the following:

… the list goes on, but hopefully you get the picture. You effectively just walked through a successful action in order to request data from the Insightly API.

Same data. Different interface.

When are APIs used?

All the time. But seriously.

Even in the page you are reading, the front-end UI is calling an underlying API to make this content and your digital experience come to life. In an increasingly complex yet technologically advanced era, computing has been broken down into its smallest parts to create the strongest outcome. In a cloud-based environment, dozens or hundreds of applications are working together to bring a refined technology product to life.

Put another way, APIs are the engine to connect different applications that do different things. “Sign in through Google” is a Google authentication API that talks to the hosting site’s API. App stores apps connect respective application APIs and call a bespoke API to bring a certain outcome to life. Your SalesForce integration with HubSpot is two APIs talking to each other.

APIs are used all the time by everyone. APIs allow for software communication.

How should I use this site?

At Aloi, we believe in community. And we are proud to be part of the API community. Our name (pronounced `a, loi or al-loy) was inspired by alloy (the correct spelling) — a metal created by a combination of two or more elements to produce greater overall strength. Aloi is similar. We are a destination for business users and developers alike to share knowledge, community and integrations that, in turn, will make for a stronger whole.

In the associated resources, you will find a guide to better understanding APIs and integrations no matter what your technical acumen. Some topics may be too trivial for you and others may be too technical. Take a spin and join us on our journey to create a more connected world.

And if you are ready to start integrating, check out our platform. We have simplified the ways in which software connects. And we are creating the worlds’ largest community of people, software, and connectors. Join us!