Added category for request construction and refactored accordingly for testability.