moving to a request class per endpoint