The single source of truth for every service

Unify your APIs, architecture, schemas, tests, and history in one place. Defined as code and synced directly from your repo — not scattered across endless wikis and dashboards.

The auth-service entry in UIGraph, on the API & Behavior tab, with tabs for Overview, Architecture, Data, Dependencies, Tests, Costs & Infra, Docs, and Timeline, a searchable endpoint list, and the request body and responses for the POST /v1/auth/login endpoint

The problem

When answers live in memory instead of code, every feature release turns into an archeological dig.

Asked in Slack

The same questions come back every release, because the answer never made it into the repo.

ThreadWho owns sessions now?
ThreadWhere does checkout write?
ThreadIs this spec still up to date?
ThreadHow does this payment flow work?
How does this payment flow work?
Is this spec still up to date?

Declared on the entry

End-to-end tracing from the screen to the table, and specs that re-sync from OpenAPI on every git push.

Screen
Checkout UI
Service
auth-service
OpenAPI synced
Table
sessions
iduuid
user_idstring
expires_attimestamptz

Declared in the repo it describes

One block of .uigraph.yaml, reconciled by uigraph-cli sync on every push — the same file that carries the schema, tests, and history covered below.

service

Ownership travels with the entry

Team, repo, Jira project, and Slack channel, attached to the service itself.

service:
  name: auth-service
  team: identity-platform
  slack: "#identity-platform"

apis

Specs become searchable endpoints

OpenAPI, GraphQL, and gRPC, indexed endpoint by endpoint.

apis:
  - type: openapi
    path: api/openapi.yaml
  - type: graphql
    path: api/schema.graphql

dependencies

Declared, never guessed

Hard calls block the transaction path. Soft ones degrade gracefully.

dependencies:
  hard: [accounts-service]
  soft: [notifications-service]

Every facet lives on the same entry

auth-service, opened once. Its architecture, its schema, its coverage, and its history — not four separate places to go looking.

Each service carries the architecture behind it

Follow a request from the frontend to the users table it writes. Nodes are typed, so a rate limiter holds its real thresholds instead of a label on a box.

The auth service flow in UIGraph, running from the frontend through the API gateway and auth controller to the rate limiter, token service, session cache, and the users table, with the selected node's thresholds open in a properties panel

Part of one graph

Every service links directly to screens in system maps, diagrams of its own architecture, and the agents that query it.

Built forPlatform Teams/On-Call Engineers/Engineering Leads/QA Engineers/New Joiners/Solution Architects

Frequently asked questions

Still have a question about Service Catalog? The documentation covers configuration schemas, CLI commands, and integrations in detail.

Read the docs

Stop answering the same questions in Slack.

Declare a service once — API, architecture, schema, tests, and history — and let the catalog answer for you.