INTRODUCTION TO API

API
  • A application-programming interface (API) is a set of programming instructions and standards for accessing a Web-based software application or Web tool . A software company releases its API to the public so that other software developers can design products that are powered by its service.
  • In   computer programming , an   application programming interface   (API) is a set of routines, protocols, and tools for building software applications. An API expresses a   software component   in terms of its operations, inputs, outputs, and underlying types. An API defines functionalities that are independent of their respective implementations, which allows definitions and implementations to vary without compromising each other. A good API makes it easier to develop a program by providing all the building blocks. A programmer then puts the blocks together.
  • In addition to accessing   databases   or   computer hardware , such as   hard disk drives   or   video cards , an API can ease the work of programming GUI components. For example, an API can facilitate integration of new features into existing applications (a so-called "plug-in API"). An API can also assist otherwise distinct applications with sharing data, which can help to integrate and enhance the functionalities of the applications.
  • APIs often come in the form of a library that includes specifications for routines , data structures , object classes , and variables. In other cases, notably SOAPand REST services , an API is simply a specification of remote calls exposed to the API consumers.
  • An API specification can take many forms, including an International Standard, such as POSIX , vendor documentation, such as the Microsoft Windows API , or the libraries of a programming language , e.g., Standard Template Library in C++ or Java API .
  • An API differs from an application binary interface (ABI) in that an API is source code-based while an ABI is a binary interface. For instance POSIX is an API, while the Linux Standard Base is an ABI.
  • An application-programming interface (API) is a set of programming instructions and standards for accessing a Web-based software application or Web tool . A software company releases its API to the public so that other software developers can design products that are powered by its service.

History of APIs

  • The history of APIs is something I discuss a lot. The history of modern web APIs is something I include in all my talks, and I'm always surprised by how
    little people understand some of the more popular APIs that got us to where we are at.
  • While modern web APIs were officially born with Roy Fieldings dissertation Architectural Styles and the Design of Network-based Software Architecturesin 2000--Web APIs first appeared in the wild with the introduction of Salesforce on February 7th, when the company officially launched its API at the IDG Demo
    2000 conference.
  • Later in the year, on November 20, 2000,  eBay launched the eBay Application Program Interface (API), along with the eBay Developers Program--which was originally rolled out to only a select number of licensed eBay partners and developers.
  • Then on July 16, 2002,  Amazon launched Amazon.com Web Services allowing developers to incorporate Amazon.com content and features into their own web sites. Amazon.com Web Services (AWS) allowed third party sites to search and display products from Amazon.com in an XML format.

  • In February 2004 the popular photo sharing site Flickr launched. Six months later  they launched their API, and six months after that, they were acquired by Yahoo. The launch of the RESTful API helped Flickr quickly become the image platform of choice for the early blogging and social media movement by allowing users to easily embed their Flickr photos into their blogs and social network streams. While allowing Flickr to focus on a  new approach to business development using web APIs.

  • Then on August 15th 2006,  Facebook launched its long-awaited development platform and API. Version 1.0 of the Facebook Development Platform allowed developers access to Facebook friends, photos, events, and profile information for Facebook.