An Application Programming Interface (API[4]) is a software intermediary that enables two applications to communicate with each other. APIs simplify the programming process by abstracting the underlying implementation and exposing only necessary objects or actions. This concept, dating back to the 1940s, has evolved to include hardware interfaces and has become crucial in modern software development[1]. APIs are used for various purposes, including data exchange, operating system interactions, and combining services into new applications. They also play a significant role in business expansion and integration with third-party services. Proper designing, documentation, versioning, and security[3] measures are essential aspects of API management. Furthermore, APIs have significant legal implications and are often targeted by cybercriminals. OpenAPI, a framework for API design, contributes to the standardization and interoperability[2] of APIs.
An application programming interface (API) is a way for two or more computer programs or components to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build or use such a connection or interface is called an API specification. A computer system that meets this standard is said to implement ou expose an API. The term API may refer either to the specification or to the implementation. Whereas a system's interface do utilizador dictates how its end-users interact with the system in question, its API dictates how to write code that takes advantage of that system's capabilities.
In contrast to a interface do utilizador, which connects a computer to a person, an application programming interface connects computers or pieces of software to each other. It is not intended to be used directly by a person (the end user) other than a computer programmer who is incorporating it into the software. An API is often made up of different parts which act as tools or services that are available to the programmer. A program or a programmer that uses one of these parts is said to call that portion of the API. The calls that make up the API are also known as subroutines, methods, requests, or endpoints. An API specification defines these calls, meaning that it explains how to use or implement them.
One purpose of APIs is to hide the internal details of how a system works, exposing only those parts that a programmer will find useful, and keeping them consistent even if the internal details change later. An API may be custom-built for a particular pair of systems, or it may be a shared standard allowing interoperability among many systems.
There are APIs for programming languages, software libraries, computer sistemas operativose computer hardware. APIs originated in the 1940s, though the term did not emerge until the 1960s and 1970s. Contemporary usage of the term API often refers to web APIs, which allow communication between computers that are joined by the internet. Recent developments in APIs have led to the rise in popularity of microservices, which are loosely coupled services accessed through public APIs.