WebSocket API: unable to retrieve data
Hi support,
I am unable to retrieve any data using your websocket API. Login works but then I am getting no response or a NotEntitled error. Please see the JSON messages below:
SENT:
{
"Refresh": true,
"Key": {
"NameType": "AuthnToken",
"Elements": {
"ApplicationId": "256",
"Position": "172.31.0.6/32015f03110c",
"AuthenticationToken": "<hidden>"
}
},
"ID": 1,
"Domain": "Login"
}
RECEIVED:
[{
"ID": 1,
"Type": "Refresh",
"Domain": "Login",
"Key": {
"Name": "GE-xxxxx",
"Elements": {
"TRCE:MaxMessagesPerSecond": 10000
}
},
"State": {
"Stream": "Open",
"Data": "Ok",
"Text": "Login accepted by host 3a6b97651e2d via ip-10-28-182-9.ap-southeast-1.compute.internal"
},
"ClearCache": false,
"DoNotCache": true,
"Private": true,
"Solicited": false
}
]
SENT:
{
"Key": {
"Name": "CNH="
},
"ID": 1
}
Then nothing, no response. Ping/Pong messages keep flowing though.
When trying to send a different stream id (e.g. 2), I get a NotEntitled / Stream not found message back:
{
"Key": {
"Name": "CNH="
},
"ID": 2
}
RECEIVED:
[{
"ID": 2,
"Type": "Status",
"State": {
"Stream": "Closed",
"Data": "Suspect",
"Code": "NotEntitled",
"Text": "Stream not found"
},
"ClearCache": true
}
]
Trying different RICs e.g. TRI.N instead of CNH= yields the same behavior.
Could you please help identify the problem?
Thank you
Best Answer
-
Thank you for reaching out to us.
According to the login refresh message, it seems that you are connecting to the contribution server (RCC).
[{
"ID": 1,
"Type": "Refresh",
"Domain": "Login",
"Key": {
"Name": "GE-xxxxx",
"Elements": {
"TRCE:MaxMessagesPerSecond": 10000This server is used to contribute or post data. The format of the post message looks like this:
{
"ID": 1,
"Key": {
"Name": "{{POST_ITEM}}",
"Service": "DSS_TRCE"
},
"Message": {
"Fields": {
"ASK": 451.57,
"PRIMACT_1": 451.50,
"DSPLY_NAME": "Hello RCC",
"BID": 451.55
},
"ID": 0,
"Type": "Update"
},
"PostID": 1,
"Type": "Post",
"Ack": true
}The hostname of the contribution starts with "contrib". Please contact your Refinitiv Account team or Sales Team to verify the Refinitiv Product that you are using.
You can also refer to the Postman Examples which provide sample messages to send to Refintiv Contribution Channel (RCC) or Refinitiv Real-Time Optimized (RTO).
1
Answers
-
Thanks @Jirapongse for your reply.
Indeed I was sending my messages over the websocket connection we are using for contribution (contrib-ws1-apac1.platform.refinitiv.com). I did not realize there were different endpoints for contribution vs retrieving data. Thanks for the pointer.
Since my goal here is to retrieve data I switched over to ap-southeast-1-aws-1-sm.optimized-pricing-api.refinitiv.com and I am now getting the below error:
[{
"ID": 1,
"Type": "Status",
"Domain": "Login",
"Key": {
"Name": "AQIC5wM2LY4Sfcyd%2BD64JSKBASZT2zOAnWcy60nfiFrvYiE%3D%40AAJTSQACMzAAAlNLABM4NjY3Mzc2MDk2MDYyNzQwNTI0AAJTMQACMjQ%3D%23"
},
"State": {
"Stream": "Closed",
"Data": "Suspect",
"Code": "UsageError",
"Text": "Login Rejected. Watchlist size of 0 for 'WS JSON2' connection is outside of range [1,3000] supported for this ADS fanout tier for this type of connection."
}
}
]The same credentials work fine for contribution (using the contribution endpoint).
I found a support ticket on the same error message that suggests something might be wrong with my credentials. Could you please advise?
Thank you
0 -
RCC and RTO credentials could be different. You may need to contact your Refinitiv Account team or Sales team if your account is for RCC or RTO.
Typically, the error means that you don't have permission to access the server.
You can use this endpoint (https://api.refinitiv.com/streaming/pricing/v1/?transport=websocket) to get a list of available servers.
0 -
Trying https://api.refinitiv.com/streaming/pricing/v1/?transport=websocket I am getting a 403 Forbidden with the following error:
{
"error": {
"id": "c3f4f99d-457b-4f51-bf7a-4892d9093c21",
"code": "insufficient_scope",
"message": "access denied. Scopes required to access the resource: [trapi.streaming.pricing.read]. Missing scopes: [trapi.streaming.pricing.read]",
"status": "Forbidden"
}
}So I understand the account I am using is not entitled to access RTO. I will contact my account manager. Thanks for your help @Jirapongse.
1
Categories
- All Categories
- 6 AHS
- 39 Alpha
- 161 App Studio
- 4 Block Chain
- 4 Bot Platform
- 16 Connected Risk APIs
- 47 Data Fusion
- 30 Data Model Discovery
- 608 Datastream
- 1.3K DSS
- 577 Eikon COM
- 4.9K Eikon Data APIs
- 7 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- Trading API
- 2.7K Elektron
- 1.3K EMA
- 236 ETA
- 519 WebSocket API
- 33 FX Venues
- 10 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 20 Messenger Bot
- 2 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 59 Open Calais
- 264 Open PermID
- 39 Entity Search
- 2 Org ID
- PAM
- PAM - Logging
- 8.4K Private Comments
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 20 RDMS
- 1.4K Refinitiv Data Platform
- 367 Refinitiv Data Platform Libraries
- 3 Refinitiv Due Diligence
- LSEG Due Diligence Portal API
- 3 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.1K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 10 World-Check Customer Risk Screener
- 990 World-Check One
- 44 World-Check One Zero Footprint
- 45 Side by Side Integration API
- Test Space
- 3 Thomson One Smart
- 1.2K TR Internal
- Global Hackathon 2015
- 2 Specialists Who Code
- 10 TR Knowledge Graph
- 150 Transactions
- 142 REDI API
- 1.7K TREP APIs
- 4 CAT
- 21 DACS Station
- 117 Open DACS
- 1.1K RFA
- 103 UPA
- 172 TREP Infrastructure
- 224 TRKD
- 886 TRTH
- 5 Velocity Analytics
- 5 Wealth Management Web Services
- 60 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛