2.1.1.1 Definition: Application Programming Interface (API)

Return to Common Definitions

An Application Programming Interface (API) defines a formal set of reusable digital protocols, routines, functions and/or commands for for independent computer components to interact with each other. 1) GeeksForGeeks, Introduction to APIs, 17 January 2019, Accessed: 16 April 2021, https://www.geeksforgeeks.org/introduction-to-apis/

Sometimes the API is a standard developed independently of any specific component. Other times the API is developed by a “utility” component for use by may other components. Examples of standardized APIs are SQL and POSIX. Examples of a component centric API are Google Sheets, the MS Word .NET API, or the Tomcat API. APIs should not be confused with Graphical User Interface (GUI). 2) GeeksForGeeks, Difference between API and GUI, 22 December 2020, Accessed: 16 April 2021, https://www.geeksforgeeks.org/difference-between-api-and-gui/ . GUIs define the interaction between humans and Graphical Presentation Software while APIs define the interaction between software or hardware components.

In Figure , the API is comprised of methods (i.e., procedures or functions) and protocols. The APIs provide an interface between components within the system, the can access utilities (i.e., |Operating System, DataBase Management System (DBMS), etc.) or they can provide a service (i.e, Geographic Location, Credit Card Authorization or access to address books, etc.). Depending on the system being built, the Component, Utility or Service can be part of the same computer or distributed to other computers usually using TCP networks, but could also be Bluetooth, ZigBee, Near-Field-Communication (NFC), etc.)