Skip to content

2027.0.0

Choose a tag to compare

@github-actions github-actions released this 07 Apr 17:20

Revit 2027 is here, and so is a major update for RevitLookup!

The Revit API has hundreds of static utility methods that were previously hard to find. We've now linked these "Utils" directly to the elements and types they affect. You can now see all related utility data for an object in one place, without having to search for static methods elsewhere.

General

  • Revit 2027 support.
  • Enabled addin isolation starting from Revit 2027. Finally, Autodesk fixed it.
  • Async startup makes Revit to continue loading while RevitLookup initializes in the background.
  • Event Monitor is now faster when inspecting incoming events.
  • Shortcuts no longer conflict with user settings. The default shortcut is only applied if the user has not configured one.
    There are now two hotkeys to open the Snoop Selection window: F12 and SS. #316.

Postable commands

Postable commands are Revit's built-in UI actions — toolbar buttons, menu items, dialog triggers — that can be invoked programmatically via the PostCommand API.
They're the go-to tool when you need to automate UI behavior that has no direct API equivalent.
RevitLookup now exposes the full list in one place: browse, search, and execute any Postable command directly.

image

API Coverage

This release covers most of the Revit API Utils methods. Hundreds of new members are now visible directly in the inspector.

New supported types

  • AssemblyInstance
  • Connector
  • DefinitionFile
  • DocumentCreation
  • Duct
  • EdgeEndPoint
  • ExternalDefinition
  • ExternalResourceReference
  • ExternalResourceType
  • FailureDefinitionAccessor
  • FamilySymbol
  • GeometryObject
  • GlobalParameter
  • ModelPath
  • PointCloudFilter
  • Rebar
  • RebarShape
  • ReferencePoint
  • SketchPlane
  • Subelement
  • Surface
  • TriangulationInterface
  • Units
  • WallType

Application extensions

  • PointCloudEngineRegistry.GetSupportedEngines
  • OptionalFunctionalityUtils.IsDGNExportAvailable
  • OptionalFunctionalityUtils.IsDGNImportLinkAvailable
  • OptionalFunctionalityUtils.IsDWFExportAvailable
  • OptionalFunctionalityUtils.IsDWGExportAvailable
  • OptionalFunctionalityUtils.IsDWGImportLinkAvailable
  • OptionalFunctionalityUtils.IsDXFExportAvailable
  • OptionalFunctionalityUtils.IsFBXExportAvailable
  • OptionalFunctionalityUtils.IsGraphicsAvailable
  • OptionalFunctionalityUtils.IsIFCAvailable
  • OptionalFunctionalityUtils.IsNavisworksExporterAvailable
  • OptionalFunctionalityUtils.IsSATImportLinkAvailable
  • OptionalFunctionalityUtils.IsShapeImporterAvailable
  • OptionalFunctionalityUtils.IsSKPImportLinkAvailable
  • OptionalFunctionalityUtils.Is3DMImportLinkAvailable
  • OptionalFunctionalityUtils.IsOBJImportLinkAvailable
  • OptionalFunctionalityUtils.IsSTLImportLinkAvailable
  • OptionalFunctionalityUtils.IsSTEPImportLinkAvailable
  • OptionalFunctionalityUtils.IsMaterialLibraryAvailable
  • ModelPathUtils.GetAllCloudRegions
  • UIThemeManager.GetThemeName
  • LabelUtils.GetFailureSeverityName
  • LabelUtils.GetStructuralSectionShapeName

Document extensions

  • GlobalParametersManager.AreGlobalParametersAllowed
  • GlobalParametersManager.GetGlobalParametersOrdered
  • ExportUtils.GetGBXMLDocumentId
  • UpdaterRegistry.GetRegisteredUpdaterInfos
  • CoordinationModelLinkUtils.GetAllCoordinationModelInstanceIds
  • CoordinationModelLinkUtils.GetAllCoordinationModelTypeIds
  • ExternalFileUtils.GetAllExternalFileReferences
  • ExternalResourceUtils.GetAllExternalResourceReferences
  • AssemblyCodeTable.GetAssemblyCodeTable
  • KeynoteTable.GetKeynoteTable

Element extensions

  • DirectContext3DDocumentUtils.IsADirectContext3DHandleInstance
  • DirectContext3DDocumentUtils.IsADirectContext3DHandleType
  • ElementIntersectsFilter.IsCategorySupported
  • ElementIntersectsFilter.IsElementSupported
  • ExportUtils.GetExportId
  • ExternalFileUtils.GetExternalFileReference
  • ExternalFileUtils.IsExternalFileReference
  • InstanceVoidCutUtils.CanBeCutWithVoid
  • InstanceVoidCutUtils.GetCuttingVoidInstances
  • DetailElementOrderUtils.IsDetailElement
  • RebarBendingDetail.IsBendingDetail
  • RebarBendingDetail.GetHost
  • RebarBendingDetail.GetPosition
  • RebarBendingDetail.GetRotation
  • RebarBendingDetail.IsRealisticBendingDetail
  • RebarBendingDetail.IsSchematicBendingDetail
  • RebarBendingDetail.GetHosts
  • RebarBendingDetail.GetTagRelativePosition
  • RebarBendingDetail.GetTagRelativeRotation
  • AnnotationMultipleAlignmentUtils.IsMultiAlignSupported
  • AnnotationMultipleAlignmentUtils.GetAnnotationOutlineWithoutLeaders
  • CoordinationModelLinkUtils.IsCoordinationModelInstance
  • CoordinationModelLinkUtils.IsCoordinationModelType

ElementType extensions

  • CoordinationModelLinkUtils.GetCoordinationModelTypeData
  • CoordinationModelLinkUtils.GetTransparencyOverride
  • RebarCrankTypeUtils.GetCrankLengthMultiplier
  • RebarCrankTypeUtils.GetCrankOffsetMultiplier
  • RebarCrankTypeUtils.GetCrankRatio
  • RebarSpliceTypeUtils.GetLapLengthMultiplier
  • RebarSpliceTypeUtils.GetShiftOption
  • RebarSpliceTypeUtils.GetStaggerLengthMultiplier

FamilyInstance extensions

  • MassLevelData.IsMassFamilyInstance
  • MassInstanceUtils.GetMassLevelDataIds
  • MassInstanceUtils.GetMassLevelIds
  • MassInstanceUtils.GetGrossFloorArea
  • MassInstanceUtils.GetGrossSurfaceArea
  • MassInstanceUtils.GetGrossVolume
  • MassInstanceUtils.GetJoinedElementIds
  • StructuralSectionUtils.GetStructuralSection
  • StructuralSectionUtils.GetStructuralElementDefinitionData
  • AdaptiveComponentInstanceUtils.GetInstancePointElementRefIds
  • AdaptiveComponentInstanceUtils.GetInstanceShapeHandlePointElementRefIds
  • AdaptiveComponentInstanceUtils.HasAdaptiveFamilySymbol
  • AdaptiveComponentInstanceUtils.IsInstanceFlipped
  • StructuralFramingUtils.CanFlipEnds
  • StructuralFramingUtils.IsJoinAllowedAtEnd

Family extensions

  • FamilyUtils.GetProfileSymbols
  • FamilyUtils.FamilyCanConvertToFaceHostBased
  • AdaptiveComponentFamilyUtils.IsAdaptiveComponentFamily
  • AdaptiveComponentFamilyUtils.GetNumberOfAdaptivePoints
  • AdaptiveComponentFamilyUtils.GetNumberOfPlacementPoints
  • AdaptiveComponentFamilyUtils.GetNumberOfShapeHandlePoints
  • LoadedFamilyIntegrityCheck.CheckFamily

View extensions

  • ReferenceableViewUtils.GetReferencedViewId
  • View.GetInstances

Category extensions

  • SSEPointVisibilitySettings.GetVisibility
  • DirectContext3DDocumentUtils.IsADirectContext3DHandleCategory
  • DirectContext3DDocumentUtils.GetDirectContext3DHandleInstances
  • DirectContext3DDocumentUtils.GetDirectContext3DHandleTypes
  • ParameterFilterUtilities.GetAllFilterableCategories
  • ParameterFilterUtilities.GetFilterableParametersInCommon

CurveElement extensions

  • CurveByPointsUtils.GetHostFace
  • CurveByPointsUtils.GetProjectionType
  • CurveByPointsUtils.GetSketchOnSurface

ReferencePoint extensions

  • AdaptiveComponentFamilyUtils.IsAdaptivePoint
  • AdaptiveComponentFamilyUtils.IsAdaptivePlacementPoint
  • AdaptiveComponentFamilyUtils.IsAdaptiveShapeHandlePoint
  • AdaptiveComponentFamilyUtils.GetPlacementNumber
  • AdaptiveComponentFamilyUtils.GetPointConstraintType
  • AdaptiveComponentFamilyUtils.GetPointOrientationType

GeometryObject extensions

  • ExternallyTaggedGeometryValidation.IsNonSolid
  • ExternallyTaggedGeometryValidation.IsSolid
  • ExternallyTaggedGeometryValidation.LacksSubnodes

ForgeTypeId extensions

  • SpecUtils.IsValidDataType
  • UnitUtils.IsValidUnit
  • UnitUtils.GetDiscipline
  • UnitUtils.GetValidUnits
  • UnitUtils.GetAllUnits
  • UnitUtils.GetAllMeasurableSpecs
  • UnitUtils.GetAllDisciplines
  • SpecUtils.GetAllSpecs
  • UnitUtils.GetTypeCatalogStringForSpec
  • UnitUtils.GetTypeCatalogStringForUnit
  • ParameterUtils.GetBuiltInParameter
  • ParameterUtils.GetAllBuiltInParameters
  • ParameterUtils.GetAllBuiltInGroups
  • ParameterUtils.GetBuiltInParameterGroupTypeId
  • ParameterUtils.DownloadParameterOptions
  • ParameterUtils.DownloadParameter
  • ParameterUtils.DownloadCompanyName

Solid extensions

  • SolidUtils.ComputeIsGeometricallyClosed
  • SolidUtils.ComputeIsTopologicallyClosed
  • SolidUtils.TessellateSolidOrShell

Other extensions

  • AssemblyViewUtils.AcquireAssemblyViews
  • FabricationUtils.ValidateConnectivity
  • PlumbingUtils.HasOpenConnector
  • RebarSpliceUtils.GetSpliceChain
  • RebarShapeParameters.GetAllRebarShapeParameters
  • RebarShapeParameters.IsValidExternalDefinition
  • RebarShapeParameters.GetElementIdForExternalDefinition
  • RebarShapeParameters.GetOrCreateElementIdForExternalDefinition
  • ExternalResourceServiceUtils.GetServersByType
  • ExportUtils.GetNurbsSurfaceDataForSurface
  • FacetingUtils.ConvertTrianglesToQuads
  • SolidUtils.FindAllEdgeEndPointsAtVertex
  • ColorRepresentationUtils.GetColorName
  • CoordinationModelLinkUtils.IsCoordinationModelInstance
  • CoordinationModelLinkUtils.IsCoordinationModelType
  • AnnotationMultipleAlignmentUtils.ElementSupportsMultiAlign
  • AnnotationMultipleAlignmentUtils.GetAnnotationOutlineWithoutLeaders

FamilyInstance extensions

  • StructuralSectionUtils.GetStructuralSection
  • StructuralSectionUtils.GetStructuralElementDefinitionData
  • AdaptiveComponentInstanceUtils.GetInstancePointElementRefIds
  • AdaptiveComponentInstanceUtils.GetInstanceShapeHandlePointElementRefIds
  • AdaptiveComponentInstanceUtils.HasAdaptiveFamilySymbol
  • AdaptiveComponentInstanceUtils.IsInstanceFlipped
  • MassLevelData.IsMassFamilyInstance
  • MassInstanceUtils.GetMassGrossFloorArea
  • MassInstanceUtils.GetMassGrossSurfaceArea
  • MassInstanceUtils.GetMassGrossVolume
  • MassInstanceUtils.GetMassJoinedElementIds
  • MassInstanceUtils.GetMassLevelDataIds
  • MassInstanceUtils.GetMassLevelIds
  • StructuralFramingUtils.CanFlipFramingEnds
  • StructuralFramingUtils.IsFramingJoinAllowedAtEnd
  • StructuralFramingUtils.CanSetFramingEndReference
  • StructuralFramingUtils.GetFramingEndReference

Family extensions

  • LoadedFamilyIntegrityCheck.CheckFamily
  • AdaptiveComponentFamilyUtils.IsAdaptiveComponentFamily
  • AdaptiveComponentFamilyUtils.GetNumberOfAdaptivePoints
  • AdaptiveComponentFamilyUtils.GetNumberOfPlacementPoints
  • AdaptiveComponentFamilyUtils.GetNumberOfShapeHandlePoints

View extensions

  • ReferenceableViewUtils.GetReferencedViewId
  • View.GetInstances

Development

  • Rewrote external events using the [ExternalEvent] source generator.
  • Refactored the decomposition architecture to use the new extensions' syntax.
  • Refactored UiOrchestratorService, removed extra memory allocations.
  • Added utils to unify object decomposition and member evaluation.
  • Added ServiceDefaults shared project with host configurations.
  • Added unit tests for Revit API inheritance and static method coverage.
  • Migrated application startup and shutdown to async implementation.
  • Migrated MVVM properties to the new CommunityToolkit partial property syntax.
  • Optimized descriptor mapping, significantly reducing overhead when analyzing complex object trees.
  • Optimized the event subscription model to save memory and keep the UI responsive.
  • Optimized UI converters to Avalonia-like style.

Full changelog: 2026.0.1...2027.0.0

RevitLookup versions: https://github.com/lookup-foundation/RevitLookup/wiki/Versions