---
title: "Get a brief"
method: GET
path: "/briefs/{id}"
tags: ["Briefs"]
---

# Get a brief

`GET /briefs/{id}`

## Request

- Base URL: `https://api.suprememind.ai/v1`
- URL: `https://api.suprememind.ai/v1/briefs/{id}`
- Auth: HTTP bearer

Requires the `read` scope. `result` and `provenance` are present once the brief has succeeded.

## Path parameters

- `id` string, required

## Response `200`

The brief.

- Brief
  - `id` string, required
  - `object` 'brief', required
  - `livemode` boolean, required
  - `status` 'queued' | 'running' | 'succeeded' | 'failed', required
  - `matter_id` string, nullable
  - `expert_class` string, nullable
  - `profile` string, nullable
  - `created_at` string, date-time, required
  - `completed_at` string, date-time, nullable
  - `charged_credits` number, required
  - `result` object
    - `sections` object: Each section's structured body.
      - `likely_opinion` object
      - `cross_ex` object
      - `methodology_challenges` object
      - `settlement_range` object
      - `decision` object
      - `ruling_prediction` RulingPrediction: The brief's one stated prediction: how the court will rule on a Rule 702 motion to exclude the modelled expert. A model prediction for preparation, not legal advice. The outcome is chosen from a fixed list, the probability is clamped to 0 to 1 by the server, and `predicted_at` is the server's time when the prediction was fixed. When the model's answer could not be used, `valid` is false and `reason` says why. Absent on briefs generated before it existed, and never counted toward a brief's completeness or charge.
        - `kind` 'model_prediction'
        - `motion` string, nullable
        - `outcome` 'excluded' | 'limited' | 'admitted' | 'null', nullable, required
        - `probability` number, nullable, required
        - `valid` boolean, required
        - `reason` string
        - `rationale` Claim[]
          - `text` string, required
          - `anchors` object[]
            - `marker` string
            - `quote` string: Verified verbatim against the source.
        - `basis` object[]: The sources the prediction rests on, by marker.
          - `marker` string
          - `citation` string, nullable
          - `why` string, nullable
        - `would_change_it` string, nullable
        - `predicted_at` string, date-time, required
        - `note` string
        - `checks` object
          - `outcome_as_written` string, nullable
          - `probability_as_written` unknown
          - `probability_clamped` boolean
          - `basis_dropped` integer
    - `citations` Citation[]
      - `marker` string, nullable
      - `section` 'likely_opinion' | 'cross_ex' | 'methodology_challenges' | 'settlement_range' | 'ruling_prediction', required
      - `citation` string, required
      - `url` string, nullable
      - `verification` object, required
        - `status` 'verified' | 'name_matched' | 'unconfirmed' | 'needs_docket' | 'malformed' | 'error' | 'not_checked', required: Stamped when the brief was generated.
        - `provider` string, nullable
        - `checked_at` string, date-time, nullable
      - `supporting_quotes` object[]
        - `quote` string
        - `proposition` string, nullable
        - `quote_verified` boolean
    - `holdout` object: Present when the brief was queued with `holdout`. What was withheld, and from where; an empty list means nothing matched.
      - `requested` string[]
      - `withheld_sources` object[]
        - `citation` string
        - `held_out` string, nullable: The holdout entry it matched.
        - `stage` 'authority_pool' | 'curated_authority' | 'forum_authority' | 'anchor' | 'judicial_record' | 'named_expert_record' | 'null', nullable
  - `result_generated_at` string, date-time
  - `superseded` boolean: True when a later brief for the same matter and expert class has replaced this one's stored content.
  - `sample` object: Present on test-mode briefs, which carry a fixed sample result.
    - `note` string
  - `provenance` object
    - `generated_by` 'Supreme Mind', required
    - `checked` string, required
    - `not_checked` string, required
    - `use` string, required
  - `error` object
    - `type` string
    - `code` string, nullable
    - `message` string, nullable

## Other responses

- `401`: Missing, malformed, unknown or revoked key.
- `403`: The key lacks the scope, the address is not on its allowlist, or API access is off for the account.
- `404`: Nothing with that id is visible to this key.
- `429`: Too many requests, or too many jobs in flight.

---

[API](https://skmtc.dev/suprememind/apis/supreme-mind-api.md) · [All operations](https://skmtc.dev/suprememind/apis/supreme-mind-api/llms.txt) · [OpenAPI document](https://skmtc.dev/suprememind/apis/supreme-mind-api/revisions/a7fdd32883bc?raw)
