extract method: send_request