updated request handling