Last updated: Wednesday, April 20, 2022 at 10:24 AM
The Query type is a special object type that defines all of the top-level entry points for queries that clients execute against your server.
Mutation queries modify data in the data store and returns a value. It can be used to insert, update, or delete data. Mutations are defined as a part of the schema.
Like queries, subscriptions enable you to fetch data. Unlike queries, subscriptions are long-lasting operations that can change their result over time. They can maintain an active connection to your GraphQL server (most commonly via WebSocket), enabling the server to push updates to the subscription's result. Subscriptions are useful for notifying your client in real time about changes to back-end data, such as the creation of a new object or updates to an important field.
Most of the types you define in a GraphQL schema are object types. An object type contains a collection of fields, each of which has its own type.
Input object types are complex inputs for GraphQL operations. They’re great for fields that need a lot of structured input, like mutations or search fields.
Enum types are sets of discrete values. An enum field must return one of the possible values of the enum.
Scalars are "leaf" values in GraphQL. There are several built-in scalars, and you can define custom scalars, too.
Interfaces are lists of fields which may be implemented by object types. An interface has fields, but it’s never actually instantiated. Instead, objects may implement interfaces, which makes them a member of that interface.
Union types enable a schema field to return one of multiple object types.