API or Application Programming Interface is a set of definitions and protocols that allow one application to communicate with another application.
In general, when we speak about API, we refer to it as web API, accessible over the internet. But APIs can be exposed through local files (not just as web) to allow applications to communicate with each other. An API may be for a database system, operating system, computer hardware, or a web-based system.
The below diagram shows a typical client-server architecture-based application that defines an API layer on the database system.
There is another term "web service" quite used for API services. The key difference between web service and API is that,
Web services are always accessible through internet. But APIs can be accessible without internet (can be used to communiate locally"
All webs ervices are APIs, but not all APIs are web services
REST API is a type of web service API. A REST API is a standardized architecture style for creating a web service API. REST API uses HTTP methods to make requests over a network.
REST was defined by Roy Fielding in 2000 during his Ph.D.
A REST request from the client to server consists of the following components:
This determines where the request to be sent.
There are 5 methods: GET, PUT, POST, PATCH, DELETE
It is optional
Authorization credentials are passed through the header.
There are other properties like content-type, application-type, and so on that can be part of the header.
It is optional
A mechanism to send additional data to the server to the API request. These parameters can be used to define and control the result of the API response.
It is optional
Contains data that needs to be sent to the server.
Benefits of REST API
REST offers a standardized methodology for making requests to an API. If an API is available over the internet, no additional software installation is needed within your application. Any REST client can be used to make communication using the exposed API.
REST API simplified the client-server architecture for effective communication. The client code can be updated without affecting the server that exposes APIs. Similarly, the client code doesn't need any update if there is any change server code that retains the behavior as before.
RES API simplified the integration with any 3rd party applications without any additional software specific to the 3rd party application.
How can you use Ekahaa Abstracta™ in the context of API?:
Ekahaa Abstracta™ enables organizations to unify, fortify, restify and democratize any data. Abstracta™ empowers businesses to expose any data as a web service using REST standards in less than 5 minutes.
Abstracta™ can be used in the following layers:
Authorization Layer => Enables to define the profile attributes to set authorization filters
API Layer => Enables to create data services and expose them as REST APIs.
For enterprise needs, Abstracta™ supports AD authentication integration.