abstracted requests