What is Application Programming Interface (API)?
In the previous article, we discussed Electronic Data Interchange (EDI) and its use within the transportation industry. In this article, we will be talking about another, more recently adopted, yet very popular protocol known as Application Programming Interface (API).
What is API?
Josh Walker, an analyst at Forrester Research, describes building an application with no APIs as “basically like building a house with no doors. The API for all computing purposes is how you open the blinds and the doors and exchange information.”
An API in its simplest form is simply a bit of code that allows for two software programs to communicate with each other. APIs act as a sort of set of standards that either permits or denies outside software to request information from the main program.
Not Utilizing API:
An app finds a Delta flight status by going to the http://www.delta.com, searching for the flight number, and interpreting the status of the flight search much like a human would. Without utilizing the capabilities of an API, the app finds the information it is looking for by manually going through all the same steps you would have to go through in order to find the same information.
An app finds the Delta flight status by simply sending a message in a standard format (API) to delta.com and the API on the Delta website then returns the status of that flight directly to the app.
Application programming interface use has increased tremendously over the last ten years.
In fact, many of today’s most commonly used web applications would not even be possible without these capabilities.
For example, every time something is shared on social media, an application programming interface is involved. Any time an application allows you to sign in with your Facebook or Google credentials, an API is the bridge that links that information together. Likewise, any application that allows you to import contacts or friends from social media is using API to do so.
Some of the most popular APIs currently being used are:
- Google Maps – embeds Google Maps into applications
- Google Analytics – allows Google Analytics to access
- Youtube API – embeds YouTube players or enables YouTube search capabilities
- Social Media – allows native or third-party apps to interact with the social media platform’s functions
- Weather Channel – allows weather from The Weather Channel to populate within an application
- Dropbox – allows for an app to sync Dropbox files across platforms securely
- WordPress – enables WordPress to communicate with other web properties regardless of programming language
API use in Transportation
This technology has also found increased usage within the transportation industry, bridging the information gap between shippers, carriers, brokers, and software systems.
Application programming interfaces have several uses within the industry, some of the most prevalent of these including:
- Rating – sends quote request to multiple carriers and returns pricing results to requesting application
- Transit Times – retrieves standard transit times from multiple carriers
- Dispatch – sends carrier pick-up request and responds with pick-up confirmations
- Tracking – allows for track and trace information on shipments
- Document Retrieval – allows for developers to request shipping documents utilizing a carrier’s tracking number
- Expedited Transit Time – allows for developers to get expedited transit times
API offers several advantages with the main one being speed. Requests and responses are exchanged within seconds as opposed to minutes, or in some instances even hours. Other advantages include:
- Internet-based connectivity
- Communication is two-way with confirmations included within the transaction sets
- Since communication is two-way APIs offer reliable transaction sets
- The end product offers user-friendly experiences improving internal and external user satisfaction
- Provides evolving functionality as developers find new uses for API exchanges
The disadvantages of application programming interfaces include:
- Implementing and providing API capabilities can be costly in terms of development times, ongoing maintenance requirements, and providing support.
- Scaling application programming interfaces requires extensive programming knowledge and the learning curve can fairly steep when understanding how to extend the capabilities of your API framework.
- Security can be a concern as APIs add another potential attack layer to programs/websites.
Did you know that Redwood’s Rating API can help you automate your manual tasks and save money on your transportation spend?