Eikon API Python

Hello,

I am trying to use eikon API with Python. So I ran the Eikon application, I created an API key, I installed the Python library for the Eikon Data API and finally restart my computer. When I run the Eikon application and I execute the following code in Python:

import eikon as ek

ek.set_app_id('xxxxxx')

xxxxxx is the created API Key.

I get the following error message:

Timeout on checking port 9000

Timeout on checking port 36036

Error: no proxy address identified.

Check if Eikon Desktop or Eikon API Proxy is running.

Thank you for your help.

Best Answer

  • @h.k
    It appears that you’re using a very old version of Eikon (v 4.0.31), which was released in 2015. This version of Eikon does not include Eikon API Proxy required to use Eikon Data APIs.
    To use Eikon Data APIs you need to update your Eikon to v4.0.42 or higher. The latest version available at this time is 4.0.48.

Answers

  • Hi @h.k

    Please identify if the Eikon Desktop is running properly and is listening on 9000 port on your PC.

    Please try to restart your PC and Eikon Desktop and try any simple API calls again.

    You can also check this post.

  • @h.k
    I should add to the answer by @chavalit.jintamalit that it appears you're not using the latest version of Python library for Eikon Data APIs. Version 1.0.1, which is the latest version at this time, produces a deprecation warning for set_app_id method (which has been replaced with set_app_key).
    You can check which version of eikon library you have installed by running

    import eikon as ek
    ek.__version__
    I suggest you upgrade the version of eikon library to the latest before you continue troubleshooting connectivity problem.
  • Hello,

    Thank you for your reply. I upgraded the version of Eikon library and Eikon Desktop is running properly.

    When I run the Eikon application and I execute the following code in Python:

    import eikon as ek

    ek.set_app_key('xxxxxx') with xxxxxx is the created API Key.

    I get the following error message:

    Error on checking port 36036 : HTTPConnectionPool(host='localhost', port=36036): Max retries exceeded with url: /api/v1/data (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x000000FE93E2F9B0>: Failed to establish a new connection: [WinError 10061]

    Error on handshake port None : Failed to parse: localhost:None
    Port number was not identified

    raise EikonError(-1, 'Port number was not identified. Check if Eikon Desktop or Eikon API Proxy is running.')

    Thank you for your help.

  • @h.k
    Please take a look at the troubleshooting suggestions on this thread. Could you use the Powershell script provided in the last comment on the thread and post the results here?

  • Hello,

    I used the Powershell script provided. Attached the output file.

    Thank you

  • @h.k

    Thank you for the output.

    From the output file, there is no Eikon process listening on TCP port 9000 and there is no Eikon process with the THOMSONREUTERS.EIKON.DESKTOPSXSSVC context which is an Eikon Proxy process.

    I assume that your account doesn't have permission to use Eikon Data APIs. Please contact your Refinitiv account team or Sales team to verify it.

  • It is surprising, I use COM APIs with VBA. For some software programs, I need to configure on my computer proxy settings in order to give a specific host name. Can it be the same thing for Eikon Data APIs ?

    Thank you

  • Eikon Data APIs connects to the Eikon process running on the local machine. That Eikon process is listening on TCP port 9000 (the default port). That Eikon process also creates a portInUse file used by Eikon Data APIs to verify the TCP port used by that process.

    image

    From the output, there is no Eikon process that is listening on TCP port 9000 and there is no portInUse file. This is why you can't use Eikon Data APIs on that machine.

    Below is my output which can use Eikon Data APIs.

    image

    The Eikon process that owns this port (Local Port 9000) is Eikonbox.exe (16544).

  • The context for this process is THOMSONREUTERS.EIKON.DESKTOPSXSSVC.

    image

  • ASUS Wi-Fi Router Technical Support Number, you need to dial our toll-free number 1833 284 2444 USA and get reliable support by our expert technicians, which is ready for 24*7.