Un conjunto de rutinas, protocolos y herramientas denominados "building blocks" utilizados en el desarrollo de software de aplicaciones comerciales. Una buena API facilita el desarrollo de un programa al proporcionar todos los bloques de construcción (building blocks) relacionados con las características funcionales de un sistema operativo que las aplicaciones necesitan para especificar, por ejemplo, al interactuar con el sistema operativo (por ejemplo, proporcionado por Microsoft Windows, diferentes versiones de UNIX). Un programador utiliza estas API para desarrollar aplicaciones que pueden operar de manera efectiva y eficiente en la plataforma elegida.