The original format is going to be used for another plugin that will unserialize after getting serialized data back over a network. Which means it can be easy to add new data to the result of an API method that cannot be unserialized.
I suppose an alternative here is to just serialize & then unserialize it. Will look into that.
Updated to just unserialize the response and check it unserialized.