---
title: graphql/error
---
{/* title can be removed in Nextra 4, since sidebar title will take from first h1 */}
# `graphql/error`
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:
```js
import { GraphQLError } from 'graphql'; // ES6
const { GraphQLError } = require('graphql'); // CommonJS
```
## Overview
<ul className="apiIndex">
<li>
<a href="#graphqlerror">
`class GraphQLError` A representation of an error that occurred within
GraphQL.
</a>
</li>
<li>
<a href="#syntaxerror">
`function syntaxError` Produces a GraphQLError representing a syntax
error.
</a>
</li>
<li>
<a href="#locatedError">
`function locatedError` Produces a new GraphQLError aware of the location
responsible for the error.
</a>
</li>
<li>
<a href="#formaterror">
`function formatError` Format an error according to the rules described by
the Response Format.
</a>
</li>
</ul>
## Errors
### `GraphQLError`
```ts
class GraphQLError extends Error {
constructor(
message: string,
nodes?: any[],
stack?: string,
source?: Source,
positions?: 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`
```ts
function syntaxError(
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`
```ts
function locatedError(error: Error, nodes: 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`
```ts
function formatError(error: GraphQLError): GraphQLFormattedError;
type GraphQLFormattedError = {
message: string;
locations: 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.