Changing elements' workplane (i.e. "Edit Workplane" Button)

First of all this is my first post in the forum so I would like to say hello to everybody and try to help others in (easy) topics.

Imagine this situation (just an example): Air terminals initially placed as level based elements in the MEP file, ARC file then pops up with different ceilings with different heights. At this point I would obviously like to align the elements to the ceiling.The easiest way without changing elements is editing the air terminal family and set it to workplane-based.
I already managed to find the closest ceiling to each element. From here i could extract the height(offset?) of the ceiling and set it to the air terminals (forcing me to run dynamo everytime the ARC file gets updated), but I’d rather use the lower surface of the ceiling (Element.Faces->filter by negative Z of normal vector surface) to change the air terminals’ workplane.

(I did some tests with hosted families and had little to no success in replacing them so this is why I’d prefer using workplane-based families)

So the question is: is there a way in Dynamo to change an element’s workplane?
I tried fooling around with Element.SetParameterByName but with no success.
I also tried searching the RevitAPI help file but I still need to fully understand how the API works…
I’ll post screenshots as soon as I can to better explain what I’m trying to achieve.

Hi GregX
I’d also be interested in this. Have you found out more?

Unfortunately no, I temporarily abandoned this script but will hope to get back to it in the future.
If I remember well I ended up just telling dynamo to move my elements which were not surface-based