def _handle_failed_response(self, response):
        """
        Handle the failed response and check for rate limit exceeded
        If rate limit exceeded it runs the rate_limit_exceeded function which you should overwrite

        :param response: requests.Response
        :type response: requests.Reponse
        :return: None
        :rtype: None
        """
        if response.status_code == requests.codes.too_many_requests:
            return self.rate_limit_exceeded(response)
        else:
            response.raise_for_status()