IOpenFromCloudCallback Interface

An interface that may be used to control Revit's behavior when opening a cloud model.

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: (
Since: 2019


public interface IOpenFromCloudCallback
Visual Basic
Public Interface IOpenFromCloudCallback
Visual C++
public interface class IOpenFromCloudCallback


Copy C#
class OpenFromCloudCallback : IOpenFromCloudCallback
   public OpenConflictResult OnOpenConflict(OpenConflictScenario scenario)
      switch (scenario)
         case OpenConflictScenario.OutOfDate:
            // Continue to open the model so that I can save my local changes to the central model
            return OpenConflictResult.KeepLocalChanges;

         case OpenConflictScenario.VersionArchived:
            // My local model is far behind the central model, so discard my local changes regardless what they are
            return OpenConflictResult.DiscardLocalChangesAndOpenLatestVersion;

         case OpenConflictScenario.Relinquished:
         case OpenConflictScenario.Rollback:
            // Detach the loal model from its central model, to examine local changes
            return OpenConflictResult.DetachFromCentral;

      return OpenConflictResult.Cancel;

static Document OpenCloudModelWithCallback(Application application, ModelPath modelPath)
   OpenOptions options = new OpenOptions();
   OpenFromCloudCallback callback = new OpenFromCloudCallback();

   return application.OpenDocumentFile(modelPath, options, callback);

See Also