Our API landscape has changed a lot through the years. We are in the process of consolidating many of our APIs into one, so — or now — there are several, each with their own particularities and datasets. You can find all API-related details on the Developer Portal and its Q&A, but here is a shallow dive into its landscape:
- Eikon Desktop App and Workspace Desktop App
- Datastream and Refinitiv Data (RD) libraries
- How to use the RD Python Library
- Where to go to figure out the available fields that I can access using the Refinitiv Data Libraries (such as the RD Python Library)?
- WEBINAR Beginners' Guide to Python and the London Stock Exchange Refinitiv Data Library
1st, a little refresh on the two ‘products’ (in the classical sense of the word) Refinitiv sells: (i) Eikon Desktop App and (ii) Workspace Desktop App. Desktop apps differ from other applications in that they have to be downloaded and installed on your machine to work; one cannot, for example, access it on a web-page. They exist in contrast to their Web Apps; more on this below.
I. Eikon Desktop App is a desktop application that only works on Windows. It is a GUI that allows you to access many databases with buttons to click instead of lines of code one would have to write and run.
II. Workspace Desktop App is basically Eikon Desktop App version 2. It is a desktop application that works on Windows and Mac. We are still in the process of onboarding all our datasets on that app, meaning that some (but few) datasets viewable on the Eikon Desktop App are not yet viewable on the Workspace Desktop App (e.g.: certain commodities landing pages that summarizes a lot of information in one place). On the other hand, we are also onboarding new datasets all the time, as per the nature of our company, and we tend to only make these new datasets viewable on the Workspace Desktop App, so as to not duplicate our work onboarding them on two apps.
If you have a license that allows you to download and use the Eikon Desktop App, then by default your license will allow you access to the Workspace Desktop App too, and vice-versa. However, you may not have licenses to see all datasets available on either/both platforms (e.g.: you may not have a license with ‘real time data’ permissions, meaning that these datasets — and GUIs (e.g.: graphs) — will not show up on your App).
N.B.: While some data providers are incorporated into our Apps and APIs, they might require you to pay them directly and get a license with them directly (e.g.: if you would like MSCI dataset access on Refinitiv Apps, you will need an MSCI license with MSCI separate from any Refinitiv license you may have).
As per popular demand, we’ve made web versions of both of these desktop applications: Eikon Web and Workspace Web, both accessible via this link, for which training can be found here. These are, by definition, not desktop applications, but web applications instead.
Both Eikon and Workspace Apps have their own APIs, more on this below.
I will refer only to the two most popular datasets here, to keep things simple. In line with this, it is best to split things in two: (1) Datastream and (2) Others. I think this is best because Datastream is desktop agnostic, i.e.: it works regardless of whether you are running Eikon/Workspace’s desktop applications on the machine on which you are requesting for data.
N.B.: You can find Datastream training here.
Datastream is a database. It’s that simple. You can interact with this database in many different ways (with R, Python, Workspace Web, Workspace Desktop App, Eikon Desktop App, Postman, …). Our desktop applications usually, and primarily, only allow you to view that data, and not stream it. To stream data, or to programmatically download it, you would need to use our APIs. we have created Datastream APIs native to certain languages, namely Python.
You can find all relevant documentation on the Datastream API — called the DataStream Web Service (DSWS) — here. I’ve created a 7 part tutorial teaching Python using our Datastream API, which you can find here. You can also find training on DSWS here. DSWS can be used with R and the ‘RefinitivR’ package.
In the majority of cases, Datastream is used to collect information that is updated with low frequency, such as economic data updated on a monthly basis. This kind of low frequency data is where Datastream truly shines. You may, however, find higher frequency data, such as daily stock close prices; you are welcome to use Datastream for such time series data, but RD (see (2)) is normally used for this.
You can find most other datasets in our Workspace APIs — a.k.a.: Refinitiv Data (RD) libraries — be it with the RD .Net, RD TypeScript, or RD Python APIs or the ‘RefinitivR’ package. RD can only be used with one of two sessions called ‘desktop’ and ‘platform’. When using the desktop session, one needs to have either their Eikon Desktop App or their Workspace Desktop App running on the machine on which the API is being used; this is not required when using the platform session.
a. When using the desktop session, the only credential needed to access Refinitiv datasets is your app key, information for which can be found here; this is because the desktop app handles all other credentials to authenticate you to the Refinitiv system.
b. When using the platform session, one needs their App Key and user login & password.
It is possible, although very unlikely, that you may not find certain datasets using DSWS & RD libraries, but the Eikon Data API (EDAPI) instead. You can find a great set of video tutorials on EDAPI use in Python here. EDAPI can also be used in R with this package.
When testing Python APIs, I’d advise doing so by finding fields for instruments of interest using the Data Item Browser (DIB) (for which a video training can be found here) and CodeBook (for which a video tutorial can be found here).
If you want to use CodeBook, you will find useful examples shared today directly in the “Examples” section.
Please find below the first-step-instructions to access the Refinitiv Data API outside of CodeBook.
Note that our python library is Cross OS (Windows, Linux, macOS, etc..) and available from PyPi.
A quick overview of Refinitiv Data Library for python can be found here.
After installing Refinitiv Data Library, you can download some RDP samples here by selecting Code\Download ZIP
Before running any of the tutorials, you must modify a configuration file — refinitiv-data.config.json located in the folder Configuration — depending on the access channel and connection parameters that you will use to connect to the Refinitiv Data Platform.
This necessary configuration step is explained in the Quick Start guide.
Note that the accompanying tutorials should be used in conjunction with the -Tutorials- and -Documentation- available on the Refinitiv Developer Portal
Below is an example of configuration of — refinitiv-data.config.json to use either a platform session or a desktop session.
Where to go to figure out the available fields that I can access using the Refinitiv Data Libraries (such as the RD Python Library)?
There are two ways:
By using workspace (the easiest way)
By browsing Refinitiv Portal (a little tricky)
The easiest way is to use two applications in Workspace:
- A quote application to visualize the data. To launch the quote application, type ‘Q’ in the search bar
- A data item browser to browse the data. To launch the data item browser, type ‘DIB’ in the search bar.
Let say, I want to know what is the ADV for the stock ‘Vodafone’. I launch the two applications above.
(1) Go the Refinitiv portal which is here
(2) Click on ‘Documentation’, then ‘Manuals & Guides’ to expand the content of all the available manuals. Locate the universe you are looking for and download the pdf user guide.
The pdf user guide contains the list of all returned fields as well as their description. For instance, after downloading the user guide for historical_pricing_api, here is a preview of the content:
This is quite a lot of information to take in, and my mission is to make it as straight forward as possible. In that aim, my team and I have a web page called the Developer Portal on which there are (i) many articles showing tricks and API uses and examples that you might find interesting, (ii) Use Cases, (iii) Events, (iv) Videos, (v) API documentation and — most importantly — (vi) our API Q&A Forum.