Skip to content
The Codeherd

Tech Radar · caution

GraphQL for internal APIs

Real cost for marginal benefit when one team owns both ends of the wire.

Ring
caution
What that means
Wary — avoiding by default.
Movement
Avoid

GraphQL for internal APIs has a real cost for marginal benefit when one team owns both ends of the wire. The pitch — clients fetch exactly what they need — matters most when many independent consumers hit the same API. When the frontend and backend ship together, that flexibility is mostly unused.

What it does cost: a resolver layer to maintain, N+1 query problems that need their own tooling to catch, and a caching story that’s meaningfully harder than an HTTP cache in front of a REST endpoint.

Reaching for typed REST — an OpenAPI schema with generated clients — covers the same “know what shape the response is” goal at a fraction of the operational cost, for the specific case of one team, one API, one set of consumers.

← Back to radar