Make private request function protected instead