API Socket and WebSocket: understand these financial sector technologies!

20 / 08 / 2020

Understanding financial sector technologies may be challenging, especially if you’re not familiar with the topic. Even if you use an API in your business and can assimilate the basics, the assortment of technical terms may be confusing.

After all, what is an API Rest? What is its difference from an API Socket? And do you know how WebSocket works? These are some of the solutions used in the financial market that are key for working in the sector.
Want to know exactly how they assist you in obtaining better results in the digital transformation processes? Then keep on reading!


What is API Rest?

First, let’s talk about API Rest. This solution represents a set of API good practices to make HTTP requests — such as creating, reading, updating, and excluding data on the server — in web applications.
Rest is an abbreviation for Representational State Transfer. Its role is to map the application elements and limit the requests to meet the guidelines of the architecture itself.
These restrictions establish the following conditions:
• The applications in the server and the client must be apart;
• Requests must be made independently, performing actions individually;
• API must use cache to avoid recurrent calls to the server;
• Interface must be uniform, with identified resources handled by displays, navigation links, and auto-descriptive messages.
API Rest typically uses languages XML/JSON language to access back-end applications, according to the purposes.


Using API Rest

There are many ways to use an API Rest. A pretty common one is the implementation of APIs in social networks. Their features range from login use in websites to the execution of other actions such as likes, shares, and data recovery.
A social network button linked to a WordPress page, for example, makes an API call to complete the action. With an authorization token allowed by API Rest, the user can have access to the desired data.
The same happens on e-commerce websites. In those, API works as an intermediate between payment networks to conclude a commercial transaction. This technology will be crucial for providing security and convenience whenever necessary to establish a connection between two destinations.


What is API Socket?

API Socket is a streaming solution that renders quotations, offers books (full and resumed) and times & trades of B3. It is an interface that allows programs to use and control web sockets, which are programming development models.
It generally uses the Berkeley sockets standard for allowing communication between processes. Thus, both can issue the operations provided by the API to send and receive data.
As it is a type of API, its use must conform to a set of rules for data exchange with other programs. API Socket works consistently to process communications, allowing to create sockets in different domains for establishing contact with several recipients, with slight differences among them.
The socket programming development can use UDP (datagram socket) or TCP (flow socket) protocols.
UDP or datagram socket
UDP is implemented by Java DatagramSocket. Communication can be made with or without a connection, but it does not provide resources for mounting and retransmission requests.
The UDP Only transmits packages, being the Upper layers responsible for ensuring the message is correctly sequenced in the codes.


TCP or flow socket

TCP is implemented by JavaSocket. This protocol splits messages into packages and reassembles the proper sequence at the end of the delivery, decreasing the work of upper layers. It also deals with the requests for the retransmission of absent packages.

In Java, there are two classes for API:
• DatagramSocket for sockets — each socket is connected to a UDP port of the process’s local host.
• DatagramPacer for exchanged datagram — the process generates a datagram representation, creating an object that carries the destination address and data as reference to a byte array. Besides that, it issues a call for the object, specifying a reference as an argument.


Whats is WebScoket?

WebSocket is an API that establishes two-way socket connections between a browser and a server, allowing data exchange based on TCP. It provides a Market Data signal in which the quotation resource is provided by streaming and in XML/JSON, available for B3 markets and Currencies.

Its projection is suitable for HTML5-supporting browsers, but any client or server can use it. The WebSocket API standardization is done by W3C, while the WebSocket protocol is carried out by IETF.
Though WebSocket is not fully implemented in all browsers yet, it is possible to use it with fallback libraries whenever it is not available.

Other solutions also support integration based on HTTP API to send WebSocket messages to clients. An extra HTTP request, therefore, results in additional overload to the plain WebSocket.


Traditional server stacks have trouble working with many simultaneous WebSocket connections, even when developed with HTTP request and response cycle. To do this, an architecture capable of receiving high concurrency at low performance, usually developed by linking or non-blocking IO, is necessary.


Meet Market Data Cloud

Now that you understand a little more about the technologies displayed, how about getting to know a Market Data API in real-time for your projects?

Market Data Cloud is a Cedro Technologies service for the financial Market that uses APIs and Feeds for data distribution. It is available for B3 (BM&FBOVESPA), Currencies, Rates, Indexes, and Agricultural markets, among other markets. Communication is done via Pest/JSON, Socket, and Websocket.

Get to know our solution and integrate now!

Deixe uma resposta