What is the right way to build an API?
For a long time, REST was thought to be the only appropriate tool for building modern APIs. But in recent years, another tool was added to the toolbox, when Facebook published GraphQL, the philosophy, and framework powering its popular API. More and more tech companies tried GraphQL and adopted it as one of their philosophies for API design. Some built GraphQL API next to their existing REST API, some replaced their REST API with GraphQL, and even others ignored the GraphQL trend to focus only on their REST API.
A Story of Two Camps
But, not only the tech companies are divided. Following the discussions around REST and GraphQL, there seem to be two camps of gurus leading very emotional discussions:
“Always use the hammer,” one camp proclaims.
“No, always use the wrench,” the other camp insists.
And for the rest of us? Unfortunately, this situation is confusing, leading to paralysis and indecision about API design.
Why this Book?
The intention of this book is to clear up the confusion and enable us to make our own decision. For our own API. By having the necessary criteria and background info, we can choose if the hammer or the wrench is better for our API project. This book will not say anything like “use the hammer” or “use the wrench”. Instead, this book will enable us to make a smart, reasonable and case-specific decision, a decision tailored to the specific API we are designing.
Who Should Read this Book?
You want to realize a new API, so you ask yourself, whether you should use REST or GraphQL. When building a new API, it is a case-by-case decision to go with REST or GraphQL. For each approach, there are use cases where they can shine.
In this book, we introduce GraphQL and REST as two competing philosophies for building APIs. We compare the two philosophies side-by-side, explore their strength and weaknesses, the commonalities and major differences.
What is the API-University Series?
The API-University Series is a modular series of books on API-related topics. Each book focuses on a particular API topic, so you can select the topics within APIs, which are relevant to you.
Keywords: GraphQL, API, REST, Design, Web Service
Get a Better API Job
Profit from what you have learned and find a better job in the API space.
Title: REST & GraphQL – A Discussion on API Design