API Evangelist Paper · Standard Report
The GraphQL Standard
793 providers publish a GraphQL schema defining 69,521 types — the second-largest description corpus measured here, and the one JSON Schema cannot reach.
About this report
GraphQL is the query language and type system Facebook released in 2015 and moved to the Linux Foundation’s GraphQL Foundation in 2018. Unlike the two specifications published beside it in this series, its adoption needs no probing to establish — because GraphQL is harvested, by introspection, from the provider’s own endpoint.
1,108 providers expose a GraphQL surface and 793 publish a schema that could actually be retrieved, defining 69,521 types, 19,333 inputs, 12,606 enums, 3,152 custom scalars and 4,117 explicit deprecations. By volume it is the second-largest description corpus in this practice after OpenAPI.
And it sits almost entirely outside the toolchain every other standard in this series shares. OpenAPI, AsyncAPI, Arazzo and Overlay are JSON or YAML with a JSON Schema metaschema — which is why Spectral can lint them, validators can check them, Overlays can transform them. GraphQL SDL is a bespoke grammar, so none of that reaches it, and a company running both surfaces governs one and not the other with the same tools.
Also: roughly 28% of GraphQL providers expose a schema that could not be retrieved at all, and only 251 of 793 declare a Subscription type.
What's inside
- Executive summary — a grammar, not a schema
- What GraphQL is, and what it is not
- How this was measured, and why the evidence is stronger here
- What the corpus contains
- The metaschema problem
- The body
- Conformance
- Agents, and why the trade-off changed
- The scoring caveat
- What would have to be true
- The investable thesis
- Where this is going
What you get
These reports are experience-based and vendor-neutral, distilled from the API Evangelist research at apievangelist.com. Every API Evangelist Standard Report is free to download. Found something wrong, or an artifact this report missed? [email protected] — pointing at an artifact is the fastest way to change the next version.
arrow_back All reports