For a deeper look into our Eikon Data API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
9 1 0 3

Eikon Data API Failed to decode response to json

Hi,

I'm new to Eikon Data API using python. When I run the following code I get

a "Failed to decode response to json" error. What's wrong in here?

import eikon as ek
ek.set_app_key('88c719d3e5474fff840c43xxxxxxxxxca75c9ccc9')
df = ek.get_timeseries(["MSFT.O"],start_date="2022-01-01",end_date="2023-01-10", interval = 'weekly')
df
eikoneikon-data-apipython#technology#productpython api
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvote
Accepted
3.6k 20 2 3

Hi @sou_u ,

This error makes me think that there is a library version mismatch; i.e.: EDAPI (Eikon Data API)'s Python library expects a library (e.g.: http) to be a specific version (e.g.: 2.2.0), but another one is used in your kernel. This may be caused by non-synchronous library updates.

Would you mind using the RD Library (which is the new EDAPI) with Codebook to verify if that may be the case? If your code works in Codebook, I would think that it is indeed an issue related to your local kernel setup, in which case using RD instead of EDAPI may solve the problem; you may want to do just that actually: use RD and see.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
9 1 0 3

Hello @jonathan.legrand

Thank you for your reply I could get the correct data with RD Library using following code.

import refinitiv.data as rd
from refinitiv.data.content import historical_pricing
from refinitiv.data.content.historical_pricing import Intervals
from refinitiv.data.content.historical_pricing import Adjustments
from refinitiv.data.content.historical_pricing import MarketSession
import datetime


rd.open_session()
response = historical_pricing.events.Definition("CLv1", start=datetime.timedelta(-365)).get_data()
response.data.df

But

when I tried this code this morning, I got the following error,

An error occurred while requesting URL('http://localhost:9060/api/rdp/data/historical-pricing/v1/views/intraday-summaries/SRBv1?interval=PT1M&start=2023-01-09T22%3A05%3A29.061410000Z&end=2023-04-19T22%3A05%3A29.061410000Z&adjustments=exchangeCorrection%2CmanualCorrection').
    ReadTimeout('timed out')

What's wrong in this case? Do you have any idea?

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

@sou_u

It may relate to the HTTP timeout, as mentioned in this discussion.

You can change the value of the HTTP timeout in the configuration or code.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.