The beauty of GraphQL is that it allows the client to specify what data it requires whereas a RESTful API would deliver the entire contents of a table unless a custom endpoint were created and maintained.
It also allows for collation from multiple resources and delivers the results via a tidy JSON object.
My first reaction to hearing about it was that allowing for such specificity would involve learning a new query language. I was wrong. The format is elegant and intuitive. A request looks almost just like the JSON response without the values. Here’s an example of a request:
And here is the response. See how the query and response work like a Q and A? How smooth is that?