Hi All,
I am writing a python script that automates the process of getting drawing files from a project. Currently I am able to access but hub, list of projects and folders through the script. However, whenever I try to search the folder for all drawing files I get a 403 Error saying the users could not be authenticated.
I am using 2 legged authentication to get the access token. I added data:search to the scope as required by the api but still get the same error. I have search everywhere online and nothing seems to work. Please is there anyone that can help.
I have attached the access token function, the search function and an image of the result.
def getAccessToken():
url = "https://developer.api.autodesk.com/authentication/v1/authenticate"
payload = 'client_id={client_id}&client_secret={client_secret}&grant_type=client_credentials&scope=code%3Aall%20data%3Awrite%20data%3Aread%20data%3Asearch%20bucket%3Acreate%20bucket%3Adelete%20bucket%3Aread%20account%3Aread'
headers = {
'Content-Type': 'application/x-www-form-urlencoded',
}
response = requests.request("POST", url, headers=headers, data=payload)
json_data = json.loads(response.text)
return json_data["access_token"]
token = getAccessToken()
def getDrawingFiles(folderId):
url = f"https://developer.api.autodesk.com/data/v1/projects/{project_id}/folders/{folderId}/search"
payload = {}
headers = {
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': f'Bearer {token}',
'x-user-id': userId,
'x-ads-region':'emea'
}
response = requests.request("GET", url, headers=headers, data=payload)
json_data = json.loads(response.text)
print(json_data)
getDrawingFiles('urn:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)
Please can anyone offer some advice?