Skip to Content
🚧 This is WIP documentation for v4 of the plugin. For v3 click here.
ESLGraphQL-ESLint
Rulesno-root-type

no-root-type

💡 This rule provides suggestions

  • Category: Schema
  • Rule name: @graphql-eslint/no-root-type
  • Requires GraphQL Schema: true ℹ️
  • Requires GraphQL Operations: false ℹ️
Disallow using root types `mutation` and/or `subscription`.

Usage Examples

Incorrect

# eslint @graphql-eslint/no-root-type: ['error', { disallow: ['mutation', 'subscription'] }]
 
type Mutation {
  createUser(input: CreateUserInput!): User!
}

Correct

# eslint @graphql-eslint/no-root-type: ['error', { disallow: ['mutation', 'subscription'] }]
 
type Query {
  users: [User!]!
}

Config Schema

The schema defines the following properties:

disallow (array, required)

The elements of the array can contain the following enum values:

  • mutation
  • subscription

Additional restrictions:

  • Minimum items: 1
  • Unique items: true

Resources

Last updated on