update: implements Request and Response