GraphQL is a query language used for querying Web-based APIs. It is a relatively new way of accessing and querying API’s that proves to be quite successful in many parameters compared with the most used so far REST architecture, more and more large companies are starting to use it. In this paper, we will present the core features of GraphQL and then through some examples we will present the advan- tages and disadvantages of using GraphQL as an API query language. After making a deep overview of the core features, the Subscription op- tion will be discussed followed by the Protection mechanisms that are most used to protect the GraphQL server. At last, we will explain and an- alyze how big companies, Facebook, Twitter and Coursera, implemented GraphQL in their platforms and the problems that they encountered during the implementation.
GraphQL, API, REST, JSON