LearnThatStack Ace your next interview
GraphQL · question
Question 8 of 60

What are input types and how do they differ from regular types?

beginner
← All GraphQL questions
Re-explain

An input type is an object you pass in as an argument, while a regular object type is what the server returns. You declare an input type with the input keyword instead of type.

The two cannot be mixed. An input type's fields can only be scalars, enums or other input types, and lists of those. Input fields also cannot take arguments. An object type's fields, by contrast, can return other object types and can each have a resolver.

Input types are used for arguments in mutations and queries. They group many values into one structured argument. A common pattern is one input per mutation. CreateUserInput has required fields, while UpdateUserInput has optional ones, so a client sends only the fields it changes.

input CreateUserInput {
  name: String!
  email: String!
  age: Int
}

input UpdateUserInput {
  name: String
  email: String
  age: Int
}

type Mutation {
  createUser(input: CreateUserInput!): User!
  updateUser(id: ID!, input: UpdateUserInput!): User!
}
Rewriting in plainer words…

This answer doesn't lend itself to a diagram - it reads best . No credits were charged.

Why there's no diagram: “”

The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓

The diagram below the answer is the concept . Jump to it ↓

Tailored explanation · switch back to · ·
What should the new diagram focus on?
How well did you know this?
AI:

Saved in this browser - sign in to keep your review list.

How should your speech become text?

Listening… your words appear above as you speak - tap Stop when you're done.

Recording · cr - tap Stop & transcribe when you're done.

Transcribing with AI…

Voice:

Keep going - a few more words and AI can grade it.

Interview lens

Likely follow-ups, what you can say, and the weak answers to avoid.

Sign in free to open it Free account - the lens opens as soon as you're back.

Want a quick review of the fundamentals? See the GraphQL cheatsheet.

← Back to all GraphQL questions
Pro · $10/mo

51 of 60 GraphQL answers are in Pro.

Full answers, code samples, and AI explanations that go simpler or deeper. Cancel anytime.

  • Full answers + code
  • AI explanations, simpler or deeper
  • 1,000 AI credits / month
  • Cancel anytime