REST has been around for nearly 20 years and remains a popular choice for web APIs, both internal and public. As popular as REST is, it does have its flaws and is more of an idea as opposed to a specification. Anyone who has designed or worked with third-party APIs knows that there is often little overlap in implementation and design choices from one API to another. At best, this makes using or designing REST APIs challenging. When approaching a new REST API, there is always the work of exploring the various API endpoints, hunting for the data you'll need, understanding the different resource types and how they relate, and so on. Of course, when working with a new API, there will always be some level of investment and discovery to learn the data with which you'll be working.
Facebook designed GraphQL internally in 2012 and released it to...