use POST for create and PUT for update