adds more required fields and handling of do you want a response or not