For a deeper look into our Elektron API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
1 0 0 0

Login request rejected, decoding failed

When attempting to log in with websockets RCC API, client is receiving
{"Stream":"ClosedRecover","Data":"Suspect","Code":"UsageError","Text":"Login request rejected, decoding failed"}}] LOG_INFO vtisprc 30.01.2023 07:26:02.753313 6224(520) Tr2Session[919] Status [Login]: Login request rejected, decoding failed

What would cause this error? Do we have any additional resources regarding this? Thanks

#technologyapiwebsocketsrcc-apircc
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.

Hello @Ryan.Dowell

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

Hi @Ryan.Dowell ,

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 on the left side of the appropriate reply? This will guide all community members who have a similar question.

Thanks,
AHS

Upvote
Accepted
24.6k 54 17 14

Hello @Ryan.Dowell

Did the application request the access token from the RDP API and send that token with the WebSocket Login message to RCC?

Basically, the application needs to send an HTTP Post request to RDP API first:

POST /auth/oauth2/v1/token HTTP/1.1
Accept: */*
Content-Type: application/x-www-form-urlencoded
Host: api.refinitiv.com:443
Content-Length: XXX

username=GEM-XXXXX
&password=XXXXXXX
&client_id=GEM-XXXXX 
&grant_type=password
&takeExclusiveSignOnControl=true

Then, the RDP API sends the access token back to the application as a JSON message

{
  "access_token": "<Access Token>",
  "refresh_token": "XXXXXX",
  "expires_in": "600",
  "scope": "ZZZZZZZ",
  "token_type": "Bearer"
}

Next, the application establishes a connection to the RCC WebSocket server and sends the WebSocket Login request message to RCC with the access token. The JSON message format is as follows:

{
  "Domain":"Login",
  "ID":1,
  "Key":{
    "Elements":{
      "ApplicationId":"256",
      "AuthenticationToken":"<Access Token>",
      "Position":"Machine IP/Machine Hostname"
    },
    "NameType":"AuthnToken"
  }
}

The client can find more detail about RCC and the WebSocket direct connection via this tutorial page.

Hope this helps.


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
78.6k 248 52 74

@Ryan.Dowell

Thanks for reaching out to us.

If the problem always happens, please share the login request message and the RCC hostname that the client is using. We will check the format of the login request message.

However, if the problem happens intermittently, please contact the Refinitiv Contributions Channel support team directly via MyRefinitiv. The error was sent by the RCC server so the support team may be able to check the cause of this error.

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.

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.