Error when placing appkey into their code

Customer successfully makes the key from APPKEY and places into their code, but getting below errors. Reference the attached email/screenshots from customer. What could be the issue here?
Status code 400: Bad request on handshake url http://localhost:9005/api/handshake {"code" :400, "message" : "application key is not valid.", "stack" : "error"
Error on handshake url http://localhost:9005/api/handshake
Answers
-
Hi @dave.obrien ,
The error message indicates that app key used in the code is invalid. However, with the application key provided, I can open session and retrieve the data properly. Could you please ask the customer to try restart their machine and Workspace application and try running the code again. Then please let me know if the issue still persists.
Plus, please let me add that the library recommended to be used is the LSEG Data Library, which is the latest version of the Data Library. More info can be found in article Essential Guide to the Data Libraries - Generations of Python library (EDAPI, RDP, RD, LD) | Devportal
0 -
Customer came back and said this did not work. (Reference screenshot too)
The code your dev shared worked when I tested it in a separate file. However, when I run the actual program, I’m still getting the same error:
“Session is not opened. Can’t send any request.”
I’ve attached a screenshot for reference.
0 -
Please enable the debug log in the library by using the following code before opening a session.
config = ld.get_config()
config.set_param("logs.transports.file.enabled", True)
config.set_param("logs.transports.file.name", "lseg-data-lib.log")
config.set_param("logs.level", "debug")
ld.open_session(app_key = ''<app_key>") …This code will generate the
lseg-data-lib.log
file. Before sharing it, please ensure any private information is removed. Once shared, we can analyze the log to help identify the issue.0 -
Customer enabled the log file and it's attached for your reference. Still not working for him.
0 -
The log looks okay. The app key is correct and it can get a token.
1 -
@Jirapongse so what do you suggest for this customer? They still cannot get the data properly and customer support is not helping here.
0 -
Hi @dave.obrien ,
Based on the log, the session can be opened properly.
If the customer still cannot get the data, could you please ask them to provide the log on the retrieve data step? because the log provided is only the open session part and there're no error shown, which means the session is opened properly.
0 -
Hi @dave.obrien
Did the client create a new Python virtual environment for the Data Library or reuse existing environment (share with other Python projects)?
I create a new Python virtual environment using venv (see Python Virtual Environments: A Primer and Creating a Python Virtual Environment with venv for more details) . The code runs fine and can connect to Workspace desktop application.
0 -
Customer provided the logs for data retrieval…please reference attached.
0 -
@wasin_w2 Customer said he created and activated a virtual environment for the project.
0 -
The app_key in the 20250805-1228-16120-lseg-data-lib.log is different from the app_key in the Log File.txt.
1 -
Customer apologized for the mix-up on the logs, etc. He said he updated the log file with the correct updated app key and the print statement is working. However, he's still getting the same error “ValueError: Session is not opened. Can't send any request.” Reference attached log.
0 -
I checked the log and could not find any errors. It could send a request message and retrieve a response properly.
[2025-08-06T12:32:48.859505-07:00] - [sessions.desktop.workspace.0] - [INFO] - [9608 - MainThread] - [_get_adc_data] - [get_adc_data] - Requesting ['TR.GICSSECTOR'] for ['AVGO.O']
[2025-08-06T12:32:48.860901-07:00] - [sessions.desktop.workspace.0] - [DEBUG] - [9608 - MainThread] - [http_service] - [build_request] - HTTP Request id 2
url = http://localhost:9000/api/rdp/data/datagrid/beta1/
method = POST
headers = {'request-timeout': '20', 'x-tr-applicationid': 'LD-PYTHON-LIB', 'Content-Type': 'application/json', 'Authorization': 'Bearer <token>'}
json = {'universe': ['AVGO.O'], 'fields': ['TR.GICSSECTOR']}
[2025-08-06T12:32:51.582593-07:00] - [sessions.desktop.workspace.0] - [DEBUG] - [9608 - MainThread] - [http_service] - [request] - HTTP Response id 2
status_code = 200
text = {"links":{"count":1},"variability":"","universe":[{"Instrument":"AVGO.O","Company Common Name":"Broadcom Inc","Organization PermID":"5060689053","Reporting Currency":"USD"}],"data":[["AVGO.O","Information Technology"]],"messages":{"codes":[[-1,-1]],"descriptions":[{"code":-1,"description":"ok"}]},"headers":[{"name":"instrument","title":"Instrument","type":"string","description":"The requested Instrument as defined by the user."},{"name":"TR.GICSSector","title":"GICS Sector Name","type":"string","description":"Primary Global Industry Classification Standard (GICS) Sector Description. GICS Classifies companies with increasing granularity by Sector, Industry Group, Industry and Sub-Industry."}]}0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 37 Alpha
- 167 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 704 Datastream
- 1.5K DSS
- 633 Eikon COM
- 5.2K Eikon Data APIs
- 14 Electronic Trading
- 1 Generic FIX
- 7 Local Bank Node API
- 6 Trading API
- 3K Elektron
- 1.5K EMA
- 258 ETA
- 566 WebSocket API
- 40 FX Venues
- 16 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 25 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 283 Open PermID
- 47 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 24 RDMS
- 2.1K Refinitiv Data Platform
- 845 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 122 Open DACS
- 1.1K RFA
- 107 UPA
- 196 TREP Infrastructure
- 232 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 101 Workspace SDK
- 11 Element Framework
- 5 Grid
- 19 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛