In computer programming, an application programming interface (API) is a set of routines, protocols, and tools for building software applications.
An API is a Contract
In everyday life, a contract defines responsibilities between parties. For example, someone giving money and then receiving services from another person. An API is a contract, as well. It strictly defines what a programmer supplies and then what they receive from a server, library or other programming construct.clintandrewhall