One good place to start would in this great little article by Troy Gates on AUGI. Here are three tips from the article to get you interested:
- I highly suggest creating the macros in the application tab so you can reuse the macros in any Revit model. If you store the macro inside the model, then it is only available to that Revit model.
- The Revit API also allows the use of Microsoft LINQ (Language Integrated Query) functions. LINQ allows you to use a database-like query system to filter the elements contained in a collection. It is much more powerful and easier to use, in my opinion, when working with collections of Revit elements.
- your code needs to define objects that the Revit API will use to interface with these. These objects are called UIDocument and Document...
Introduction to Revit Macros | AUGI