refactored add user resource