Skip to content
Developers

One model of your
company, read many ways.

Nogu is not nine integrations into nine products. It is one graph, built once from read-only access to systems you already run, that every product queries.

Model01

What the Company Graph actually contains.

The types below, and the edges between them. Everything Nogu claims about your company is a path through this graph, which is why every finding can show its working — and where nothing resolves an entity yet, the table says so rather than naming a system Nogu cannot read.

EntityWhat it isResolved from
customerA company you sell to, with its revenue historyStripe
repositoryA codebase Nogu has indexedGitHub
file · symbolWhere in that codebase something is definedGitHub · static analysis
dependency · providerAn external package or API you callManifests · call-site analysis
feature · workflowWhat your product does, and the paths through itDeclared, then mapped to code
capabilityWhat you can claim, as distinct from what you shippedDeclared · read from prose
contract · obligationWhat you signed, and each duty inside itPasted documents, reviewed by a person
claim · controlA public statement, and what measures itDeclared · control checks
ticketA reported problemDeclared — no support source is connected yet
Provenance02

Every finding is a path you can walk.

Nogu does not return an opinion with a confidence score. It returns the chain of entities it traversed, so you can check the claim yourself or disagree with a specific link in it.

The finding below is the one shown on the Margin page. This is the shape it takes when you read it through the API.

GET /v1/findings/fnd_8Kq2application/json
{
  "id": "fnd_8Kq2",
  "product": "margin",
  "severity": "high",
  "summary": "Acme Corp gross margin 43.7%, 39 pts below cohort",
  "path": [
    { "entity": "Account",   "id": "acct_acme",     "mrr": 199.00 },
    { "entity": "Workflow",  "id": "wf_research",   "share": 0.667 },
    { "entity": "CallSite",  "id": "cs_a41b",       "file": "workers/research/run.ts:82" },
    { "entity": "Vendor",    "id": "ven_openai",    "model": "gpt-5.1" },
    { "entity": "CostEvent", "window": "2026-02",   "amount": 74.82 }
  ],
  "recommendation": {
    "actions": [
      { "label": "Route 68% of research calls to a lighter model", "saving": 46.30 },
      { "label": "Cache the shared image prompt prefix",           "saving": 11.40 },
      { "label": "Batch the nightly reconciliation calls",         "saving": 10.83 }
    ],
    "projected_margin": 0.781,
    "requires_approval": true
  }
}

Illustrative — the read API is not published yet

Access03

Read-only, per source, revocable.

Nogu asks for the narrowest scope that answers the question. It never holds write access to a production system without an explicit, separate grant and a human approving each change.Eight providers can be connected today; the rest of the catalogue is on the roadmap and is not offered until its consent flow can actually complete.

SourceScope requestedWhat it resolves
GitHubcontents:read, metadata:readCall sites, dependencies, repository ownership
Striperead-only restricted keyCustomers, subscriptions, paid invoices

Nothing writes without approval

Proposed pull requests, migrations and configuration changes are shown in full and applied by a person.

Disconnect and the credential is destroyed

Removing a source deletes Nogu's copy of the credential rather than marking it inactive. Entities already in the graph stay, and say which source they came from — deleting evidence somebody has acted on is not a privacy feature. Revoke the grant at the provider too; Nogu cannot do that for you.

Signed webhooks, not polling

Findings are POSTed to your endpoint as they are raised, at the severities you choose. Each carries an HMAC-SHA256 signature over the timestamp and body, so a captured delivery cannot be replayed. https only, and never a private address.

The API is not public yet.

The entity model above is stable enough to describe. The endpoints are not stable enough to publish. Early access members get the reference as it settles, and get to argue with it.