code: def save(self, **kwargs):
          
          updated_data = self._get_updated_data()
          # Nothing to update. Server fails if sent an empty dict.
          if not updated_data:
              return
  
          # call the manager
          obj_id = self.get_id()
          server_data = self.manager.update(obj_id, updated_data, **kwargs)
          if server_data is not None:
              self._update_attrs(server_data)
docs: Save the changes made to the object to the server.
  
          The object is updated to match what the server returns.
  
          Args:
              **kwargs: Extra options to send to the server (e.g. sudo)
  
          Raise:
              GitlabAuthenticationError: If authentication is not correct
              GitlabUpdateError: If the server cannot perform the request