GraphQL Query, Mutation & Schema Cheat Sheet
The definitive GraphQL quick reference: query variables, field aliases, fragment reuse, @include/@skip directives, mutations, and cursor pagination with 1-click copy.
Queries & Arguments (3 commands)
query GetUserProfile {
user(id: "1042") {
id
name
email
avatarUrl
}
}
Basic GraphQL query requesting specific fields for an entity without over-fetching.
query GetProducts($category: String!, $limit: Int = 10) {
products(category: $category, limit: $limit) {
title
price
}
}
Parameterized query with typed variables ($category: String!) and default values.
query GetUsers {
admins: users(role: "admin") { name }
members: users(role: "member") { name }
}
Field aliasing allowing multiple queries with different arguments in a single request.
Fragments & Directives (2 commands)
fragment UserFields on User {
id
displayName
role
isVerified
}
Reusable field selection set shared across multiple queries and mutations.
query GetSettings($includeBeta: Boolean!) {
settings {
theme
experimentalFeatures @include(if: $includeBeta)
legacyMode @skip(if: $includeBeta)
}
}
Conditional field inclusion using built-in @include and @skip directives.
Mutations (Writes) (2 commands)
mutation CreateArticle($input: ArticleInput!) {
createArticle(input: $input) {
id
slug
createdAt
}
}
Executes a state-modifying write operation and returns specified fields of the new record.
mutation DeleteAccount($id: ID!) {
deleteAccount(id: $id) {
success
message
}
}
Deletes an entity record by unique identifier and returns a status payload receipt.
Pagination & Types (3 commands)
query FeedWithCursor($first: Int, $after: String) {
posts(first: $first, after: $after) {
edges { cursor node { id title } }
pageInfo { hasNextPage endCursor }
}
}
Relay-specification cursor-based pagination query structure for infinite scrolling.
type Product {
id: ID!
title: String!
price: Float!
tags: [String!]!
stock: Int
}
Schema Definition Language (SDL) object type with non-null constraints and lists.
enum RoleStatus {
SUPERADMIN
DEVELOPER
READONLY
}
Enumeration type constraining input and response field values to specific options.