If I remember correctly mongo stores the id in “_id” and has a getter for “id” so maybe they just iterated all the keys of the model when they stringified their output
It seems like they basically just exposed a lot of data directly, as apparently most of their APIs didn’t enforce any authentication or hide records that had been soft deleted.
Apparently the records were strictly sequential, which I don’t believe is true for Mongo which IIRC includes the node ID in part of it.
edit: updated example to show that this can handle things like url params since it just uses URLPattern()