VOOZH about

URL: https://apify.com/nexgendata/courtlistener-court-opinions

โ‡ฑ US Court Opinions & Case Law Search API ยท Apify


๐Ÿ‘ โš–๏ธ US Court Opinions & Case Law Search avatar

โš–๏ธ US Court Opinions & Case Law Search

Pricing

Pay per event

Go to Apify Store

โš–๏ธ US Court Opinions & Case Law Search

Search 240,000+ US federal & state court opinions and case law (CourtListener): case name, court, date, citation, cite count, judge. For litigators, legal-AI, and researchers.

Pricing

Pay per event

Rating

0.0

(0)

Developer

๐Ÿ‘ NexGenData

NexGenData

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

5 days ago

Last modified

Categories

Share

Search 240,000+ U.S. federal and state court opinions and case law as structured JSON. $0.10 per record. No Westlaw or LexisNexis seat, no PACER per-page fee, no per-search metering wall.

Case law is the raw material of every litigation strategy, every legal-research memo, and every legal-AI product โ€” and the incumbent way to query it costs hundreds to thousands of dollars per attorney per month. This actor reads the public CourtListener corpus โ€” the open-access case-law database maintained by the Free Law Project โ€” and returns court opinions and RECAP dockets as clean JSON. Run a full-text search across case names, parties, and topics, filter by court and filing date, and get back the case name, the deciding court, the date filed, the docket number, and a direct link to the opinion. Build a case-law research pipeline, a litigation-monitoring watchlist, or a retrieval index for a legal-AI model โ€” without a per-seat research subscription and without scraping a court site yourself.

Why use this

Westlaw and LexisNexis are extraordinary research platforms, but they are priced for law firms and metered per seat โ€” and their terms forbid bulk export of the very results you most want to pipe into a downstream system. PACER, the federal courts' own system, charges per page and is built for retrieving one document at a time, not for querying across a corpus. Meanwhile the underlying opinions are public records: courts publish them, and the Free Law Project's CourtListener has aggregated 240,000+ of them into an open database. The gap is access shape, not access rights โ€” you need that public corpus as a programmatic, filterable JSON feed.

This actor is that feed. You pass a query and filters; you get back records. It handles the CourtListener API surface, pagination, and rate limits for you, and โ€” because billing is pay-per-result โ€” a search that returns nothing costs you nothing beyond the actor-start event. If you supply a free CourtListener token, the actor uses it to raise your rate limits for larger pulls; without one it still runs at the public-tier rate.

What you get

Each record returned is structured JSON populated from the CourtListener corpus wherever the source provides the field:

  • caseName โ€” the case caption (e.g. Smith v. Acme Corp.)
  • court โ€” the deciding court (Supreme Court of the United States, a Court of Appeals, a district court, or a state court)
  • dateFiled โ€” the date the opinion or docket was filed
  • docketNumber โ€” the court's docket number, the universal identifier for the matter
  • url โ€” a direct link to the opinion or docket on CourtListener for full-text reading and verification

The schema is additive-only and stable, so records load straight into a case-management system, a research database, Snowflake, BigQuery, or Postgres without re-mapping each refresh.

Use cases

  • Case-law research at scale โ€” Run a full-text search for a doctrine, a statute, or a fact pattern across 240,000+ opinions, narrowed to the relevant court and a dateFiledAfter cutoff, and pull every matching case as JSON for review.
  • Litigation monitoring โ€” Track a party, a counsel, or a topic on a schedule and surface newly filed opinions and dockets the day they land โ€” a standing watch on a competitor's litigation, a regulator's enforcement posture, or a circuit's emerging line of authority.
  • Citator and precedent mapping โ€” Use the docketNumber and caseName to anchor a precedent graph, joining opinions by court and date to trace how a line of authority develops across circuits.
  • Legal-AI and RAG ingestion โ€” Each record is JSON-flat and carries a source URL, making it drop-in fodder for a case-law retrieval index or a litigation-assistant model grounded in public opinions.
  • Docket surveillance (RECAP) โ€” Set searchType=r to search RECAP dockets โ€” the crowd-sourced archive of PACER documents โ€” to find federal cases and filings without paying PACER per-page fees.
  • Conflict and exposure checks โ€” Batch-search counterparties and their affiliates against the opinion corpus to surface prior litigation history before a deal or an engagement.
  • Empirical legal research โ€” Quantify filing volume by court and date for scholarship on caseload, doctrine diffusion, or circuit-split formation.
  • Brief and memo drafting support โ€” Pull the candidate authorities for a research question as structured records, then read each via its url to assemble a citation list.

Sample output

{
"caseName":"Riverside Holdings LLC v. Meridian Logistics, Inc.",
"court":"Court of Appeals for the Federal Circuit",
"dateFiled":"2025-11-14",
"docketNumber":"23-1492",
"url":"https://www.courtlistener.com/opinion/9912345/riverside-holdings-llc-v-meridian-logistics-inc/"
}

A RECAP docket record (searchType=r) looks like this:

{
"caseName":"United States v. Calloway",
"court":"U.S. District Court for the Southern District of New York",
"dateFiled":"2026-02-03",
"docketNumber":"1:26-cr-00118",
"url":"https://www.courtlistener.com/docket/68812345/united-states-v-calloway/"
}

Input parameters

ParameterLabelDescription
searchTypeSearch typeo = court opinions, r = RECAP dockets.
queryQueryFull-text search across case name, party, and topic.
courtCourtCourt ID filter (e.g. scotus, cafc).
dateFiledAfterFiled afterOnly records filed on or after this date (YYYY-MM-DD).
maxResultsMax resultsMaximum number of records to return.
courtListenerTokenCourtListener token (optional)Optional free CourtListener token to raise rate limits.

How to use

Python (apify-client)

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("nexgendata/courtlistener-court-opinions").call(run_input={
"searchType":"o",
"query":"trade secret misappropriation",
"court":"cafc",
"dateFiledAfter":"2024-01-01",
"maxResults":100,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["caseName"], item["court"], item["dateFiled"], item["url"])

cURL

curl-X POST "https://api.apify.com/v2/acts/nexgendata~courtlistener-court-opinions/run-sync-get-dataset-items?token=YOUR_TOKEN"\
-H"Content-Type: application/json"\
-d'{
"searchType": "o",
"query": "trade secret misappropriation",
"court": "cafc",
"dateFiledAfter": "2024-01-01",
"maxResults": 100
}'

Results stream into the Apify dataset, exportable as JSON, JSONL, CSV, or Excel. Schedule via Apify's built-in scheduler for a standing litigation watch, and wire a webhook to fire a Slack / Zapier / Make alert on new matches.

Pricing

This actor runs on Apify's pay-per-event (PPE) model โ€” you pay for results, not run-time:

  • $0.10 per record โ€” the primary event, charged once per opinion or docket pushed to the dataset
  • Actor start โ€” a negligible one-time per-run event

No subscriptions, no seat licences, no minimums.

Cost worked example

  • A doctrine search returning 100 opinions โ†’ ~$10
  • A daily litigation watch returning ~15 new filings โ†’ ~$1.50/day
  • A conflict-check batch returning ~40 prior cases โ†’ ~$4

A search that matches nothing costs nothing beyond the actor-start event. Apify's free tier covers most experiments. Browse 200+ buyer-intent actors at https://apify.com/nexgendata?fpr=2ayu9b

How this compares to Westlaw, LexisNexis, and PACER

SourceCostWhat you get
Westlaw~$100-$300+/attorney/monthFull research suite with KeyCite; bulk export forbidden, not a programmatic feed
LexisNexisCustom enterprise contractFull research suite with Shepard's; no bulk JSON API
PACER (federal courts)$0.10/page (capped per document)One document at a time; built for retrieval, not corpus search
CourtListener (DIY)Free API, rate-limitedRaw API surface; you build the client, pagination, and retry logic
US Court Opinions Search (this actor)$0.10/record, no subscriptionFiltered, structured JSON โ€” case name, court, date, docket number, source URL

If you need Shepard's / KeyCite citator analysis, headnotes, and treatises, you still want Westlaw or Lexis. But if your workflow is corpus search, litigation monitoring, conflict checks, or feeding a legal-AI index โ€” and you want records as JSON for cents apiece โ€” this actor is the right cost model.

FAQ

Q: Where does the data come from?

A: CourtListener, the open-access legal database run by the non-profit Free Law Project, aggregating 240,000+ U.S. federal and state court opinions plus RECAP dockets. Every record links back to CourtListener via its url.

Q: What is the difference between searchType=o and searchType=r?

A: o searches court opinions โ€” the decisions courts publish. r searches RECAP dockets โ€” the crowd-sourced archive of PACER docket entries and documents. Use opinions for case-law research and RECAP for docket-level monitoring of active federal matters.

Q: Do I need a CourtListener token?

A: No โ€” the actor runs without one at the public rate limit. Supplying a free CourtListener token via courtListenerToken raises the limit, which matters for larger pulls. Tokens are free from the Free Law Project.

Q: Does this give me the full opinion text?

A: The actor returns the case metadata โ€” caption, court, date, docket number, and the link. Follow url to read the full opinion text on CourtListener.

Q: How current is the corpus?

A: CourtListener ingests opinions and dockets on an ongoing basis. Use dateFiledAfter to constrain to recent filings and schedule the actor for a standing watch.

Schema stability & versioning

This actor follows NexGenData's additive-only schema contract. New fields may be added as new keys, defaulting to null for older runs. Existing fields are never renamed or removed without a major-version bump and advance changelog notice. Field semantics are never silently changed; a required change adds a new field and keeps the old one for at least 90 days. Build a production research pipeline on this output without a change breaking your ETL.

Compliance & legal

  • The actor reads the public, open-access CourtListener database, which aggregates public court records and opinions. Court opinions are public records.
  • Requests are paced politely against the CourtListener API.
  • The actor collects, stores, and transmits no credentials and accesses no paywalled content.
  • You are responsible for ensuring downstream use complies with CourtListener's terms and your jurisdiction's laws. Verify any case before relying on it for a filing by reading the source via url.
  • Consult counsel before bulk redistribution of compiled case-law records.

Related NexGenData actors

Part of NexGenData's IP & Legal intelligence cluster โ€” pair this actor with:

Browse the full 200+ actor catalog at https://apify.com/nexgendata?fpr=2ayu9b.

You might also like

Case Law Scraper

crawlergang/case-law-scraper

Search and retrieve US court opinions and case law from CourtListener - the largest open legal database with 4M+ court opinions. Search by keyword, filter by court, date range, and jurisdiction.

1

5.0

Case Law Scraper

crawlerbros/case-law-scraper

Search and retrieve US court opinions and case law from CourtListener - the largest open legal database with 4M+ court opinions. Search by keyword, filter by court, date range, and jurisdiction.

CourtListener Opinions Scraper | US Court Rulings

parseforge/court-listener-opinions-scraper

Extract US court opinions from CourtListener with case name, court, judges, citations, date filed, and full opinion text. Filter by court, date range, or keyword. Built for legal research, AI training datasets, litigation tracking, and academic case law analysis.

CourtListener Scraper โ€” US Case Law & Dockets

bovi/courtlistener-scraper

Scrape CourtListener (Free Law Project) โ€” US court opinions, RECAP dockets and oral arguments with case name, court, date, docket number, citations and snippet. Full-text search filtered by court and type. Keyless API. Schedule as a case-law monitor. Pay per result.

๐Ÿ‘ User avatar

Vitalii Bondarev

2

CourtListener Opinion Scraper - US Court Case Law API

jungle_synthesizer/courtlistener-opinion-scraper

Crawl US court opinions from CourtListener (Free Law Project). 8M+ decisions from 3,350+ federal, state, and appellate courts. Filter by court, judge, date range, citation, or keyword. Returns case metadata, citations, precedential status, and opinion excerpts.

๐Ÿ‘ User avatar

BowTiedRaccoon

4

CourtListener Legal Search Scraper

crawlerbros/courtlistener-legal-search-scraper

Search US court opinions, federal dockets, and court listings from CourtListener.com - the Free Law Project's open database of 4M+ court opinions. No API key required. Filter by court, date range, and keyword.

CourtListener Scraper - Case Law & Legal Opinions API

pink_comic/courtlistener-legal-opinions

Scrape CourtListener legal opinions and case law from federal and state courts. Search by keyword, court, date, and status; export case names, judges, citations, docket numbers, opinion URLs, snippets, and download links for legal research, litigation monitoring, compliance, and RAG datasets.

Google Scholar Case Law API

johnvc/google-scholar-case-law

API for Google Scholar US case law. Search opinions and pull full case details with court, year, and citation filters. Returns structured JSON. MCP-ready.