extract out requests to separate controllers