more consistent pagination and a smarter data getter for the request class