API – Application Programming Interface
An API defines the rules (in the form of routines, protocols and tools) by which one piece of software communicates with another. APIs are interfaces between software, not users. APIs make possible much of the web experience we see today, where developers take advantage of APIs to applications like Google or Twitter to add new functionality to their software.
APIs do all this by exposing some of a program’s internal functions to another, allowing applications to share their data and functionality. An API makes it easy to do this without requiring that developers have access to, or an understanding of, the underlying source code.