According to Forbes, “90% of enterprises are relying on APIs in their cloud integration plans for 2016.” The recent article by Louis Columbus about the 2015 IDG Enterprise Cloud Computing Study reports that over the next 12 months, enterprises will use APIs for various tasks, such as database integration, messaging, portals and storage components; and connecting the application-layer with the cloud and underlying infrastructure.
APIs are becoming increasingly important to business, but what exactly are they? This blog post explains the concept of APIs and how businesses can leverage them to increase the efficiency of their day-to-day operations.
APIs, or Application Programming Interfaces, are a set of tools that allow software developers to create programs. APIs are provided for various levels of the software development process — from low level APIs provided by the operating system, to higher level functionality provided by third-party software vendors, and web APIs that allow a software application to interface with a remote system.
The benefit of APIs is that they can be used to save time when developing software. To illustrate this point, we can look at the Math library of the .NET Framework. This library provides several mathematical functions, such as Pow (for calculating powers), Sqrt (for calculating square roots), Abs (absolute value), and several others that can be used by developers to facilitate performing mathematical calculations. Take Sqrt as an example. Microsoft defines the Math.Sqrt Method as “Returns the square root of a specified number.” As a developer, I do not need to know how to calculate the square root of a number, I just call the method provided by the Math library. If my program needs to know the square root of 9, I would simply write:
int squareRootOf9 = Math.Sqrt(9);
After executing that line, the value of my variable squareRootOf9 will be 3. I do not need to write any of the code to calculate the result. This simple one line statement does the work for me, freeing me up to move on to the next task.
There are thousands of APIs, often referred to as libraries, that can be included into a software package that the developer can use to perform tasks that might otherwise not be possible. As another example, Microsoft Windows provides many APIs that allow developers to create rich graphical applications. These APIs allow developers to instruct Windows to display a new form, perform an action when the user clicks a button, and to read and write data to the disk.
Web APIs are another type of APIs that are very useful. They are often provided by vendors of web-based software applications to allow users to integrate their own applications with the services offered by the vendor. Web APIs are generally accessed over the internet using the standard HTTP protocol.
There are many good reasons to leverage web APIs. Businesses typically rely on a set of software applications to help them handle their day-to-day operations. This software may include commercially available programs, cloud-based applications, and/or custom-designed software.
Frequently, one application will require data that exists in another application, which usually means that users have to manually find data in the first application and enter it into the second. This type of scenario is very common and unproductive. Users feel like they are wasting their time maintaining data in multiple places, and the data within the applications is at risk of becoming out of sync, leaving users wondering which application holds the most correct information. Fortunately, this type of problem can often be solved using the APIs provided by the software packages. In the above scenario, it may be possible to develop a simple add-on that looks for data updated in Application A and moves it to Application B.
Example: Using an API to save time ordering product.
To help understand some of the possibilities in using APIs, let’s walk through a basic example. Let’s say I have a company that manufactures and sells widgets online. In order to make widgets, I need two different components which are supplied by two different vendors. When I am running low on supplies, I need to go to each vendor’s web-based portal, log in, find the products I am looking for, and then place the orders. These systems give me a confirmation that my order was received and provide me with an order number. I also need to track these orders in my own systems for accounting and inventory purposes, which means entering all that information again. By the time I get to the point of entering the order in my system, I am usually in a hurry because I am already behind on my work making widgets. As a result, I make a mistake when re-typing the order number for one of my orders and when I call the supplier to check on the status of my order, they can’t find it.
Rather than doing all that extra work, I could develop an interface between my system and my suppliers’ systems. When I need to order new stock, I just enter the order in my system and the interface calls my suppliers’ APIs to place the order in their system. Their system provides my system with an order number which is automatically added to the order in my system so there is no chance of error.
The above example demonstrates how powerful using APIs can be. You may think that this all sounds great, but how do you get started?
How to Get Started with APIs:
Here at Geotab we recognize the value of APIs. Our own systems use APIs extensively to communicate with one another to automate as much work as possible. We have developed our systems to be fully accessible via APIs to give our customers the ability to manage their data however they wish. The MyGeotab Software Development Kit contains many APIs which can be used by developers to interact with the raw data seen in the MyGeotab application such as devices, trips, GPS data, and engine data. The Geotab Marketplace contains over 100 applications and add-ons enabling customers of all sizes extend their fleet management solution.
Are you currently leveraging APIs or planning on use them to automate some aspect of your business? We would love your feedback.
Please comment below.
Better Practices for the MyGeotab API
The Case of the Slow-Poke Query: A Lesson on Using the API Efficiently
If you liked this post, let us know!