(Deprecated) Refinitiv Robust Foundation API (RFA) - Java
We have something better… At the moment these APIs are still fully supported however they are being reviewed for end-of-life in the coming year (except RFA 8.x). In the meantime we have a new API that should suit your needs better.
The Refinitiv Robust Foundation API Java Edition (RFA) is available for download in two versions: RFA 8.X with support for RSSL and RFA 7.X with support for SSL and RSSL protocols.
IMPORTANT Annoucement: End of support of 32-bit legacy APIs: RFA7.x and SFC, and legacy conversion on Legacy Protocol Convertor on 28th Feb 2026. For more details on support, refer to PCN-206364.
IMPORTANT Rebranding Annoucement: Starting with version RFA Java 8.2 and 7.7, there are namespace changes to the ValueAdd libraries. Please note that all interfaces remain the the same as prior releases of RFA and will remain fully wire compatible. Along with RFA packages and in the same location as release notes, a REBRAND text file is available which details impact to existing applications, if ANY, and how to quickly adapt to the re-branded libraries. Existing applications will continue to work indefinetly as-is. Applications should be proactively rebranded to be able to pick up fixes or support for new compilers and operating systems, available post rebranding release. For more details on support, refer to PCN .
The Refinitiv Robust Foundation API (RFA) Java Edition provides data-neutral, thread-aware access for consuming and providing market information as well as some generic configuration and logging capabilities using the Java programming language. It is a developer toolkit that gives customer applications access to a wide range of financial data from Refinitiv, 3rd party and in-house sources. The RFA Java Edition is a highly performing API, and offers a low latency, high throughput data delivery solution.
With the RFA Java Edition, developers have the ability to extend their use of RFA even further into the enterprise by using the Open Message Model (OMM) interfaces. The OMM provides an extremely flexible set of messaging constructs that allow complex data types to be expressed, cached and delivered through the Refinitiv Real-Time Distribution System (RTDS). OMM was used by Refinitiv to normallize all exchange data in Refinitiv Real-Time with full order book support.
OMM opens up RTDS to an unlimited range of structured data models such as Order Books, Market Makers, Symbol Lists and Dictionaries in addition to existing field/value oriented data. Customers, partners and 3rd parties can use OMM to create new data models for a wide variety of data types with a range of interaction types from static reference data to the high-updating, low-latency market data. Once encoded using OMM structures, this data can be distributed through RTDS using a high performance binary wire format while continuing to leverage the existing capabilities of RTDS.
The screenshot above shows an example program, included with RFA Java, displaying real-time full order book data.
RFA Java supports multi-threaded programming. It also includes a generic set of logging and configuration interfaces that can be used by applications to log application-specific messages and to perform its own configuration.
RFA Java supports connectivity to the Refinitiv Real-Time, a low-latency consolidated global data feed that delivers full tick, depth-of-market data, and RTDS, through the Refinitiv Domain Models (RDM).
RFA Java is composed of several packages. Each API package included in RFA comprises all the necessary components including libraries, full documentation, and examples of how the API is used.
The addition of Value Added Components has been integrated into the RFA package. The Value Added Components provide a set of classes that virtually eliminate routine initialization of RFA and handles all encoding and decoding of the specific RDM domains.
At the moment these APIs are still fully supported however they are being reviewed for end-of-life in the coming year (except RFA 8.x). In the meantime we have a new API that should suit your needs better.