What is an application programming INTERFACE {API}? is a way for two or more computer programs 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 ,
an API is often made up of different parts which act as tools or services that are available to the programmer
In Financial Institution
An Application programming interface {APIs} trading algorithms or models and exchange’s an/or broker’s platform. An API is essential to implementing an automated trading strategy.
This also varies through Cryptocurrency as a middleman between you and your broker so you can perform various transactions. These may include buying and selling assets, viewing real-time market data, and executing more sophisticated trading strategies.
This technology can be used for databases or hardware. Further explains it can simplify the user interface. This way, external companies are for instance able to use Windows APIs.
Entities or enterprise kick it off by knowing what type of API is best suitable to rely on while trying to interact with their customers
Types Of APIs With Differences
APIs are not all same, in any way, developers can work with an assortment of API types, protocols and architectures that suit the unique needs of different applications and businesses, API is a powerful and versatile means to connect diverse and disparate software applications. APIs allow a vast array of unrelated software products to integrate and interoperate with other software and data
Basically there are {4} types of of APIs but this post we came up with {3} different types of APIs 👇
- INTERNAL/INNER API
- PUBLIC/OPEN API
- PARTNERS API
- Internal APIs
It is extremely important to understand or have an idea that enterprise APIs can either be internal or it can either be external,
they are Internal in the sense that they are across or within the Line of Business {LOB} . When an API is external it means that it is designed for partners and third-party developers
Internal APIs provide an access to one of the most sensitive resources within an organization’s software system. They simplify the process of linking back-end systems or data between the multitude of applications that control internal operations
Internal APIs traditionally present weak security and authentication or none at all — because the APIs already are assumed for internal use, and such security levels are assumed to be in place through other policies. This is changing, however, as greater threat awareness and regulatory compliance demands increasingly influence an organization’s API strategy.
IS AN API PUBLIC OR PRIVATE
An API provides a way for developers to access the functionality of an operating system, program or other service. Public APIs are open to anyone and can be used without restrictions. Private APIs are only accessible by authorized users and may be subject to usage restrictions
- Public APIs
An open API, also referred to as a public API, is an application programming interface made publicly available to software developers, the API might be made available through a home building supply store.
A public API are published on the internet and shared freely, allowing the owner of a network-accessible service to give a universal access to consumers enabling customers to pick the supplies to complete their projects with running tallies of costs.
While some may consider open and public APIs an analogous term, some may site a difference in that open APIs are shared freely, and that public APIs are typically more restrictive in terms of sharing assets.
- Partners API
This partners API is mainly for some authorized companies or consumers, only available to specifically selected and authorized outside developers or API consumers, is a means to facilitate business-to-business activities.
Partner APIs are APIs exposed by/to the strategic business partners. They are not available publicly and need specific entitlement to access them. Like open APIs, partner APIs are the tip of the iceberg because they are the most visible ones and are used to communicate beyond the company’s boundaries
API Protocols And Architectures
APIs exchange and data requires clear protocol and architectures, the rules remain structures and constraints which commands the API operation.
Three {3} main measures of API that support protocol and architectures are there today: REST, RPC and SOAP
These format maybe be dubbed with each characteristics with trade-offs and unemployed for mostly different reasons.
Representational State Transfer {REST}
The representational state transfer {REST} architecture is perhaps the most popular approach to building APIs. REST relies on a client/server approach that separates front and back ends of the API, and provides considerable flexibility in development and implementation.
REST is “stateless,” which means the API stores no data or status between requests, it also supports the cache too REST APIs, usually termed “RESTful APIs,” also can communicate directly or operate through intermediate systems such as API gateways and load balancers
Remote Procedural Call {RPC}
Remote procedure call is when a computer program causes a procedure to execute in a different address space, which is coded as if it were a normal procedure call, without the programmer explicitly coding the details for the remote interaction
RPC uses the client-server model. The requesting program is a client, and the service-providing program is the server. Like a local procedure call, an RPC is a synchronous operation requiring the requesting program to be suspended until the results of the remote procedure are returned. However, the use of lightweight processes or threads that share the same address space enables multiple RPCs to be performed concurrently
RPC include batching calls (Batching Remote Procedure Calls), broadcasting calls (Broadcasting Remote Procedure Calls), callback procedures (RPC Call-back Procedures), and using the select subroutine (Using the select Subroutine on the Server Side).
Simple Object Access Protocol {SOAP}
This is a messaging protocol specification for exchanging structured information in the implementation of web services in a computer networks.
SOAP protocol or in other words is a definition of how web services talk to each other or talk to client applications that invoke them.
SOAP allows developers to invoke processes running on different operating systems {such as Windows, macOS, and Linux} to authenticate,authorize, and communicate using Extensible Markup Language {XML}
Leave a Reply