In simple words API (Application Program Interface) is a gateway to a system. APIs are basically set of methods which shows that this is the way through which you can talk to our system.
Nowadays API is Talk of Town in IT Industry. We get to hear a lot that this company has exposed APIs publicly and this and that. So, what actually is API, what their use is, why people are confused about API and why nowadays APIs are so important, we will try to find answers of above questions.
APIs and there Use
So, we got to know that API is the gateway to our system. APIs are exposed methods through which an external system can talk to our system. What do we mean by talk to our system, that means you expose certain methods of your system which enable a third-party client or application to play with your data and functionality.
Earlier what use to happen, when you wanted to integrate your system with a third party system you would have to build new methods which were very specific to the needs of third-party app. But APIs are such general methods which allow any third-party to integrate with your app.
So, API is a generalized method of your system which enables access to third-party application to your internal data.
Here is example of very famous Public APIs: Google API. Google allows you to use it’s data. We can use google maps in our application. Google exposes it’s authentication API which reduces our head ace to develop a new authorization system.
So, this shows us what is use of APIs. We see that most of the applications use google authentication API (Sign In with google), this means google has published certain method from it’s system which manages our authentication. This is called integration with the help of APIs.
Confusion with APIs
Many developers especially from last decade get confuse with APIs. APIs are meant to be loosely coupled with the third-party system and the not the tightly coupled. Your APIs should be in such a way that any, means any system should be able to integrate with your system. Your APIs should be such that whoever wants to consume your APIs should not have to develop an individual client for the purpose. Because there are a lot of cases where you will see that you have to develop an entirely new application which help you to consume the APIs.
Few Guidelines for developing APIs
- Make your APIs as generic as possible.
- Use the best standard practices for developing APIs.
- Make sure you APIs are simple enough that any system can understand what actually is happening.
Here is beautiful video which demonstrates what API is. Thanks to MuleSoft for this awesome video.
Intentionally I have kept this article short and simple, but more information on APIs is on its way.
If you have any more information about APIs feel free to share here.