Let me use the example you have.<p>1. Clean RESTful URLs like the one you have doesn&#x27;t make it easy to fetch { article, article.author.name, [user.comments.commenter] } in a _single call_. GraphQL let&#x27;s you define the Shape you want.<p>2. Updates spanning multiple resources aren&#x27;t a good fit for a Resource Oriented pattern like REST. a) How do you delete multiple comments (Ids 1, 34, 44) in one shot? <a href="http:&#x2F;&#x2F;stackoverflow.com&#x2F;questions&#x2F;7511195&#x2F;rest-architecture-for-multiple-deletes" rel="nofollow">http:&#x2F;&#x2F;stackoverflow.com&#x2F;questions&#x2F;7511195&#x2F;rest-architecture...</a><p>3. How do I edit &#x2F;users&#x2F;200 and &#x2F;users&#x2F;201 in one single call? Imagine a Grid with a Save Button. Also, this could be a transaction as well.<p>The above is doable with REST, but it is kind of a grey area and loses some of the obviousness seen in clean URLs such as in your example.