messari/messari-python-api

Rate Limiting for API_KEY not working.

KmiQ opened this issue · 2 comments

KmiQ commented

Problem
Even if you are a PRO user using the API_KEY, you are rate limited as if you don't use API_KEY.

Source of the Problem and Solution
This looks to me like a bug in the code. The api_dict is not used anywhere as part of headers when elaborating/creating the requests. The get_response(...) function is expected aheaders as part of its arguments but it's not passed when called in any of the API endpoint wrappers/functions. I tested this in the get_metric_timeseries function. I did the following change in my local:

Before:
response = self.get_response(url, params=payload)

After
response = self.get_response(url, params=payload, headers=self.api_dict)

and it worked beautifully. My requests are rate-limited now based on the API KEY. I guess a similar thing needs to be done to the rest of the functions and that should fix the problem.

@KmiQ this should already be fixed in f5ce40f no?

KmiQ commented

yup, it was fixed. Closing this ticket.