Having two endpoints seems even less than ideal. It seems like there should be some `SerializableMetric` interface that both of these implement.