Building grid

Application Program Interface (API)

Application Program Interface (API)

Definition

An Application Program Interface (API) is an interface that is built to connect computer systems to each other in order to share data. An API is distinct from a user interface, which connects a computer directly to a person. While the term is often used to refer to examples in web services, creators of operating systems, software libraries, programming languages, and other resources can build APIs to provide instructions to users on how to send data to, or extract data from, their product or service. 

An API allows programs to share a select amount of internal data with external users without exposing all of the program’s data. This gives companies the opportunity to provide data access while maintaining security and control over their data. Typically, APIs include a set of instructions explaining how to request data and what limitations there are in using the API.

Often, APIs are accessed via a computer programming language such as Python or Java, in which case users create their own code to access the data. Rarely, APIs will have a user interface, such as a web form that can build queries. Ideally, the API creator will also provide robust documentation on the types of data provided, how to build queries, and examples of code that works with their API.

Examples

A researcher might write a Python script to place a request to the Google Drive API asking for all files in their Drive that contain a specific word in the title of the file. The API provides a bridge between Google's raw, structured data and the request sent in Python. The API will have a set of instructions that researchers must follow exactly in order to obtain the data from the request.

Relevant Literature

Eye on Tech has a short and simple overview of APIs here:

https://www.youtube.com/watch?v=AtUyLBOe7FI 

IBM provides a robust guide to APIs, defining them, providing examples, and discussing why they are needed:

https://www.ibm.com/think/topics/api 

 

last updated: 07/15/26 14:33