add caching to the service request