factor out fetch operation, lets Site handle it