should this take a callback to allow the reponse from save to be returned ?