Access and Assign Custom Space Types in Revit 2018



Revit 2018 allows users to create custom MEP space types. Has anybody had any success accessing these custom space types in Dynamo?

In the past I have been able to access and assign space types relatively easily using the SpaceType.ByName and Space.SetSpaceType nodes from Rhythm. However, I’m only able to do if I limit myself to the “out of the box” space types in Revit.

I’d really like to be able to create a few dozen custom space types, store them in our project template, and reuse them for future projects. As a small example, I have created a space type called “Ammonia Machine Room”


However, I’ve been unable to access this space type using the Rhythm nodes. See example of setup below. Note that the SpaceType.All node does not “see” my custom space type either.

I tried being clever and editing the python script contained in the SpaceType.All node, but that only confirmed that I don’t know what I’m doing. I tried inserting “SpaceType().Ammonia Machine Room” where I felt that it fit in line 20. After that, the ouput for the node was “null”.

So all that is to ask, has anybody had any success accessing custom space types in Dynamo? If so, how?


SpaceType.All has the types hard-coded like you noticed. You can get the types this way.


Perfect! I was really over thinking it. That’s a much cleaner solution than I was anticipating. Thanks!

Just to complete the thought for anyone that may read this in the future, here’s a snip of the proof of concept. From here, it will just take some list management to turn this into a useful graph.