added cache expiration logic for requests