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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
2 0 0 6

Error code 429 | Client Error: Too Many Requests - Too many requests, please try again later.

Hi. We are looking for the maximum price, the minumum price, and the max and min closing price for a period for a list of RICS and Eikon API says Error code 429 Client Error: Too Many Requests - Too many requests, please try again later.

We are downloading info for less than 100 Rics.

In the image you can see some inputs and the code.

This is urgent for Banco Santander.

Thanks in advance.

PD: Please note after this error, we can download data for two single RICs. It seems
it is not related with daily limits (but we're not sure). 
<br>
eikoneikon-data-apipythonworkspacerefinitiv-dataplatform-eikonworkspace-data-apierrorerror-429
captura.jpg (99.4 KiB)
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
Accepted
39.3k 77 11 27

There's indeed a limit on how many requests can be sent per second. But given that data retrieval methods of Eikon Data APIs are synchronous executing these methods in a loop or inside dataframe 'apply' method in itself is highly unlikely to saturate the throttle. I think realistically the throttle will only be saturated by code running on multiple threads. I think there must have been something else (another Julyter notebook or another script executed in a separate process) running on the machine when the issue occurred.
It may nevertheless be preferable to retrieve timeseries for multiple RICs in a single request, as @davidk suggested. However in this case I would advise using get_data method rather than get_timeseries because get_timeseries returns a max of 3K rows of timeseries per request, and this limit is shared by all RICs in the same request. get_data method does not impose such limitation.
Whichever method you choose to use, I suggest always keeping an eye open for multiple scripts running simultaneously.

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.

I understand. Thank you very much for the help. I'll see if I can solve the problem.
Upvotes
13.7k 61 39 63

Hi @Nabil Edriss Sánchez,

Please see this thread regarding Error code 429.

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
2 0 0 6
Thank you. I have read the previous link and another related to the error.

We have not exceeded the daily data limit, since it works for a single RIC.

I understand that what happens is that queries per second are exceeded (or something related).

How can we then use the API to download historical information for a list of RICs?

Can you please review the code and give us a suggestion or solution?

If it is not possible to make such a simple query in the API, then it is not a useful API for us ...

Thanks in advance.

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
244 10 11 16

@Nabil Edriss Sánchez I am a quant at another firm, not from Reuters, but there is a limit of n requests per second, so running a query like this inside df.apply is always failure-prone. However you can request many RICs in a single request. My suggestion would be to refactor your request if possible to request all the RICs at once. If the time series start and end dates that you require vary by security, just get the whole date range from min start to max end for all the securities, and then subset it down ex post.

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.

Thank you very much for your kindness and help! It is a good idea, so tedious, but there is no other way aparently