HubAPI Governance
Design APIs consumer-first, automate schema governance, and ship with confidence.
The Problem
As GraphQL Federation scales across teams, ownership disappears, breaking changes reach production, and platform engineers become human routers.
See capabilitiesTeams ask the platform team who owns what. Platform engineers can field dozens of these routing questions a week.
Deleted fields, renamed types — without traffic-aware validation, they break clients before anyone notices.
Teams design from inside their microservice, not from user needs. The graph reflects the org chart, not the product.
How It Works
Drop a screenshot of your design (PNG, JPG, or a Figma screenshot) onto the canvas.
Select the UI area and build the query. Create any missing fields inline.
Assign new fields to the right subgraph on the shared canvas.
Schema checks run, with a client-traffic check on breaking changes. Owners are auto-assigned as required reviewers.
Protected main, required reviewers, client-traffic checks. Governance that scales.
Ownership
An Architect can own the User type — reviewing its schema quality — without owning the subgraph that resolves it. The Payroll subgraph's owners review any change to its fields. One change can need approval from both.
Stop asking who to talk to. One click on a type's shield icon shows its owners — so platform engineers stop being a human router.
Protected Main
Main is read-only in Hub and stays in sync with your production schema. Changes you make in Hub go through a Proposal — Hub's pull request for schema. Touch the Payroll subgraph? Its owners are added as required reviewers automatically. Unresolved threads block approval.
Approval is gated. Approve stays inactive until every check passes and every thread is resolved, and the proposal stays blocked until every required reviewer approves.
Safe Deletions
When a proposal has a breaking change, such as a deleted field, the client traffic check fails it while real clients still use the field. It looks back 7 days by default and needs your router to send schema usage metrics, which it does by default. Graph pruning, if you enable it, also flags fields deleted without being deprecated first, with a configurable grace period. At Error severity, that fails the check.
Clients still use it → blocked. Deleted without @deprecated → flagged by pruning. Deprecated, no client traffic → allowed.
Query Intelligence
Hub calculates complexity distribution across the operations in the collections you select and visualizes whether a schema change makes your graph more or less efficient. Reassign a field to another subgraph and see how average complexity and total fetches change.
Governance
Hub automates the rules so your team catches breaking changes before approval.
You can't edit main directly in Hub. Changes made in Hub go through a Proposal.
Modify a subgraph or type and its owners are added as required reviewers automatically. No manual tagging.
Unresolved discussion threads block approval and show as a failing Hub check on the proposal.
Composition, breaking changes, client traffic, lint and pruning errors, and linked namespaces run from Cosmo. Hub adds checks for unresolved threads and unassigned fields.
Enforcement
Governance maps people to parts of the schema and controls approval at the proposal stage.
Can approve any proposal and manage governance settings. Keep this role to platform leads.
Review any change to their type, whichever subgraph resolves it. Assign them to shared entities.
Review any change that assigns, removes, or modifies fields in their subgraph. Assign one to every service.
Limits. Governance doesn't restrict branch edits, assign implementation work, or apply across graphs. Every affected owner becomes a required reviewer, with no partial approval. Without owners assigned, proposals have no required reviewers.
When you create a proposal, Hub analyzes the schema changes, finds the affected types and subgraphs, and adds their owners as required reviewers. The proposal stays blocked until every required reviewer approves, even if all checks pass. Unresolved discussion threads also block approval.
A type owner reviews any change to their type, whichever subgraph resolves it. A subgraph owner reviews any change that assigns, removes, or modifies fields in their subgraph. The two are separate, so one change can need approval from both. Graph admins can approve any proposal.
Integration checks from Cosmo: Composes, Breaking changes, Client traffic, Lint Errors, Pruning Errors, and Linked namespaces. Hub checks: Unresolved Threads and Unassigned Fields. The Approve button stays inactive until all checks pass and all discussions are resolved.
No. Governance controls approval at the proposal stage, not editing. It doesn't restrict branch edits, assign implementation work, or apply across graphs.
Proposals have no required reviewers, so anyone can approve anything. Assign owners once and Hub adds the right reviewers to every proposal that touches an owned type or subgraph.
Subgraph and type ownership and approval workflows are included in Hub Pro ($49 per user per month, with a 14-day trial) and Hub Enterprise. Proposals also need the graph connected to the Cosmo schema registry, with proposals configured in Cosmo.
Join teams already using Hub to design, govern, and ship their federated APIs. Start free—no credit card required.