refacotor requests