What are GraphQL enums and when would you use them?

Beginner

Answer

Enums define a set of possible values for a field, providing type safety and validation.

enum UserRole {
  ADMIN
  MODERATOR
  USER
  GUEST
}

enum PostStatus {
  DRAFT
  PUBLISHED
  ARCHIVED
}

type User {
  id: ID!
  name: String!
  role: UserRole!
}