In this tutorial-style introduction to GraphQL, you'll learn the core concepts that power every GraphQL API. Follow a step-by-step path from basic queries to advanced features.
Start learningGet a high-level overview of GraphQL and how it enables flexible, versionless APIs powered by a strong type system.
Learn how GraphQL’s schema language defines the shape of your data using types.
Understand how to structure GraphQL queries to request exactly the data you need — including fields, variables and fragments.
Explore how to modify data with mutations, including how to update and remove records through your schema.
Discover how GraphQL supports real-time data with subscriptions and how to use them effectively at scale.
See how GraphQL ensures query correctness through validation rules and how common errors are detected early.
Learn how resolvers power GraphQL execution and how the server processes and returns data for each query.
Explore how GraphQL structures its responses, including data, errors and extensions for custom metadata.
Use introspection to explore the schema itself — a powerful way to inspect types and fields dynamically.
Here you'll explore real-world strategies for designing and operating GraphQL APIs. These guides will help you build for scale and safety.
Explore all best practicesLearn how to shift your mindset from RESTful endpoints to graph-based thinking, aligning your schema with business logic and legacy systems.
Explore how GraphQL operates over HTTP, including methods, headers, status codes and API endpoint design.
Handle file uploads in GraphQL by wrapping them as mutations. Learn the recommended approach for integrating file handling into your API.
Understand how to secure your GraphQL APIs with type- and field-level authorization patterns.
Discover different pagination strategies in GraphQL, from simple slicing to fully connected edges and nodes.
Learn how to design clear, adaptable schemas — including versioning and thoughtful use of nullability.
Use globally unique IDs and the Node interface to enable caching, refetching, and efficient schema traversal.
Explore caching techniques and ID strategies that make client-side performance and object reuse more effective.
Get practical tips for improving GraphQL performance — from preventing N+1 problems to monitoring and compression.
Protect your GraphQL API with best practices for query limits, input validation, introspection control and more.
Learn how GraphQL federation enables modular, scalable APIs by composing services into a unified schema.
Learn about common 'graphql-http' errors and how to debug them.
Get started or level up your GraphQL skills with these trusted tutorials.
GraphQL-JS tutorial
Step-by-step guide to building schemas and executing queries with GraphQL.js.
Apollo Odyssey
Interactive courses for building GraphQL applications with Apollo's toolset.
Yoga GraphQL Server Tutorial
Open source tutorial for creating modern GraphQL Servers in Node, CF Workers, Deno and others.
GraphQL Tutorials
Real World Fullstack GraphQL tutorials for developers by Hasura.
Find answers to the most common questions about GraphQL — from getting started to advanced use cases. This also covers frontend concerns and info about the official specification.