So, how does this not all leak implementation details of your schema to the frontend?
At least with RESTish APIs I can count on a contract and be cheerfully ignorant of any crazy backend changes in how it is being handled.
I'm genuinely curious on this point, since it seems like a big problem.