The graphql/error module is responsible for creating and formatting GraphQL errors. You can import either from the graphql/error module, or from the root graphql module. For example:

import{ GraphQLError }from'graphql';// ES6var{ GraphQLError }=require('graphql');// CommonJS

Overview #

Errors #

GraphQLError #

classGraphQLErrorextendsError{constructor( message: string, nodes?: Array<any>, stack?:?string, source?: Source, positions?: Array<number>, originalError?:?Error, extensions?:?{[key: string]: mixed })}

A representation of an error that occurred within GraphQL. Contains information about where in the query the error occurred for debugging. Most commonly constructed with locatedError below.

syntaxError #

functionsyntaxError( source: Source, position: number, description: string ): GraphQLError;

Produces a GraphQLError representing a syntax error, containing useful descriptive information about the syntax error's position in the source.

locatedError #

functionlocatedError(error:?Error, nodes: Array<any>): GraphQLError {

Given an arbitrary Error, presumably thrown while attempting to execute a GraphQL operation, produce a new GraphQLError aware of the location in the document responsible for the original Error.

formatError #

functionformatError(error: GraphQLError): GraphQLFormattedError type GraphQLFormattedError ={ message: string, locations:?Array<GraphQLErrorLocation>}; type GraphQLErrorLocation ={ line: number, column: number };

Given a GraphQLError, format it according to the rules described by the Response Format, Errors section of the GraphQL Specification.

Continue Reading →graphql/execution