What Is An API, Anyway?
API is the acronym for Application Programming Interface, which is a software intermediary that allows two applications to talk to each other. Every time you use an app like Facebook, send an instant message, or check the weather on your phone, you’re using an API.
Application programming interfaces, or APIs, simplify software development and innovation by enabling applications to exchange data and functionality easily and securely.
Developers use APIs to enhance their products by accessing another company’s data, software, services, or code, thereby providing additional features while saving time and money.
When you use an application on your mobile phone, the application connects to the Internet and sends data to a server. The server then retrieves that data, interprets it, performs the necessary actions and sends it back to your phone. The application then interprets that data and presents you with the information you wanted in a readable way.
Imagine you’re sitting in a restaurant with a menu of choices to order from. The kitchen is the part of the “system” that will prepare your order. What is missing is the critical link to communicate your order to the kitchen and deliver your food back to your table. That’s where the waiter or API comes in. The waiter is the messenger, or API, that takes your request or order and tells the kitchen, the system, what to do. Then the waiter delivers the response back to you - the food you ordered
Example Of An API
You may be familiar with the process of searching flights online and you are presented a variety of options to choose from, including different cities, departure and return dates and more. Suppose that you are online booking you are flight on an airline website.
You choose a departure city and date, a return city and date, cabin class, as well as other variables. In order to book your flight, you interact with the airline’s website to access their database and see if any seats are available on those dates and what the costs might be. But what if you are not using the airline’s website - a channel that has direct access to the information? What if you are using an online travel service, such as Kayak or Expedia, which aggregates information from a number of airline databases?
The travel service, in this case, interacts with the airline’s API. The API is the interface that, like your helpful waiter, can be asked by that online travel service to get information from the airline’s database to book seats, baggage options and other requirements. The API then takes the airline’s response to your request and delivers it right back to the online travel service, which then shows you the most updated, relevant information.
An API Provides A Layer Of Security
Your online device's data is never fully exposed to the server, and likewise the server is never fully exposed to your device. Instead, each communicates with small packets of data, sharing only that which is necessary, like ordering from a takeout restaurant. You tell the restaurant what you would like to eat, they tell you what they need in return and when that is completed you get your meal.
How An API Works
An API is a set of defined rules that explain how computers or applications communicate with one another. APIs sit between an application and the web server, acting as an intermediary layer that processes data transfer between systems ands are designed for use by a computer or application, as follows:
- A client application initiates an API call to retrieve information, also known as a request. This request is processed from an application to the web server via the API’s Uniform Resource Identifier (URI) and includes a request verb, headers, and sometimes, a request body.
- After receiving a valid request, the API makes a call to the external program or web server. The server then sends a response to the API with the requested information.
- The API transfers the data to the initial requesting application.
While the data transfer will differ depending on the web service being used, this process of requests and response all happens through an API.
APIs offer security by design because their position as middleman insures the integrity of the functionality between two systems. The API endpoint separates the consuming application from the infrastructure providing the service.
API calls usually include authorisation credentials to reduce the risk of attacks on the server, and an API gateway can limit access to minimise security threats. Also, during the exchange, HTTP headers, cookies, or query string parameters provide additional security layers to the data.
The Modern API
What an “API” is has evolved. Once often described any sort of generic connectivity interface to an application, the modern API has taken on some characteristics that make them extraordinarily useful:
- Modern APIs adhere to standards (typically HTTP and REST), that are developer-friendly, easily accessible and understood broadly.
- They are treated more like products than code. They are designed for consumption for specific audiences (e.g., mobile developers), they are documented, and they are versioned in a way that users can have certain expectations of its maintenance and lifecycle.
- Because they are much more standardised, they have a much stronger discipline for security and governance, as well as monitored and managed for performance and scale.
- Like any piece of productised software, the modern API has its own software development lifecycle (SDLC) of designing, testing, building, managing, and versioning for different uses and languages. Furthermore, modern APIs are well documented for adaptation and versioning.
APIs have become so valuable that they comprise a large part of many business’ revenue and giant companies like Google, eBay, Salesforce.com, Amazon, and Expedia are among those businesses that make big money from APIs.
IBM: Hubspot: MuleSoft: APIMetrics: OKTA: Postman:
You Might Also Read:
Endpoint Security Is More Important Than Ever: