The way GoRest works, it already has an automatic endpoint->JSON-unmarshalling mapping. So while I totally agree with you that it's likely we'll add more to this struct in the future, I am not sure how to version this properly with GoRest. The one thing that comes to mind is introducing different API hierarchies: "/api/v1/...", "/api/v2/...". Or maybe I'm missing something?