An application program interface (API) is a software intermediary that allows applications to communicate with one another. More specifically, it is code containing a set of routines, protocols, and tools that specify how software components should interact. The primary application for APIs is the incorporation of information from one source into another. APIs do this by sending requests to another application for specific information. For example, one can enter an API into Excel in order to retrieve data from an online source. APIs can also do this by providing an option on one application to alter data on another application. An example of this are the ‘Share on Facebook’ links at the bottom of news articles; by clicking this link, one is instructing the news site to alter data (in the form of a post) on Facebook.