📣 GraphQLConf 2025 • Sept 08-10 • Amsterdam • Early bird tickets available & sponsorship opportunities open • Learn more
GraphQL.JS Tutorial
graphql-http

graphql-http

The official graphql-http package provides a simple way to create a fully compliant GraphQL server. It has a handler for Node.js native http, together with handlers for well-known frameworks like Express, Fastify and Koa; as well as handlers for different runtimes like Deno and Bun.

Express

import { createHandler } from "graphql-http/lib/use/express" // ES6
const { createHandler } = require("graphql-http/lib/use/express") // CommonJS

createHandler

function createHandler({
  schema,
  rootValue,
  context,
  formatError,
  validationRules
}: {
  rootValue?: any
  context?: any
  formatError?: Function
  validationRules?: any[]
}): Handler

Constructs an Express handler based on a GraphQL schema.

See the tutorial for sample usage.

See the GitHub README for more extensive documentation, including how to use graphql-http with other server frameworks and runtimes.