A set of protocols, routines, functions and/or commands that programmers use to develop software or facilitate interaction between distinct systems. APIs are available for both desktop and mobile use, and are typically useful for programming graphic user interface components, as well as allowing a software program to request and accommodate services from another program.
This definition explicitly excludes any "API" that relies on local binding (e.g. via loading a DLL) to function.
Topic
Integration
EA: Application Architecture