Revit API Basics
  • Introduction: A Simple Macro
  • Prompt user to select an element & get element info
  • Prompt user to select edge or face & get edge/face info
  • Selection - getting and setting selected elements
  • Find Elements - FilteredElementCollector #1
  • Find Elements - FilteredElementCollector #2
  • Find Elements - LINQ queries
  • Find Drafting Views that contain a CAD Link
  • Create an External Command
  • Family Types and Parameters
  • Get Line Length and Convert Units
.NET, C# and general programming basics
  • Read and Write Text Files
  • Directory and Path operations
  • Read from Excel into a Revit API external command
  • Write Revit data to Excel
  • Exception Handling
  • Code Reuse and Helper Functions
  • Obsolete Members
  • Creating Windows Forms for User Input
Element Operations
  • Delete an element - Intro to modifying the document
  • Create text note and get and set parameter values
  • Set parameter value & Check parameter storage type
  • Built in parameters
  • Collecting element area and keynote properties
  • Create wall
  • Create Family Instance (Furniture)
  • Create Family Instance (Door)
  • Element Rotation
  • Get Workset of an element
Element Geometry
  • Element Location - LocationCurve & LocationPoint
  • Get geometry of host faces
  • Get Curves and Solids of an element
Debugging Revit API Code
  • Step Into a Macro
  • Debugging external commands in Visual Studio
Intermediate / Advanced topics
  • Set Project Units
  • Selection Filters
  • Events
  • Ribbon UI - tab, panels, buttons
  • Write comments to the journal file
  • Extensible Storage
  • Reference Intersector
  • Dynamic Model Update
Source Code from BoostYourBIM blog posts
  • Get Categories & Materials from multiple Revit families
  • Record view creation date in a shared parameter
Responses to Questions
  • Code Samples
  • File Version Check
  • Topo From Lines