A GraphQL operation may reach fields with different access rules and different reasons for failure. A bookstore employee might have permission to read a published book's title but not its editorial notes. A catalog editor with permission to update the description can still encounter a stale revision or an invalid value. Treating all these outcomes as one generic failure leaves clients unable to respond correctly.
GraphQL can return useful data alongside errors, so design error handling and authorization together.
This chapter explains failure categories, partial results, access checks across the graph, and the information clients should receive when the server cannot complete an operation.