Introducing GAPs: GraphQL Auxiliary Proposals

markl421 pts0 comments

Introducing GAPs: GraphQL Auxiliary Proposals | GraphQL

input::placeholder]:text-neu-700 [&>input]:bg-neu-0/[.55] [&>input]:text-neu-900"><br>&]:border-neu-300 [[aria-expanded=true]>&]:bg-neu-0 [[aria-expanded=true]>&]:dark:border-neu-100">light

&]:border-neu-300 [[aria-expanded=true]>&]:bg-neu-0 [[aria-expanded=true]>&]:dark:border-neu-100">light

BlogIntroducing GAPs: GraphQL Auxiliary Proposals<br>:hover)>&:not(:hover)]:opacity-70" href="/tags/announcements/">announcements

Introducing GAPs: GraphQL Auxiliary Proposals<br>Mark LarahJune 1, 2026<br>The primary GraphQL specification narrowly<br>describes the core behavior of GraphQL; the language itself, how the server<br>validates and executes operations, how errors propagate etc.

Additionally, the GraphQL Foundation maintains secondary specifications such as<br>GraphQL Over HTTP and Composite Schemas which<br>standardize how GraphQL should be delivered over networks and how distributed<br>execution may occur.

Beyond these secondary specifications however, GraphQL is intentionally<br>un-opinionated about how it may be implemented by users. For example, we do not<br>specify naming conventions in the schema or describe how caching should work in<br>GraphQL clients. Such concerns are left to developers and library authors to<br>decide how they should handle this.

There are, you might say, some “gaps” in the official specification(s)…

Community-written specifications such as Meta’s Connections Specification or<br>IBM’s @cost directive have emerged to fill this void and establish convention.<br>They’re written in the same format as our official specifications<br>and are similarly intended to be adopted across different frameworks and<br>organizations.

As an industry, we benefit from having existing, well thought-out specifications<br>to address common problems - rather than teams having to reinvent the wheel each<br>time, and with competing standards.

GAPs

At this year’s GraphQL Conf, we announced the GraphQL Auxiliary Proposals<br>(GAPs) project, a centralized home for the GraphQL community to discuss, draft, publish,<br>browse and discover auxiliary specifications:

👉 https://gaps.graphql.org/

How it works

Head to github.com/graphql/gaps and follow<br>the contributing guidelines

Submit your specification as a .md file, written in<br>spec-md format.

After merging, you own the GAP. You can freely update it without needing<br>working group approval.

Once merged, your GAP gets published on the GAPs homepage with a permanent link<br>you can share.

Submit a GAP!

If you’ve got a battle-tested solution to a common GraphQL problem, or have<br>adopted a convention that you think others would also find useful, consider<br>writing it up as a specification and submit it as a GAP.

Help us fill the “gaps” in GraphQL! :)

Seeking SMEs for GraphQL Conf 2026

graphql gaps auxiliary specifications proposals specification

Related Articles