refactor client response handling
add post method