REST isn't enough.
To do it right use the HATEOAS constraint. http://en.wikipedia.org/wiki/HATEOAS
And use application/hal+json http://stateless.co/hal_specification.html
The more we follow these simple constraints the more we can start to build tooling to consume any API without having to know much about it ahead of time.
That said, well written article.