What is an API and How Does it Work?
If you’ve ever had a talk about software, one of the many acronyms you’ve probably come across is the term “API”. Easy to confuse with IPA, but today we’re not talking about a type of light-coloured bitter beer. Instead, we take you through the basics of the API, or Application Programming Interface. An API is a set of functions that allows applications to access, use and interact with data from other software components and operating systems.
Lost already? No worries! Read on to learn all about what an API is, does, and how we use them in the app development process.
What is an API?
Let’s start by clarifying what an API is exactly. Simply said, an API is a software intermediary that allows two different applications or services to interact with one another. You can think of it as the process of ordering food in a restaurant. You request a dish from the menu, the request is sent to the kitchen, the kitchen prepares the dish with the available ingredients, and eventually, the dish you ordered is being served in front of you. Of course, this is a very simplified example of how an API works, but it visualizes the basic process of request - process - response. Here, the API is the waiter that takes your order, sends it to the kitchen, and delivers the finished dish back to you.
A real-life example of an API in action is when you use your camera to take a picture for your Instagram. Here, the API makes sure that you can access your phone’s camera software inside the Instagram application. If there wasn’t an API to bring these elements together, Instagram developers would have to create their own camera software inside the app. Without APIs, developing a functional application with multiple external services would be a much more complex, costly, and time-consuming process (if it were even possible at all).
Hey there! At Lizard Global, we like to be transparent to all our readers and clients. That’s why we write blogs on everything that has anything to do with the development of your application. Do you want to know more about a specific topic? Let us know! Get in touch on our social media channels or send a mail to email@example.com.
The birth of the API
Did you know that Salesforce is responsible for the emergence of the first web-based APIs? Back in the late 1990s, they introduced their own web-based sales automation tool, starting the SaaS (Software as a Service) revolution. Other internet-based businesses could make use of the tool’s infrastructure via the World Wide Web. Even before the emergence of the internet, APIs already existed in the form of protocols supporting limited distributed computing networks. Salesforce has been one of the first organizations to recognize the value of data-driven transformation. Their web-based sales automation product was very much alike the first API service iteration. Thanks to APIs, we are able to provide CRM integrations as a standard service at Lizard Global.
How do APIs work in app development?
Now that we know the basics of APIs, it’s time to dig a little deeper into how APIs work within the sphere of app development. As mentioned before, APIs make the lives of our developers much easier. That means, thanks to APIs, we can provide a much faster Time to Market of your product. For instance, if we’re working on an enterprise application or mobile game that requires a functionality of saving the progress of a current session, we can easily connect the application to, for example, the Google Drive or Dropbox via an API. This way, the user can decide to save their progress and pick up where they left off when they access the app at a later moment. The API sends the data to the Drive and retrieves it again when needed.
Another example of an API we use on a daily basis is the postcode.nl API, which is used to retrieve information about addresses to autofill a registration form. For example, if you insert your postal code, the API connects to the database of postcode.nl and requests the needed information, such as the street name, house number and city/province that is connected to that specific postal code. This way of auto filling a form is all done by an API, and saves a lot of time.
APIs can also greatly optimize the overall user experience of an application. For example, when you want to log into an application, you often get the chance to login via your Facebook, Google, or other account providers, saving you the hassle of manually setting up an entirely new account. This concept of signing in via a third-party API is also known as SSO (single-sign on). In order to obtain authorization to access the required data to login, a so-called OAuth protocol is used. This authorization allows you to give a website or app access to some information about your account without requiring your password. How does that work? Let’s have a closer look at OAuths!
Generally, the OAuth protocol serves two main objectives on the internet: signing in and for third-party applications. OAuth is frequently used to simplify the process of creating an account and signing into an online service. Instead of creating a new username and password for a service like, for example, Spotify, you can choose the "Sign In with Facebook" option. The API connects to your Facebook profile, requests authorization to collect your data and sends the information back to Spotify to create a new account. When you check into Spotify again in the future, it recognizes that you're using the same Facebook account and grants you access to it. You don't need to create a new account because Facebook will authenticate you. Good to know here is that the API doesn’t simply take your username and password. Instead, it assures your privacy by only gathering the information that is necessary to login to Spotify. This often includes your name, email address.
OAuth is also used for third-party applications. This is the case when an application you’re using needs specific information from another app, apart from the credentials it used for signing in. It authorizes third-party apps to gain access to certain areas of your account. Each application is given a one-of-a-kind API Key or access token that restricts the amount of access it has to your account. For example, a third-party app that connects to Twitter may only be able to view your tweets but not send new ones. The app will lose access to your account if that unique access token is removed in the future, which requires the API to request authorization again the next time you want to connect to Twitter.
Want to know more about JSON web/access tokens, authentication and authorization? Check out this blog!
Need a hand?
Now that we’ve taken a deep dive into the topic of APIs, it has become clear that they play an indispensable role in app- and web development. It’s very likely that your own application will also include the use of APIs, depending on the functionality and purpose of the app. At Lizard Global, our developers are experts at utilizing the right APIs for each purpose and implementing them with security and performance as a number one priority. No matter the type of application, there’s likely a benefit from using one or more APIs. From native mobile apps to web applications, we make sure to provide your end-users with a pleasant, secure, and frictionless experience when faced with APIs.
Are you looking for a development partner to turn your app idea into reality, digitally transform your business and disrupt the market? We’d love to hear about your innovative ideas and find out how we can work towards a mutually fruitful partnership. Leave your info in our contact form, and we get back to you as soon as possible.
Let’s get to work!