---
title: "RETIRED — one court opinion (410 corpus_retired)"
method: GET
path: "/us-law/opinions/{cluster_id}"
deprecated: true
---

# RETIRED — one court opinion (410 corpus_retired)

`GET /us-law/opinions/{cluster_id}`

## Request

- Base URL: `https://ai-law-tracker.com/api/v1`
- URL: `https://ai-law-tracker.com/api/v1/us-law/opinions/{cluster_id}`
- Auth: one of:
  - none
  - API key in header `X-API-Key`
  - HTTP bearer

> **Deprecated.**

⛔ RETIRED 2026-08-22 — THIS ENDPOINT NOW RETURNS 410 `corpus_retired`. The US court-opinion corpus is no longer served; see https://www.courtlistener.com. Nothing is charged against your record budget for this path. Original description kept verbatim below.

─────────────────────────────────────────────────────────────

The complete record for one CourtListener cluster id — the `cluster_id` field of any list result. Provenance (absolute_url, source_authority, bulk_edition, retrieved_at) is never withheld at any tier: the link to the decision is how you check our work, and withholding it to build an upsell would mean selling an unverifiable claim.

The record identifies the decision; it does not contain it. `meta.corpus.full_text_at` points at the opinion itself.

To fetch many at once use /us-law/opinions?cluster_id=1,2,3 (up to 100).

## Path parameters

- `cluster_id` integer, required

## Response `200`

The opinion.

- object
  - `api_version` string
  - `data` CourtOpinion: One published court opinion, IDENTIFIED but not reproduced. The record carries the case name, court, filing date, docket number, reporter citation and how many later opinions cite it; the decision itself lives at absolute_url. There is no opinion text and no holding in this corpus.
    - `cluster_id` integer: CourtListener cluster id — the stable identifier, and the path parameter of the detail endpoint.
    - `case_name` string: The caption. This is the ONLY field `q` searches. Never withheld at any tier.
    - `court_id` string: Court slug, e.g. scotus, iowa, nyappdiv. See /us-law/courts for the full list.
    - `court_name` string: Never withheld at any tier.
    - `court_citation_string` string, nullable: The court’s reporter abbreviation, e.g. "Iowa". Withheld in the trimmed (basic) envelope.
    - `court_jurisdiction` 'F' | 'S' | 'SA': The indexed jurisdiction code the court_level / jurisdiction_level filters resolve onto.
    - `court_level` 'federal_appellate' | 'state_supreme' | 'state_appellate'
    - `date_filed` string, date: ALWAYS read alongside date_filed_is_approximate.
    - `date_filed_is_approximate` boolean: True when the filing date is our source’s approximation rather than a stated date — 58,828 of 988,554 records. NEVER withheld at any tier, including the keyless envelope: shipping date_filed without this flag would present a guess as a fact to people who compute deadlines from it.
    - `precedential_status` string: Every record currently held is "Published".
    - `docket_id` integer, nullable: Withheld in the trimmed (basic) envelope.
    - `docket_number` string, nullable: Withheld in the trimmed (basic) envelope. NOT a filter — see the endpoint description.
    - `primary_citation` string, nullable: Reporter citation, e.g. "2022 OK 38". 541,629 of 988,554 records carry one. Never withheld at any tier.
    - `citation_count` integer: How many later opinions cite this one. Withheld in the trimmed (basic) envelope.
    - `absolute_url` string: Where the decision itself is. Never withheld at any tier — it is how you check our work.
    - `slug` string, nullable: Withheld in the trimmed (basic) envelope.
    - `source_authority` string: courtlistener. Withheld in the trimmed (basic) envelope.
    - `bulk_edition` string, date, nullable: Which source bulk edition this row came from. Withheld in the trimmed (basic) envelope.
    - `retrieved_at` string, date-time: When WE fetched it — not when the court decided it. Withheld in the trimmed (basic) envelope.
  - `meta` object
  - `attribution` string

## Other responses

- `400`: cluster_id is not a positive integer.
- `403`: tier_upgrade_required.
- `404`: No opinion with that cluster_id.
- `429`: Rate limited, or record_budget_exceeded.

---

[API](https://skmtc.dev/ai-law-tracker/apis/ai-law-tracker-public-laws-api.md) · [All operations](https://skmtc.dev/ai-law-tracker/apis/ai-law-tracker-public-laws-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ai-law-tracker/apis/ai-law-tracker-public-laws-api/revisions/25403268a853?raw)
