APPLICATION PROGRAMMING INTERFACE

APPLICATION PROGRAMMING INTERFACE

API is the acronym for Application Programming Interface, which is a software intermediary that allows two applications to talk to each other. In the current world of internet API’s play a very important role as one does not have to hard code multiple applications you can have the permission to access data and use a pre-defined commands thus allowing you to add complex functionality to build your application without having to recreate all the functionality yourself.

To Simplify:

APIs are a powerful part of the modern web. They extend the capabilities of applications you write beyond what you write yourself. They allow you to do things like:

  • Integrate data in your application that someone else stores and maintains
  • Include things like maps and credit card payments while writing very little code yourself
  • Combine real-time data like stock prices with additional functionality you write

API is one of the many ways where you’ll find yourself for accessing data as a professional data scientist. Typically, you’ll send a request and get some data back, often in JSON or XML format. It’s suggested that you practice on a range of different APIs and get some hands-on experience retrieving and working with data.

APIs are what allow everything on the internet to play nicely with each other and work together. It is also one of the most common task that is performed in the current day of any web based programming For instance, wherever you are asked to sign in with Google or Facebook or LinkedIn account or every time a some news channel on their website wants to know your location its done through API’s. The other example can be let’s say we want to build an application that pulls some data from Facebook people liking an FM radio channel page do some analysis on the data and finally tell the most popular FM radio channel of a particular area. All of these can be done right through API — all we have to do is pull data from Facebook API do some Analysis and push the report through the new application.

Every API that you will be working on will have some unique factor but there are three things that need to be done:

  1. Permission : You will need permission to access data or services
  2. Request : you will request for data
  3. Response : you get response depending on the level of permission granted to you to have the data

Some of the common APIs that are used are:

1. Amazon S3

2. Dropbox

3. Facebook

4. Google Maps Geocoding API

5. IBM Watson

6. MailChimp

7. Slack

8. Stormpath

9. Twilio

10. Twitter

Types of API’s

There are thousands of API’s that are available based on the need and topic you want to discover or use, these API’s can be categorized into 5 main types:

1. Open / Public API’s: These API’s are openly available and public API can be found here!

2. Web API’s: Web APIs are APIs that can be accessed using the HTTP protocol. Web APIs are typically used with JavaScript, although this doesn’t always have to be the case. Web API can be found here

3. Partner API’s: A developer needs specific rights or licenses in order to access this type of API because they are not available to the public

4. Private API’s: Also known as internal API, a company uses this kind of API among different internal teams to improve the products and services

5. Composite API’s: Composite APIs are a design approach to batch API requests sequentially into a single API call. Rather than multiple round trips to a server, a client can make one API request with a chain of calls and receive one response. To create an order within a shopping cart API for E-commerce Website is one of the example for an composite API, the data that is required to be pulled requires several end points such as create an customer, create an order, add items, changing order status etc. and all these are to be made in succession, so instead of making multiple requests composite API’s does it in one.

To simply put it — I feel the deeper you dive into API’s the more fascinating it gets so let’s get started

Learning & Development specialist with diverse experience and a strong focus on talent development across businesses.