Good article, summarise what I like and don't like.
I wish it would delve deeper into versioning with some code samples. The way I've done it in the past is just inherit from a controller and just override an action as well as the json-builder. But that because unmaintainable after version 3 or so.
I like how Relay/GraphQL sorta abstracts that away, but Ive had a hard time figuring out how to make that work with the ORM (Active Record) so abandoned for now.