need to catch the rate limit error first