using request instead