A question that has often come up repeatedly is on retrieving wall paint materials:
There is a Paint tool in Revit that a material can be 'painted' on a surface of a wall. How can we access the paint material information via the API?
With the Revit API, we have the ability to get the regions of each face of solids (walls in this case) and each region will provide material information as well.
Following is a note from the Revit 2012 API chm file on this topic, that provides further details on how to use the API to access the Paint material :
Face.HasRegions & Face.GetRegions()
This property and method provide information about the faces created by the Split Face command. HasRegions returns a boolean indicating if the face has any Split Face regions. GetRegions returns a list of faces. As the material of these faces can be independently modified through the UI with the Paint tool, the material of each face can be found from its MaterialElementId property.
This should help extract the Paint information from each wall face.