Build the mental model
A GraphQL schema is self-describing: special introspection queries (`__schema`, `__type`) let you ask the API about its own structure at runtime. In-browser IDE tools like GraphiQL and Apollo Sandbox use this introspection data to power autocomplete, inline docs, and live query validation, so developers no longer need a separate schema file open in another tab. In production, introspection is often disabled because it hands an attacker a full map of the schema.
Connect it to a real scenario
In development, browse every type in the Tutorial Platform schema through Apollo Server's default Sandbox, and inspect `Tutorial`'s fields directly with a `__type(name: "Tutorial")` query. Production deployments typically set `introspection: false`.
Try the working example
query IntrospectTutorialType {
__type(name: "Tutorial") {
name
fields {
name
type {
name
kind
}
}
}
}You can use an introspection query to discover a type's fields at runtime.5-minute try-it
Open Apollo Sandbox or GraphiQL and use the docs panel to browse every field under the root `Query` type of a schema.
One important caution
Leaving introspection enabled on a production API can expose the entire schema — field names, types, deprecated fields — publicly; be careful if any of that reveals sensitive internal naming.
GraphQL — Introspection — GraphQL