Open NightSkySK opened 3 days ago
Hello @NightSkySK
I am not very familiar with TME's API, is it supposed to return prices by default, or does it need some kind of parameter in the call to add them to the response? I would appreciate if you'd find more info regarding this and we could try to add it to a future release 😃
I investigated a bit kintree\search\tme_api.py
so fetching product info from TME API is running in three or four steps:
First two are working without any problem, only /Products/GetPrices causing error
[INFO] Warning: API data download failed (HTTP Error)
From my debug investigation. error is result of kintree\common\tools.py
line 99 url_data = urllib.request.urlopen(url)
url_data = urllib.request.urlopen(url)
data = url_data.read()
data_json = json.loads(data.decode('utf-8'))
return data_json
except (socket.timeout, requests.exceptions.ConnectTimeout, requests.exceptions.ReadTimeout):
cprint(f'[INFO]\tWarning: {filetype} download socket timed out ({timeout}s)', silent=silent)
except (urllib.error.HTTPError, requests.exceptions.ConnectionError):
cprint(f'[INFO]\tWarning: {filetype} download failed (HTTP Error)', silent=silent)
and rise requests.exceptions.ConnectionError
I've checked the request body against TME API Manual and all seems to be correct. I've tried, also to replace /Products/GetPrices
with Products/GetPricesAndStocks
endpoint which are very similar but also the same error appears in the same moment.
I hope @T0jan will find some time to have a look on this case as I couldn't find root cause of this error.
I've tried serval components creation via TME API and none of them contain supplier prices once uploaded to Inventree.
as example YAML cached result:
All other API which I've tested like LCSC, Mouser, and Digi-Key have prices in cached yaml: