make sure to handle all response cases