Got it! (I think! :) )
The final thing that was needed was to select the group when the shape is created in the driver.
protected override DriverResult Editor(MyAPISettingsPart part, dynamic shapeHelper)
() => shapeHelper.EditorTemplate(
.OnGroup("myapi"); <- was the key.
I assume that this group has to match the string given in the GroupInfo constructor above, but matching is case insensitive I guess. It would be nice to see where this matching occurs to be sure.
The thing that confused me big time throughout this was that there seemed to be two different ways to create the shape.
Quite a few modules seem to use a handler filter called TemplateFilterForRecord which as far as I can tell completely replaces the driver with one line of code. I am not sure exactly when it would be appropriate to use this instead of coding the driver manually,
but from the different examples of modules I have looked at it does seem that the driver is pretty much the same in all of them and so it makes sense to fold this into a ready made class.
The class that I looked at that didn't use TemplateFilterForRecord was the Comments module, but i just couldn't see what the difference was between that module and my code until I finally spottet the OnGroup call at the end. Still a bit new to C# syntax
I guess is the reason.
Thanks for the hints bertrandleroy. :) Now to see if I can actually pull some data from my Rest server and show it in Orchard.