begin implementing qs.API with rate limiting