Oops, I was looking at the parameter description for moveByPath the whole time:
"A path value as returned from Room.findPath, RoomPosition.findPathTo, or PathFinder.search methods. Both array form and serialized string form are accepted."
Sorry if I confused anyone.