GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data.
GraphQL provides a complete and understandable description of the data in your API,
gives clients the power to ask for exactly what they need and nothing more,
makes it easier to evolve APIs over time, and enables powerful developer tools.

GraphQL Playground

GraphQL has been released only as a specification.
This means that GraphQL is in fact not more than a long document that describes in detail
the behaviour of a GraphQL server.

So, GraphQL has its own type system that’s used to define the schema of an API.
The syntax for writing schemas is called Schema Definition Language or short SDL.

Here is an example how we can use the SDL to define a type called Person and its
relation to another type Post.