Upgrade from Eikon -> Workspace. Learn about programming differences.

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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
7 2 4 9

Retrieving annual reports using Eikon API

I would like to download the annual reports for a list of U.S. companies using an Eikon API. I read through this article which seems to describe the general process:

https://developers.refinitiv.com/en/article-catalog/article/introduction-to-filings---python

The article only refers to SEC filings. Is it also possible to download a company's annual report instead of its SEC filing?

I am just getting started using the API and am currently stuck at the second section of the article "Define Token Handling and Obtain a Valid Token". My current code is:

import eikon as ek
import numpy as np
import pandas as pd
ek.set_app_key('EIKONAPPKEY')
USERNAME = "EIKONLOGINUSER"
PASSWORD = "PASSWORD"
CLIENT_ID = "EIKONAPPKEY"

I don't really understand the first line of the Token Handling section:

TOKEN_ENDPOINT = RDP_BASE_URL + CATEGORY_URL + RDP_AUTH_VERSION + ENDPOINT_URL

At this point I get the error that RDP_BASE_URL is not defined which of course makes perfectly sense. I read through the suggested Authorization tutorial but still struggle to understand how this works and how to solve this issue. I thought the code under section 2 of the linked article includes the steps for creating a token? I would highly appreciate some help.

eikon#technologyapiapi-token
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.

<AHS>

original code snippet

import eikon as ek
import numpy as np
import pandas as pd
ek.set_app_key('fba931bb7a194185bcfb42ff6ecc532b6d3e363c')
USERNAME = "EIKONLOGINUSER"
PASSWORD = "PASSWORD"
CLIENT_ID = "fba931bb7a194185bcfb42ff6ecc532b6d3e363c"
Hi @flammers ,

Please be informed that your Eikon app key was removed from the original post for security/privacy reason.

Thanks,
AHS

Hello @flammers

Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query?


If so please can you click the 'Accept' text next to the appropriate reply? This will guide all community members who have a similar question.

Thanks,


AHS

Upvote
Accepted
17.3k 82 39 63

Hi @flammers

The Refinitiv Data Library for Python does provide a Filings interface that you can utilize instead of building out your application from scratch. As referenced within this Filings Article, you may be able to significantly simplify access via the helper classes defined.

For example, here is a simple Jupyter Notebook example I created that utilizes the helper classes:

ahs.png

To access the helper classes, you can refer to the link within the article or reference the GitHub source code directly.


ahs.png (68.5 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
7 2 4 9

Thank you!

Do you have any ideas which feed I have to select for downloading annual reports? As these are no SEC filings, I suppose it's not the EDGAR feed.

Replicating your code doesn't provide me with any output unfortunately:

sample.png


sample.png (73.3 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.

Hi @flammers

It appears you do not have proper permissions to retrieve Filings data via CodeBook/Workspace. I would follow up with the account manager or try asking via "Help & Support" within the desktop by using the F1 key.

As for annual reports, the example I did provides annual reports, i.e. 10-K. I chose EDGAR but there are others outlined within the documentation.

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.