cryptoCMD
cryptoCMD copied to clipboard
Data download is completely broken by CMC's v1 API Deprecation
This is a(n):
- [ ] New feature
- [ ] Update to an existing feature
- [x] Error
- [ ] Proposal to the Repository
Details: CoinMarketCap (CMC) seems to have recently deprecated some of their V1 endpoints, which this library depends on.
In utils.py we have the core downloading logic accessing the following endpoints:
if id_number:
api_url = "https://web-api.coinmarketcap.com/v1/cryptocurrency/ohlcv/historical?convert={}&id={}&time_end={}&time_start={}".format(
fiat, id_number, end_date_timestamp, start_date_timestamp
)
else:
api_url = "https://web-api.coinmarketcap.com/v1/cryptocurrency/ohlcv/historical?convert={}&slug={}&time_end={}&time_start={}".format(
fiat, coin_id, end_date_timestamp, start_date_timestamp
)
CMC now requires an API key for this, and gives a different response than the code downstream in core.py's _download_data method expects:
Error message (download_data) : Expecting value: line 1 column 1 (char 0)
Unless I'm completely wrong, CMC's API change may make this library completely obsolete, which is sad.
Found same error
Found same error too
web-api is gone
EDIT: Data can still be accessed via https://api.coinmarketcap.com/data-api/v3/cryptocurrency/historical?id=1&convertId=2781&timeStart=1633910400&timeEnd=1639180800
But couldn't find the map endpoint to get the id to get the data
yes same issue
same issue here
Found same error too
web-apiis goneEDIT: Data can still be accessed via https://api.coinmarketcap.com/data-api/v3/cryptocurrency/historical?id=1&convertId=2781&timeStart=1633910400&timeEnd=1639180800
But couldn't find the map endpoint to get the id to get the data
I think you can get the map endpoint with a basic (free) API key. My code relies on it currently.
Where did you find the docs for this endpoint you've referenced?
Found same error too
web-apiis gone EDIT: Data can still be accessed via https://api.coinmarketcap.com/data-api/v3/cryptocurrency/historical?id=1&convertId=2781&timeStart=1633910400&timeEnd=1639180800 But couldn't find the map endpoint to get the id to get the dataI think you can get the map endpoint with a basic (free) API key. My code relies on it currently.
Where did you find the docs for this endpoint you've referenced?
Yes you're right and I think for this package to work it would need an endpoint without API key. I don't think there is one. I found that in a reply in StackOverflow and it happened to be working.