Error Handling with Apollo

At Apollo, we’ve heard a lot of desire from GraphQL developers for more guidance on how to do error handling. Learn how to communicate errors to your client in an organized way, and open up new possibilities for tooling.

  • Backend
  • Frontend

This collection will help you handle GraphQL errors in a systematic way, making developing apps with Apollo clearer and more streamlined.

Kurt Kemple
Developer Advocate at Apollo
Blog post

Full Stack Error Handling with GraphQL and Apollo 🚀

Most GraphQL layers sit between the application frontend and a constellation of micro-services and data sources, which make them a focal point for error handling. Errors can range from bad user inputs to back-end bugs to rare network outages. Since it’s at the center of all the action, GraphQL has great potential to help us […]

Clarence Ngoh · Error Handling, GraphQL


200 OK! Error Handling in GraphQL

Sasha Solomon’s talk from GraphQL Summit Wordwide. Find out how not all “errors” are errors, how we can have a better understanding of our data, and how to model domain errors in our GraphQL schema.

Sasha Solomon


Error Handling in Apollo Server

These official Apollo docs teach you how to make errors actionable on the client and server.


Handle and Inspect Errors with the Error Link

The error link allows you to catch network and GraphQL errors and handle them however you would like!

Frontend, How-to


Video Walkthrough of Error Handling with Apollo Link

GraphQL & network errors can be a pain to deal with. Don’t worry, we’ve got you covered! In this episode of Mission Briefing, you’ll learn how to handle errors with ease using Apollo Link.

Peggy Rayzis · Frontend, How-to


Handling GraphQL Errors in React

Any application, from simple to complex, can have its fair share of errors. It is important to handle these errors and when possible, report these errors back to your users for information.

From the community

Using the Error Link to Manage Authentication Errors in React

Learn how to handle errors in React Apollo with onError which can catch things like not authenticated users.

Ben Awad · Frontend, How-to

Related collections

GraphQL for Android

Consume your GraphQL API on Android Devices with Apollo Android. Apollo Android is a GraphQL client that generates type-safe Kotlin models from your GraphQL queries. It also handles parsing and caching so you can focus on what matters most to your users and build beautiful mobile apps.

  • Frontend
  • Mobile

GraphQL Tooling and Code-gen

One of the many benefits of adopting GraphQL is the ever growing eco-system of tools and services available to help you build your apps even faster. From code-gen to configuring Apollo Server, this collection has a range of tools, tips, and configuration best practices designed to boost your productivity.

  • Backend
  • Frontend
  • How-to
  • Platform

Caching & State Management with Apollo Client

State management is about caching the data you need to provide experiences for your users. Apollo Client is both a GraphQL client and a state management library. In this collection, you’ll learn how to use the latest version of Apollo Client as your single source of truth for state in client-side UI libraries like React.

  • Frontend

Production Ready Graphs

Putting your data graph into production doesn’t have to be a guessing game or scary experience. This collection is composed of written and video resources focused on stability, monitoring, schema management, schema design, and best practices.

  • Backend
  • How-to
  • Platform

Federation 101

It can be challenging to serve an enterprise-scale data graph with a single, monolithic GraphQL server. To keep teams productive, you can use Apollo Federation to divide your graph’s implementation across multiple composable services. Learn about federation principles, tooling, and how to implement federation.

  • Backend
  • Platform


When building a GraphQL endpoint, you’ll probably have to face the question of how to control who can see and interact with the data in your API. This typically involves authentication (determining who you are) and authorization (determining if you have access). In this collection, we’ll cover strategies and best practices for both.

  • Backend
  • Frontend

© 2021 Apollo Graph Inc.