Is there a tried and true method for doing this? Feels like this might be quite common.
I have a geometry like this example and am trying to generate a curve that sits in the middle of its cap and follows the shape around the curve - so not a simple extraction from edge.
Perhaps I need to calculate diameter and place a point in the middle or some such?
It depends on the topology, the solution may be trivial edge loop based, uv based or more convoluted like straight skeleton
In the case from your picture I assume it should be pretty straightforward as the geo seems clean, so you can easily get centroid of each loop and connect them to a curve
Since there was no file attached to your post, hopefully description is enough