Application programming interface
In computer programming, an application programming interface (API) is a set of routines, protocols, and tools for building application software.
Contents
Description
An API expresses a software component in terms of its operations, inputs, outputs, and underlying data types.
An API defines functionalities that are independent of their respective implementations, which allows definitions and implementations to vary without compromising each other.
A good API makes it easier to develop a program by providing all the building blocks. A programmer then puts the blocks together.
APIs and programming GUI components
In addition to accessing databases or computer hardware, such as hard disk drives or video cards, an API can ease the work of programming GUI components.
For example, an API can facilitate integration of new features into existing applications (a so-called "plug-in API"). An API can also assist otherwise distinct applications with sharing data, which can help to integrate and enhance the functionalities of the applications.
API libraries
APIs often come in the form of a library that includes specifications for:
SOAP and REST
In other cases, notably SOAP and REST services, an API is simply a specification of remote calls exposed to the API consumers.
See also
- Application software
- Class (computer programming)
- Computer program
- Computer programming
- Data (computing)
- Data structure
- Data type
- Framework (computing)
- Libraries and frameworks (computing)
- Library (computing)
- Input
- Operations
- Output
- Protocol
- Representational state transfer (REST)
- Routines
- SOAP
- Software development
- Software development kit
- Variable (computing)
External links
Public APIs
- Loripsum.net
- Church Calendar API
- Random word API
- Recipe Puppy
- Foreign exchange rates and currency conversion
- Deck of cards API
- Quotes on Design
- Sunset and sunrise times API