You can get workset names and ids from Python. The id is the actual parameter value you need to set an element’s workset.
import clr
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *
# Import DocumentManager
clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager
# Import RevitAPI
clr.AddReference("RevitAPI")
import Autodesk
# Import ToDSType(bool) extension method
clr.AddReference("RevitNodes")
import Revit
from Autodesk.Revit.DB import *
clr.ImportExtensions(Revit.Elements)
#The inputs to this node will be stored as a list in the IN variable.
#doc = DocumentManager.Instance.CurrentDBDocument
uiapp = DocumentManager.Instance.CurrentUIApplication
app = uiapp.Application
doc = DocumentManager.Instance.CurrentDBDocument
#create workset collector
userWorksets = FilteredWorksetCollector(doc).OfKind(WorksetKind.UserWorkset)
names, ids = [], []
for i in userWorksets:
names.append(i.Name)
ids.append(i.Id.IntegerValue)
#Assign your output to the OUT variable
OUT = names, ids