refactor request to use json obj