Skip to main content
More in Learn

What Is GraphQL?

GraphQL is a specification that describes a declarative query language in which web and mobile clients can ask an application programming interface (API) for the exact data they want. Everything Crystallize does is powered by GraphQL APIs.

GraphQL Core Concepts

Schema: the center of GraphQL implementation. It describes the functionality available to the clients that are connecting to it.

SDL: Schema Definition Language, or SDL, is the type system that’s used to define the schema of an API.

Query: an API request made by the client machine application. It supports augments and points to arrays. A query is used to read or fetch values.

Mutation: a way to change the dataset in GraphQL. It modifies data in the data store and returns a value. Mutations help you to insert, update, or delete data.

GraphQL vs REST

GraphQL and REST have several differences. Here is a list of the most important. 

Characteristics of REST:

  • Fast client-side requirements are not well suited to REST's static nature.
  • Queries are made at various endpoints (URL).
  • Downloading unnecessary information.
  • Several endpoints (URL) must be consulted to obtain the information that is being sought.

Characteristics of GraphQL:

  • Single endpoint (URL).
  • GraphQL uses a strongly-typed system to define the capabilities of an API.
  • Schemas serve as a contract between the client and the server.
  • The frontend and backend can work completely independently.

Recommended resources to learn more about GraphQL

View Our GraphQL Livestream

People showing thumbs up

Need further assistance?

Ask the Crystallize team or other enthusiasts in our slack community.

Join our slack community