Create & rename worksets

This tutorial will present how to create and rename the default worksets using Dynamo. Note that before you create worksets you will need to enable worksharing. To do this in Revit 2016 or earlier, it was possible to click on the ‘Worksets’ button in the bottom ribbon or alternatively, go to Collaborate > Manage Collaboration > Worksets.


However, for whatever reason, in Revit 2017 or later it is no longer possible to activate worksharing via the Workset button. It is only possible via the Collaborate > Manage Collaboration > Worksets.

If you are using Revit 2017 or later, you will be asked how you want to collaborate: Collaborate within your network; or, Collaborate using the cloud

Once worksharing has been enabled, Revit will create default worksets and assigns elements and settings to these worksets. The default worksets are as follows:


  • ‘Shared Levels and Grids’ – Contains all existing levels, grids and reference planes. Note that if you choose to collaborate using the cloud via BIM360, the workset will be named ‘Shared Views, Levels and Grids’.
  • ‘Workset1’ – Contains all existing model elements in the project. Once created, this workset can be renamed but it cannot be deleted.


Worksharing window using Collaborate within your network


Worksharing window using Collaborate using the cloud


If you have an office naming standard for worksets, we can automate the creation of them. For example:

  • 00_FACADE
  • 40_FF&E
  • 50_SITE
  • 60_MASSING
  • Etc.


The script utilises the Parametric Monkey Dynamo Package node ‘Workset.CreateAndRenameDefault’ to add the new worksets and rename the existing default worksets.


As you might have seen, we’ve decided to do something a little tricky with the default worksets. Since ‘Workset1′ cannot be deleted, we figured it was best to rename this workset to something which we would always have in every project. That is, it would never be deleted. We concluded that the most logical workset was actually ’99_LEVELS & GRIDS’. Therefore, as shown in the screenshot, the ‘Shared levels and grids’ is renamed to ’60_MASSING’ (or whatever will be your most dominate workset) and ‘Workset1′ is renamed to ’99_LEVELS & GRIDS’. If you don’t want to follow this protocol, simply reverse the inputs. Once the script has run you should see something like this in the workset window.

13 Comments on “Create & rename worksets

  1. Great tool, however my “Shared Levels and Grids” and “Workset 1” aren’t renamed when I run the script.
    However the new Worksets are created.

  2. Sorry, I was to fast.
    It does work.
    Thankx for your great work…

  3. I have the same comment as above, it seems the script inside the dyf is not working.

    • I looked at the code and pulled it out and tried it manually and this is the errors I get.

      Warning: IronPythonEvaluator.EvaluateIronPythonScript operation failed.
      Traceback (most recent call last):
      File “”, line 28, in
      NameError: name ‘workset’ is not defined

      Warning: IronPythonEvaluator.EvaluateIronPythonScript operation failed.
      Traceback (most recent call last):
      File “”, line 26, in
      AttributeError: ‘str’ object has no attribute ‘Id’

  4. As others have stated, the renaming doesn’t work.

    • I’ve tested the node with Revit 2018 and Dynamo 1.3, as well as Revit 2020 and Dynamo 2.1 and it works for me. A few things to check that might be causing issues:
      – Have you already enabled worksharing (it won’t work unless this has been enabled)
      – Are you sure you have the latest version of the Dynamo Package and its dependencies?
      – Is you project file in English? The node is looking for default worksets names ‘Workset1’ and ‘Share levels and Grids’. If you are using another language, this might be different.
      – Are you running in Manual mode (this is preferred)?

      • I finally got it to work. I did not have the latest and greatest packages. Works like a charm now. I now need to spread it out to my co-workers computers so it will work for them too. I actually found my issue shortly after posting.

Leave a Reply to Bart Jeurissen Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.