caching api requests