Application Class

Represents the Autodesk Revit Application, providing access to documents, options and other application wide data and settings.
Inheritance Hierarchy
SystemObject
  Autodesk.Revit.ApplicationServicesApplication
    Autodesk.Revit.DB.MacrosApplicationEntryPoint

Namespace: Autodesk.Revit.ApplicationServices
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public class Application : IDisposable

The Application type exposes the following members.

Properties
 NameDescription
Public propertyActiveAddInIdRetrieves the Id of the currently running external application.
Public propertyAllowNavigationDuringRedraw Checks whether or not the navigation during redraw is enabled, and enable or disable it.
Public propertyAllUsersAddinsLocation The folder location for .addin files for all users.
Public propertyAngleTolerance Angle tolerance.
Public propertyBackgroundColor The background color to use for model views in this session.
Public propertyCode exampleCitiesReturns a set of all the known city locations within Revit.
Public propertyCreateProvides an object that can be used to create new instances of Autodesk Revit API objects.
Public propertyCurrentRevitServerAccelerator Current Revit Server accelerator.
Public propertyCurrentUserAddinsLocation The folder location for .addin files for the current user.
Public propertyCurrentUsersAddinsDataFolderPath Path to AddinsData folder for the current user.
Public propertyCurrentUsersDataFolderPath Path to data folder for the current user.
Public propertyDefaultIFCProjectTemplate Full path to the default template file for new IFC project documents. It may be empty, in which case the DefaultProjectTemplate should be used.
Public propertyDefaultProjectTemplate Full path to the default template file for new project documents.
Public propertyDefaultViewDiscipline The view discipline that will be applied to new views by default.
Public propertyDocuments Returns a set of documents within Revit.
Public propertyExportIFCCategoryTable Full path to the file that defines Revit category to IFC entity mappings for IFC export.
Public propertyFamilyTemplatePath Default path for family template files.
Public propertyImportIFCCategoryTable Full path to the file that defines IFC entity to Revit category mappings for IFC import.
Public propertyIsArchitectureEnabled Checks whether or not the architecture discipline is enabled, and enable or disable it.
Public propertyIsElectricalAnalysisEnabled Checks whether or not electrical analysis is enabled, and enable or disable it.
Public propertyIsElectricalEnabled Checks whether or not the electrical discipline is enabled, and enable or disable it.
Public propertyIsEnergyAnalysisEnabled Checks whether or not energy analysis is enabled, and enable or disable it.
Public propertyIsInfrastructureEnabled Checks whether or not infrastructure discipline is enabled, and enable or disable it.
Public propertyStatic memberIsLoggedIn Checks if the user is logged in from this session to their Autodesk account.
Public propertyIsMassingEnabled Checks whether or not the massing and site tools are enabled, and enable or disable them.
Public propertyIsMechanicalAnalysisEnabled Checks whether or not mechanical analysis is enabled, and enable or disable it.
Public propertyIsMechanicalEnabled Checks whether or not the mechanical discipline is enabled, and enable or disable it.
Public propertyIsPipingAnalysisEnabled Checks whether or not piping analysis is enabled, and enable or disable it.
Public propertyIsPipingEnabled Checks whether or not the piping discipline is enabled, and enable or disable it.
Public propertyIsRouteAnalysisEnabled Checks whether or not route analysis is enabled, and enable or disable it.
Public propertyIsStructuralAnalysisEnabled Checks whether or not the structural analysis is enabled, and enable or disable it.
Public propertyIsStructureEnabled Checks whether or not the structure discipline is enabled, and enable or disable it.
Public propertyIsSystemsEnabled Checks whether or not any systems disciplines (mechanical, electrical, or piping) are enabled.
Public propertyIsValidObject Specifies whether the .NET object represents a valid Revit entity.
Public propertyLanguageThe language used in the current session of Revit.
Public propertyLoginUserId The user id of the user currently logged in. The user id will be empty if the user is not logged in.
Public propertyStatic memberMinimumThickness The minimum thickness allowed in Revit for a variety of geometric constructs. These include blends, extrusions, and wall layers.
Public propertyPointCloudsRootPath Root path for point cloud files.
Public propertyProduct The product type for the current session of Revit.
Public propertyRecordingJournalFilename Retrieve the name of the journal file the Revit is currently recording to.
Public propertySharedParametersFilenameContains the fully qualified path to a shared parameters file.
Public propertyShortCurveTolerance The enforced minimum length for any curve created by Revit.
Public propertyShowGraphicalOpenEndsAreaBasedLoadBoundaryDisconnects Whether or not to show the graphical open ends for Area Based Load Boundary disconnects.
Public propertyShowGraphicalWarningCableTrayConduitDisconnects Whether or not to show the graphical warnings for CTC disconnects.
Public propertyShowGraphicalWarningDuctDisconnects Whether or not to show the graphical warnings for duct disconnects.
Public propertyShowGraphicalWarningElectricalDisconnects Whether or not to show the graphical warnings for Electrical disconnects.
Public propertyShowGraphicalWarningHangerDisconnects Whether or not to show the graphical warnings for Fabrication Hanger disconnects.
Public propertyShowGraphicalWarningPipeDisconnects Whether or not to show the graphical warnings for Pipe disconnects.
Public propertySubVersionNumber The minor version number of Revit
Public propertySystemsAnalysisWorkfilesRootPath Root path for systems analysis workfiles
Public propertyUsername Gets the user name for the current Revit session.
Public propertyVersionBuild Returns the internal build number of the Autodesk Revit application.
Public propertyVersionName Returns the name of the Revit application.
Public propertyVersionNumber Return the primary version of the Revit application.
Public propertyVertexTolerance Vertex tolerance.
Top
Methods
 NameDescription
Public methodCopyModel Copies an existing model to a new file. Overwriting a file of the same name is allowed.
Public methodDisposeReleases all resources used by the Application
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodExtractPartAtomFromFamilyFile Writes a PartAtom XML from the contents of a family file.
Public methodGetAssets Gets all the Assets of the specified type.
Public methodStatic memberGetFailureDefinitionRegistry Returns the instance of FailureDefinitionRegistry.
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodCode exampleGetLibraryPaths Returns path information identifying where Revit searches for content.
Public methodGetRevitServerNetworkHosts Gets the list of all Revit Server Network hosts in current session.
Public methodGetSystemsAnalysisWorkflowNames Returns names for systems analysis workflows.
Public methodGetSystemsAnalysisWorkflows Returns name and path information identifying systems analysis workflow files.
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodGetWorksharingCentralGUID Gets the worksharing central GUID of the given server-based model.
Public methodIsJournalPlaying Determines if the application is currently in journal playback mode.
Public methodStatic memberIsValidThickness Checks if the input value is valid to be supplied as a thickness (for an extrusion, or blend, or wall layer, or similar geometric construct).
Public methodCode exampleNewFamilyDocument New family document, including family, titleblock, and annotation symbol
Public methodNewProjectDocument(String) New project document
Public methodNewProjectDocument(UnitSystem) Creates a new project document with no template file specified.
Public methodNewProjectTemplateDocument New project template document
Public methodOpenDocumentFile(String) Opens a document from disk.
Public methodCode exampleOpenDocumentFile(ModelPath, OpenOptions) Opens a document from disk or cloud.
Public methodOpenDocumentFile(ModelPath, OpenOptions, IOpenFromCloudCallback) Opens a document from disk or cloud.
Public methodOpenIFCDocument(String) Opens an IFC document from disk using default options.
Public methodOpenIFCDocument(String, IFCImportOptions) Opens an IFC document from disk using custom options.
Public methodOpenSharedParameterFileEnables access to shared parameter groups and definitions that are maintained on disk.
Public methodPurgeReleasedAPIObjects Explicitly purges all API objects that have been released but are still awaiting to be finalized
Public methodStatic memberRegisterFailuresProcessor Replaces Revit's default user interface (if present) with alternative handling for all warnings and errors (including those not generated by your application) for the rest of the Revit session; if your application is not prepared to respond to all warnings and errors, consider use of IFailuresPreprocessor (in your opened Transaction) or the FailuresProcessing event instead of this interface.
Public methodSetLibraryPaths Sets path information identifying where Revit searches for content.
Public methodSetSystemsAnalysisWorkflows Sets name and path information identifying systems analysis workflow files.
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Public methodUpdateRenderAppearanceLibrary Updates the stored render appearance library, giving the Revit session access to any new RPC content.
Public methodWriteJournalComment Writes a comment to the Revit journal file.
Top
Events
 NameDescription
Public eventApplicationInitialized Subscribe to this event to get notified after the Revit application has been initialized
Public eventDocumentChanged Subscribe to the DocumentChanged event to be notified when Revit document has changed.
Public eventDocumentClosed Subscribe to the DocumentClosing event to be notified when Revit is just about to close a document.
Public eventDocumentClosing Subscribe to the DocumentClosing event to be notified when Revit is just about to close a document.
Public eventDocumentCreated Subscribe to the DocumentCreated event to be notified immediately after Revit has finished creating a new document.
Public eventDocumentCreating Subscribe to the DocumentCreating event to be notified when Revit is just about to create a new document.
Public eventCode exampleDocumentOpened Subscribe to the DocumentOpened event to be notified immediately after Revit has finished opening a document.
Public eventDocumentOpening Subscribe to the DocumentOpening event to be notified when Revit is just about to open a document.
Public eventCode exampleDocumentPrinted Subscribe to the DocumentPrinted event to be notified immediately after Revit has finished printing a view or ViewSet of the document.
Public eventCode exampleDocumentPrinting Subscribe to the DocumentPrinting event to be notified when Revit is just about to print a view or ViewSet of the document.
Public eventDocumentReloadedLatest Subscribe to the DocumentReloadedLatestEventArgs event to be notified immediately after Revit has finished reloading a document with central model.
Public eventDocumentReloadingLatest Subscribe to the DocumentReloadingLatestEventArgs event to be notified when Revit is just about to reload latest changes from a central model.
Public eventDocumentSaved Subscribe to the DocumentSaved event to be notified immediately after Revit has finished saving a document.
Public eventDocumentSavedAs Subscribe to the DocumentSavedAs event to be notified immediately after Revit has finished saving document with a new file name.
Public eventDocumentSaving Subscribe to the DocumentSaving event to be notified when Revit is just about to save a document.
Public eventCode exampleDocumentSavingAs Subscribe to the DocumentSavingAs event to be notified when Revit is just about to save the document with a new file name.
Public eventDocumentSynchronizedWithCentral Subscribe to the DocumentSynchronizedWithCentral event to be notified immediately after Revit has finished synchronizing a document with central model.
Public eventDocumentSynchronizingWithCentral Subscribe to the DocumentSynchronizingWithCentral event to be notified when Revit is just about to synchronize a document with central model.
Public eventDocumentWorksharingEnabled Subscribe to the DocumentWorksharingEnabled event to be notified when a document has become workshared.
Public eventElementTypeDuplicated Subscribe to the ElementTypeDuplicated event to be notified immediately after Revit has finished duplicating an element type.
Public eventElementTypeDuplicating Subscribe to the ElementTypeDuplicating event to be notified when Revit is just about to duplicate an element type.
Public eventCode exampleFailuresProcessing Subscribe to the FailuresProcessing event to be notified when failures are being processed at the end of transaction.
Public eventFamilyLoadedIntoDocument Subscribe to the FamilyLoadedInto event to be notified after Revit loaded a family into a document.
Public eventFamilyLoadingIntoDocument Subscribe to the FamilyLoadingInto event to be notified when Revit is just about to load a family into a document.
Public eventFileExported Subscribe to the FileExported event to be notified immediately after Revit has finished exporting files of formats supported by the API.
Public eventFileExporting Subscribe to the FileExporting event to be notified when Revit is just about to export files of formats supported by the API.
Public eventFileImported Subscribe to the FileImported event to be notified immediately after Revit has finished importing a file of format supported by the API.
Public eventFileImporting Subscribe to the FileImporting event to be notified when Revit is just about to import a file of format supported by the API.
Public eventLinkedResourceOpened Subscribe to the LinkedResourceOpened event to be notified immediately after Revit has finished opening a linked resource.
Public eventLinkedResourceOpening Subscribe to the LinkedResourceOpening event to be notified when Revit is just about to open a linked resource.
Public eventProgressChanged Subscribe to the ProgressChanged event to be notified when an operation in Revit has progress bar data available.
Public eventViewExported Subscribe to the ViewExported event to be notified immediately after Revit has finished exporting a view of the document.
Public eventViewExporting Subscribe to the ViewExporting event to be notified when Revit is just about to export a view of the document.
Public eventCode exampleViewPrinted Subscribe to the ViewPrinted event to be notified immediately after Revit has finished printing a view of the document.
Public eventCode exampleViewPrinting Subscribe to the ViewPrinting event to be notified when Revit is just about to print a view of the document.
Public eventViewsExportedByContext Subscribe to the ViewsExportedByContext event to be notified immediately after Revit has finished exporting one or more views of the document via an export context by CustomExporter.
Public eventViewsExportingByContext Subscribe to the ViewsExportingByContext event to be notified when Revit is just about to export one or more views of the document via an export context by CustomExporter.
Public eventWorksharedOperationProgressChanged Subscribe to the WorksharedOperationProgressChanged to be notified when progress has changed during Collaboration for Revit's workshared operations: open model and synchronize with central.
Top
Example
string versionInfo = application.VersionBuild + "\n"
                    + application.VersionName + "\n"
                    + application.VersionNumber;
See Also