There are two main ways:
- Using the RvtMgdDbg API add-on
This is the most comprehensive method, in that it allows you to 'Snoop' virtually all parts of the Revit database.
- Using the RDBLink Tool from Autodesk Labs
This method actually allows you to modify and then update Revit model element properties.
Both of these methods expose the Revit database, which allows you see how things really go together. The Revit database is really what makes everything else possible: from environmental analysis to the basic parametric nature of elements. It's exciting stuff!
I will do individual posts on how to setup and use both these methods in the near future.