Ever wonder how it is that you can share photos from Flickr to sites like Facebook? Ever wonder how a Google map can pinpoint your geo coordinates in Yelp? Or that your tweets can be simultaneously published to Facebook? Or, simply, that we’re able to show you YouTube videos on the mental_floss blog?
All these types of collaborations are done through what’s called an API, or application programming interface. It’s sort of like how we humans interact with Web and mobile app, only south (reference? reference?) APIs let different platforms, apps and servers communicate with each other over the Interwebz.
So let’s take an example and see how a simple API works. There’s a cool site called InstantWatcher.com that lets you see what’s hot on Netflix at any given moment. They organize for you the most recent additions to the Netflix library and movies that are getting streamed the most. How do they do it? Simple! Netflix has various APIs that are accessible to application developers. In this case, InstantWatcher is doing a simple call to the Netflix database and querying based on criteria, like, what movie ID numbers have been added in the last 24 hours? What movie ID number are being streamed the most over the last 24 hours? And so forth. All InstantWatcher is really doing is organizing and presenting the information back to you in a way that’s easily consumable.
Now, you might say to yourself: Why doesn’t Netflix provide this service too? Why do they need to develop an API so that someone else can make money from such a service (it’s free to users, but ad supported)? Those are good questions! I wondered the same thing myself! But remember, the API allows developers to interact with Netflix’s data in myriad ways. InstantWatcher is simply calling the API to get the most basic info and ignoring all the other stuff that doesn’t interest them.