Welcome to my first blog post. It is about APIs.
What is an API?
API stands for Application Programming Interface. It is a software interface that allows two software components or applications to interact with each other. It enables the two applications to exchange some data without exposing the internal details of either application. In contrast to user interface which connects the user to an application, an API connects one software application to another.
For example, when booking a flight ticket through an airline website, we have to give the origin and destination, the dates for travel, number of passengers and some other details and it will show the available flights. In this case, we interacted with airline's website to access their database to see the available flights and their costs. But if we are booking a flight through an online travel service like Expedia or Kayak which does not have direct access to the airlines' databases, the travel service interacts with a number of airlines' APIs. The API gets the information from the airline's database and returns it to the travel service, which then shows the relevant information.
Why are APIs important?
Without the APIs, the functionality of the application would be limited. Each application would be limited to a narrow set of its own functions as the scope of expanding it to something that others have already invented and used would not be possible. It will also take more time to reinvent the wheel and develop the same functionality which could otherwise be reused. Moreover, it will be problematic to get some functions and data other than through the API (for example, a weather forecast).