Unable to get token - DSS API Python

Hello,

I am getting following error while trying to request token:

requests.exceptions.ConnectionError: HTTPSConnectionPool(host='hosted.datascopeapi.reuters.com', port=443): Max retries exceeded with url: /RestApi/v1/Authentication/RequestToken (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x000002258B341DB0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed'))


The code I am using is as follows:

import requests
import json
import datetime


def getAuthenticationToken(userName, password):
authReqUrl = "https://hosted.datascopeapi.reuters.com/RestApi/v1/Authentication/RequestToken"
credentialsData = {'Credentials': {'Username': userName, 'Password': password}}

headers = {
'Prefer': 'respond-async',
'Content-Type': 'application/json'
}

r = requests.post(url=authReqUrl, json=credentialsData, headers=headers)

if (r.status_code == 200):
jsonResponse = json.loads(r.text.encode('ascii', 'ignore'))
token = {'timestamp': datetime.datetime.now(), 'token': jsonResponse["value"]}
# with open('TRTH_token.pkl', 'wb') as handle:
# pickle.dump(token, handle, protocol=pickle.HIGHEST_PROTOCOL)
return token
else:
print("ERROR: could not retrieve authentication token, check username and password:")
print("Status code: ", r.status_code, "\nResponse:\n", r.text)
sys.exit()

user = 'lisa*****'
password = '*******'
getAuthenticationToken(userName=user, password=password)

The credentials that I am using are same to login into the Refinitiv Developer Community.


1. What can be the possible issue?

2. Do I need to get another set of credentials?


Thanks

Best Answer

Answers

  • Hi Gurpreet,

    Thanks for the solution. That resolved the ConnectionError: HTTPSConnectionPool Error.


    However, I am getting following error:

    ERROR: could not retrieve authentication token, check username and password:

    Status code: 401

    Response:

    {"error":{"message":"Invalid username or password"}}


    Are the Credentials same as the one I am using to login into the Refinitiv Developer Community?

  • No, you will need a Datascope Select account to be able to use this API. Please reach out to your Refinitiv account manager to get these credentials.