Fusion

Fusion is a high-performance router for connecting GraphQL, REST, and gRPC APIs at scale. It brings APIs from across your organization together into one coherent graph and executes every request across the services behind it. Fusion natively supports the GraphQL Federation specification and Apollo Federation, so you can federate existing APIs without locking yourself into a single ecosystem.

What is Fusion?

Fusion is a GraphQL gateway that sits between your clients and the APIs owned by your teams. Each team can independently develop and deploy its services using the languages, frameworks, and API technologies that best fit its needs.

When a client sends a query, Fusion determines which services are needed, coordinates requests across them, and combines the results into a single response. These services can expose GraphQL, REST, or gRPC APIs, all participating in the same unified graph.

Fusion composes your graph at build time, detecting schema conflicts before deployment. It supports both the GraphQL Federation specification and Apollo Federation, allowing you to connect existing subgraphs without rewriting them. If federation is new to you, start with the GraphQL Federation page.

Performance by design

  • Run your graph on a high-performance router built for low latency and high throughput.
  • Cache query plans so repeated operations can execute without rebuilding the execution plan.
  • Deduplicate downstream requests to avoid fetching the same data multiple times during a single operation.
  • Stream results incrementally with @defer and @stream so clients can receive useful data sooner.
  • Precompute operation plans at build time so there is no planning overhead at runtime.
network

Centralized API security

  • Enforce policies centrally at the gateway before requests reach your services.
  • Safelist trusted GraphQL operations to reduce unexpected workloads and make API behavior more predictable.
  • Integrate directly with Open Policy Agent (OPA) for centralized, policy-based authorization.
  • Plug in custom policy providers when your organization needs its own authorization or governance logic.
  • Generate an audit trail for every request and persist it in Nitro for security reviews, compliance, and debugging.
fusion router · policy checkpoint
audit trail · Nitro
allowed · query GetOrder · trusted
denied · mutation DeleteCustomer · OPA · 403

Deep operational insights

  • Trace every request with full OpenTelemetry support and see how it executes across your graph.
  • Combine telemetry with Fusion operation plans to understand where time is spent and which services drive latency.
  • Score request cost using the GraphQL Cost Specification and apply cost-based rate limiting.
  • Collect cost and usage data in Nitro to understand API consumption and support usage-based billing.

Trace

POST /graphql
0ms50ms100ms150.0 ms
🌐POST /graphql150.0 ms
◈operation plan145.0 ms
↪catalog26.0 ms
↪orders33.0 ms
↪billing92.0 ms

billing drives 61% of latency

Cost

Cost Spec
/ 1,000
rate limit ok

Usage

by client
web
mobile
partner-api

usage-based billing, recorded in Nitro

Protect your clients

Composition ensures your subgraphs work together, but a valid graph can still break a client that depends on a field being changed or removed.

Nitro closes that gap by comparing every schema change against the operations used by your clients. Teams can see whether a change is safe, risky, or breaking before it reaches production.

In practice: schema governance in Nitro.

nitro registry · publish check
incoming
v14
orders-api · schema.graphql
- Product.ratingbreaking · publish blocked
v15
orders-api · schema.graphql
~ Product.rating @deprecatedsafe · published
Nitro registry
[email protected]4,213 req / 7dok
partner-apiokok
every change checked against registered client operations

Built for Distributed Graphs

Connect every API

Bring GraphQL, REST, and gRPC services into the same graph and validate their contracts together during composition.

Keep your existing stack

Use the languages, frameworks, and servers your teams already know. Fusion does not require a distributed runtime or vendor-specific package inside your services.

Adopt without disruption

Run GraphQL Federation and Apollo Federation side by side, and migrate one subgraph at a time without requiring a coordinated cutover across teams.

Performance by design

Precompute operation plans, cache execution plans, deduplicate downstream requests, and stream results incrementally with @defer and @stream.

Centralize API security

Enforce policies at the gateway, integrate with Open Policy Agent or custom policy providers, and keep unauthorized traffic away from your services.

See what happens in production

Trace requests across your graph with OpenTelemetry, understand execution through operation plans, and use Nitro to analyze cost, usage, and performance.

Featured Content

Bring your APIs together with Fusion

Connect GraphQL, REST, and gRPC APIs behind one high-performance gateway and evolve your graph without locking your teams into a single federation ecosystem.