Definition

An API is an Application Programming Interface that enables interaction, access, and data or functionality exchange between two separate software systems. 

APIs allow software components or services to communicate with each other in a defined way and without having to know how the services are implemented. Callers can execute functionality, for example, query inventory, or create, read, and modify data, for example, products. Think of it as a contract between a provider and a consumer.

APIs encapsulate functionality. This makes it more easy to adapt the functionality behind the APIs without bothering others. 

A simple example in the Web is adding the option for entering credit card information on a ticketing website. When you buy tickets online and enter your credit card information, the ticket website uses an API to send your credit card information to a remote application that verifies whether your information is correct. Once the payment is confirmed, the remote application sends a response back to the ticket website with a confirmation to issue the tickets.

An example in cenTaur is the Asset Management microservice. The service encapsulates the asset management in cenTaur. It creates, reads, updates, and deletes assets and offers this functionality as a service through APIs. For example, if another microservice wants to create an asset, this microservice sends a request to the Asset Management microservice using its APIs. Other microservices, applications, or functions do not need to know how to handle assets.

There are internal and public APIs. Internal APIs are only used by other parts of the same application. Public APIs allow external parties such as partners or customers to use the functionality and extend or build own applications using these APIs.

APIs use specifications and protocols to achieve a certain standard of data exchange between the different systems and technologies for smooth communication. For example, the Asset Management offers APIs for REST, gRPC, and Java. 

Common Web APIs specifications are: 

  • REST (Representational State Transfer) 
  • gRPC (Google Remote Procedure Call)
  • SOAP (Simple Object Access Protocol)

To develop cenTaur, we use:

Synonyms

none

Acronyms

Application Programming Interface