---
title: "Resolve one legal object by canonical URI"
method: GET
path: "/api/v1/object/{uri}"
tags: ["objects"]
---

# Resolve one legal object by canonical URI

`GET /api/v1/object/{uri}`

## Request

- Base URL: `https://kvasir.legal`
- URL: `https://kvasir.legal/api/v1/object/{uri}`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer
  - none

## Path parameters

- `uri` string, required

## Query parameters

- `include` string
- `commentary_scope` 'self' | 'inherit'

## Response `200`

Legal object (check `exists`)

- LegalObject
  - `authority` object
    - `indeg` integer
    - `pct` number
    - `score` number
  - `canonical_uri` string
  - `children` object[]: statute TOC (include=children)
    - `label` string
    - `section_path` string[]
    - `uri` string
  - `commentary` object[]: include=commentary: anchored, author-attributed annotations (never merged); with commentary_scope=inherit entries carry inherited=true + anchor_level
  - `content` object
  - `exists` boolean, required
  - `hint` string
  - `identity` object
    - `href` string, nullable
    - `path` union: concept hierarchy: array of {code,label}
      - object[]
      - string
    - `subtitle` string, nullable
    - `title` string
  - `include_ignored` string[]
  - `kind` 'norm' | 'decision' | 'gesetz' | 'aufsatz' | 'concept' | 'flow' | 'normversion' | 'material' | 'section' | 'unknown', required
  - `object_version` string, required
  - `provenance` Provenance: The verifiability kernel.
    - `derived` boolean
    - `quelle` string, nullable
    - `retrieved_at` string, date-time, nullable
    - `source` string
    - `source_url` string, nullable
    - `version` string, nullable: Content version (hash or update timestamp)
  - `relations` object
    - `in` object[]
    - `out` object[]
  - `suggestions` object[]: did-you-mean candidates when exists=false
  - `units` Unit[]
    - `citation` string
    - `deeplink` string
    - `label` string
    - `path` string: norm: a<abs>.n<nr>.b<buchst>; decision: r<Rn>
    - `text` string
    - `unit` string
  - `units_confidence` number: Fraction of extracted sub-units whose text verifies against the full text (1.0 = all clean). Only verified units are returned.
  - `uri` string, required
  - `versions` object[]

## Other responses

- `401`: Missing or invalid API key
- `429`: Rate limit (120/min default), monthly quota or sandbox cap reached — `code` distinguishes; honor Retry-After

---

[API](https://skmtc.dev/kvasir/apis/kvasir-legal-grounding-api.md) · [All operations](https://skmtc.dev/kvasir/apis/kvasir-legal-grounding-api/llms.txt) · [OpenAPI document](https://skmtc.dev/kvasir/apis/kvasir-legal-grounding-api/revisions/87f32370cf06?raw)
