LitLex API

The research corpus, over an API.

The API serves the same corpus and citator that power Litco’s reader. Your software can search the corpus, pull opinions and statutes, check a case’s treatment, and verify quotations. Every response comes straight from the corpus records, and requests never reach a model on Litco’s side.

Give an API key to Claude Code, OpenClaw, a Hermes deployment, or an application your team wrote. Instead of reciting law from memory, your agent looks the law up—full-text opinions with paragraph anchors, citator treatment, statutes and regulations with currency dates, and a verification endpoint that says whether a quotation is real before your agent repeats the quotation in a draft. The corpus behind the key runs from the Supreme Court through every federal circuit and the state courts, and refreshes daily. An agent built on this API reads the same law a paid research platform shows.

Lobster-friendly. OpenClaw agents plug straight in.

One endpoint accepts a quotation and a citation and returns whether the reporter text contains the quotation, with the matching passage.

# request
POST /v1/cite-check
{ "quote": "must give effect to the unambiguously
            expressed intent of Congress",
  "opinion_id": "<uuid or short_id>",
  "paragraph_number": 24 }

# response (shape per the public spec)
{ "data": {
    "verdict": "verified_exact",
    "match": { "anchor": "<short_id>::p.24",
               "case_name": "...",
               "paragraph_number": 24,
               "reporter_pincite": "467 U.S. 837, 843" },
    "pinpoint_correct": true } }

Search takes a doctrine or a fact pattern and returns paragraph-level hits. Each hit carries the anchor to cite, a snippet, and a treatment-status chip. An agent can see whether a case still stands before it quotes from it.

# request
POST /v1/search
{ "query": "agency interpretation of an ambiguous
             statute entitled to deference",
  "filters": { "courts": ["scotus"] },
  "top_k": 3 }

# response (shape per the public spec)
{ "data": { "hits": [
    { "anchor": "<short_id>::p.11",
      "case_name": "Chevron U.S.A. Inc. v. NRDC",
      "opinion_type": "majority",
      "snippet": "...the question for the court is whether
                  the agency's answer is based on a
                  permissible construction of the statute.",
      "score": 0.93,
      "treatment_status": "negative" },
    { "anchor": "<short_id>::p.44",
      "case_name": "Loper Bright Enterprises v. Raimondo",
      "opinion_type": "majority",
      "snippet": "...courts need not and under the APA may
                  not defer to an agency interpretation of
                  the law simply because a statute is
                  ambiguous.",
      "score": 0.89,
      "treatment_status": "none" } ] },
  "meta": { "total_candidates": 214 } }

An agent can go from a legal question to paragraph-anchored, treatment-aware, quote-verified law over plain HTTP.

POST  /v1/search                       Hybrid search (vector + FTS, RRF-fused) over 2.55M federal opinions
GET   /v1/cite/resolve                 Resolve a case citation string into opinion id(s)
GET   /v1/opinions/{id}                Opinion text, paragraph-anchored
GET   /v1/opinions/{id}/citator        Is this case still good law? Treatment rollup + citing opinions
GET   /v1/opinions/{id}/authorities    Table of authorities: everything this opinion cites
GET   /v1/statutes/{cite}              USC/CFR text by citation, latest loaded version
GET   /v1/fr/search                    Federal Register search: rules, proposed rules, notices
POST  /v1/cite-check                   Verify one quote against corpus bytes

API keys are issued per firm and metered by request.

OpenAPI spec →