---
title: "Entity Knowledge Statement — verified record plus corrections to common AI claims. Public crawlable variants (markdown / JSON-LD) at /entity/{slug}/knowledge."
method: GET
path: "/entities/{entityId}/ground-truth"
tags: ["Layer 1 — Profile"]
---

# Entity Knowledge Statement — verified record plus corrections to common AI claims. Public crawlable variants (markdown / JSON-LD) at /entity/{slug}/knowledge.

`GET /entities/{entityId}/ground-truth`

## Request

- Base URL: `https://entidex.com/api/v1`
- URL: `https://entidex.com/api/v1/entities/{entityId}/ground-truth`
- Auth: HTTP bearer

## Path parameters

- `entityId` string, required

## Response `200`

Entity Knowledge Statement (schemaVersion 1.1).

- KnowledgeStatement: Entity Knowledge Statement — machine-readable declaration of an entity's VERIFIED reality plus explicit CORRECTIONS to what AI engines currently get wrong. Issued by Entidex; intended for AI systems to reconcile against. schemaVersion 2.0 added optional `verifiedRecord` (signed, cache-friendly record + contentHash + authority bands) and `knowledgeGap` (deduped, split into contradictions vs coverage gaps, per-engine attribution). schemaVersion 1.1 added optional `confirmations[]`. ALL v1.x fields (`verifiedFacts`, `corrections`, `narrative`, `accuracy`) remain populated for back-compat.
  - `entity` KnowledgeStatementEntity, required
    - `id` string, required: Canonical entx_xxxx id.
    - `slug` string, required
    - `canonicalName` string, required
    - `type` string, required: Entity primary type (Schema.org-aligned).
    - `description` string, nullable, required
    - `sameAs` string[], required: schema.org sameAs — URLs only. v2.0 fix: bare social handles / channel IDs no longer leak in here; they are exposed via `identifiers.altNames` / `identifiers.youtubeChannelId`.
    - `identifiers` object, required
      - `wikidataQid` string, nullable
      - `website` string, nullable
      - `altNames` string[]: v2.0 — non-URL alternate names / handles. Omitted when empty.
      - `youtubeChannelId` string, nullable: v2.0 — YouTube channel id (UCxxx) when the entity has one. Omitted otherwise.
  - `verifiedFacts` VerifiedFact[], required
    - `field` string, required: Canonical display label (e.g. "Headquarters").
    - `value` string, required
    - `source` string, required: Original source label (e.g. "Wikidata", "Entidex pipeline").
    - `confidence` number, required
    - `asOf` string, date-time, nullable, required
  - `confirmations` Confirmation[]: Optional. Lower-authority observations whose values were superseded by a higher-authority record. Omitted when empty for 1.0 back-compat.
    - `canonicalId` string, required: Stable canonical-field id from the catalog.
    - `field` string, required: Canonical display label.
    - `value` string, required: The demoted value.
    - `source` string, required
    - `confidence` number, required
    - `asOf` string, date-time, nullable, required
    - `relationshipToVerified` 'corroboration' | 'narrowing_for_context' | 'alternate_claim', required: corroboration = same logical value; narrowing_for_context = subset/superset of the verified value; alternate_claim = genuine disagreement at lower authority.
    - `verifiedValue` string, required: The winning value, for self-contained rendering.
    - `verifiedSource` string, required
  - `corrections` KnowledgeCorrection[], required
    - `field` string, required
    - `commonAiClaim` string, nullable, required: What AI engines commonly say (null when no confident answer).
    - `verifiedValue` string, nullable, required: The verified value.
    - `source` string, required: Verified-record source (e.g. "Wikidata.P571").
    - `status` 'contradiction' | 'ai_unaware', required
    - `asOf` string, date-time, nullable, required
  - `narrative` NarrativeCorrection[], required
    - `aspect` string, required: Canonical aspect label.
    - `ownView` string, required: Entity's own claim.
    - `externalView` string, required: External perception summary.
    - `divergence` number, required: 0–100 composite divergence.
  - `accuracy` KnowledgeAccuracy, required: Cross-check summary: how often AI engines agreed with the verified record.
    - `evaluated` integer, required: Total fields cross-checked across AI engines.
    - `matches` integer, required
    - `mismatches` integer, required
    - `pct` integer, nullable, required: matches / (matches + mismatches), as a percentage.
    - `confidence` object, nullable, required: 95% Wilson interval over the binomial (Amendment 7 Confidence Layer).
      - `version` string
      - `sampleSize` integer
      - `interval95` number[]: Lower/upper bound, scaled to the count domain (0..sampleSize).
  - `verifiedRecord` VerifiedRecord: schemaVersion 2.0 — the signed, tamper-evident record of the entity's verified facts. Split out from the mixed v1.x layout so crawlers / RAG can cache it indefinitely (only invalidates when facts change), separate from the fast-ticking `knowledgeGap`.
    - `asOf` string, date-time, required: Most recent `asOf` across included facts.
    - `contentHash` string, required: `sha256:<hex>` over canonicalised `{ asOf, facts }`. Recompute locally to detect drift.
    - `facts` VerifiedRecordFact[], required
      - `field` string, required: Canonical display label (e.g. "Headquarters").
      - `value` string, required
      - `source` string, required: Original source label (e.g. "Wikidata", "Entidex pipeline").
      - `confidence` number, required
      - `asOf` string, date-time, nullable, required
      - `authority` 'high' | 'medium' | 'low', required: Authority band derived from a verified fact's confidence: high ≥85 (Wikidata / platform metadata), medium ≥65 (Entidex pipeline), low <65. Used by knowledgeGap.contradictions[] to distinguish real defects (verified value is high-authority) from monitored divergences (alternate_claim, verified value is lower-authority).
  - `knowledgeGap` KnowledgeGap: schemaVersion 2.0 — the tick-fast knowledge-gap report. Composed from the same probe data as v1.x `corrections[]` but deduped, split into contradictions vs coverage gaps, and enriched with per-engine attribution. Consumers reading this section can bypass `corrections[]` entirely.
    - `asOf` string, date-time, required
    - `accuracy` KnowledgeGapAccuracy, required: Accuracy summary in v2.0 shape — honest excluded counts, percent-space interval, and a configurable authority floor.
      - `decidable` integer, required: matches + contradictions — the accuracy denominator.
      - `matches` integer, required
      - `contradictions` integer, required
      - `pct` integer, nullable, required
      - `excluded` object, required
        - `coverageGaps` integer, required: Rows excluded — engine made no claim (coverage gap).
        - `duplicates` integer, required: Rows excluded — same defect surfaced across snapshots.
      - `confidenceFloor` integer, required: Minimum verified-authority confidence that fed the calculation. 0 = all facts; 65 = medium+; 85 = high only.
      - `interval95Pct` number[], nullable, required: 95% Wilson interval on the accuracy proportion, in PERCENTAGE space (0..100).
      - `computationVersion` string, required
    - `perEngine` KnowledgeGapPerEngine[], required
      - `engine` string, required
      - `maker` string, required
      - `makerHref` string, required
      - `decidable` integer, required
      - `matches` integer, required
      - `pct` integer, nullable, required
    - `contradictions` KnowledgeGapContradiction[], required
      - `field` string, required
      - `aiClaim` string, required
      - `verifiedValue` string, nullable, required
      - `relationship` 'contradiction' | 'alternate_claim', required: `contradiction` = engine disagrees with a high-authority verified value (real defect). `alternate_claim` = engine disagrees with a medium/low-authority value (monitored divergence, not necessarily wrong).
      - `authorityOfVerified` 'high' | 'medium' | 'low', required: Authority band derived from a verified fact's confidence: high ≥85 (Wikidata / platform metadata), medium ≥65 (Entidex pipeline), low <65. Used by knowledgeGap.contradictions[] to distinguish real defects (verified value is high-authority) from monitored divergences (alternate_claim, verified value is lower-authority).
      - `engines` string[], required: Canonical engine labels that emit this claim.
      - `firstSeen` string, date-time, required
      - `lastSeen` string, date-time, required
      - `occurrences` integer, required: Underlying probe-run rows collapsed into this deduped record.
      - `sourceExcerpts` SourceExcerpt[]: Optional. One audit-trail pointer per engine (latest snapshot for that engine's occurrence). Omitted when the underlying rows carry no snapshot ids.
        - `engine` string, required
        - `snapshotId` integer, required: entity_knowledge_snapshots.snapshot_id.
        - `observedAt` string, date-time, required
    - `coverageGaps` KnowledgeGapCoverageGap[], required
      - `field` string, required
      - `verifiedValue` string, nullable, required
      - `engines` string[], required
    - `alternateNarratives` KnowledgeGapAlternateNarrative[], required
      - `field` string, required
      - `alternateValue` string, required
      - `source` string, required
      - `confidence` integer, required
      - `asOf` string, date-time, nullable, required
      - `note` string, required
    - `trend` KnowledgeGapTrend: Direction of accuracy movement vs a prior window.
      - `prior` object, nullable, required
        - `asOf` string, date-time, required
        - `pct` integer, nullable, required
      - `delta` integer, nullable, required: Percentage-point delta vs prior.
      - `direction` 'improving' | 'declining' | 'stable', nullable, required
  - `provenance` KnowledgeStatementProvenance, required
    - `issuer` string, required
    - `issuerId` string, required
    - `statementUrl` string, uri, required
    - `methodologyUrl` string, uri, required
    - `license` string, uri, required
    - `generatedAt` string, date-time, required
    - `note` string, required
    - `proof` object, nullable, required: JsonWebSignature2020 proof attached when a signing key is configured.
      - `type` string
      - `contentHash` string: SHA-256 hash of the canonicalised statement (proof field excluded).
      - `jws` string: Ed25519 JWS over the content hash.
      - `verificationMethod` string
  - `schemaVersion` string: Additive semver — each bump extends, never breaks.
  - `completeness` object, nullable: Per-LLM completeness snapshot from the latest self-check sweep.
    - `lastComputedAt` string, date-time
    - `perLlm` object[]
      - `engine` string
      - `completenessPct` number, nullable
      - `weightedCompletenessPct` number, nullable
      - `truthGapPct` number, nullable
    - `topGaps` object[]
      - `field` string
      - `importance` number

## Other responses

- `404`: Entity or resource not found.

---

[API](https://skmtc.dev/entidex/apis/entidex-api.md) · [All operations](https://skmtc.dev/entidex/apis/entidex-api/llms.txt) · [OpenAPI document](https://skmtc.dev/entidex/apis/entidex-api/revisions/86b92f21a09a?raw)
