What is the meaning of Application_programming_interface?

A set of routines, protocols, and tools for building software applications, which makes it possible for software components to interact with one another.

Source: wiktionary.org