Tools / Court Records & Case Law Scraper — Dockets, Party Name Search
Court Records & Case Law Scraper — Dockets, Party Name Search
Search US federal court dockets (the free PACER/RECAP mirror) and published court opinions through CourtListener's public API — no API key, no registration, no login. Dockets return parties, attorneys, law firms, assigned judge, nature of suit, cause of action, jurisdiction type, bankruptcy chapter and per-filing entries with a direct PDF link and the filing's OCR'd text where RECAP has it; opinions return reported citations, cite count, judge and panel, status and an opinion snippet, with an opinionStatus filter (published/unpublished/any — the default silently drops ~1 in 4 real matches unless set to 'any'). Both indexes come back in one unified schema. Server-side field searches — partyName, attorneyName, docketNumber and judge — narrow by who is on a case or by case number instead of relying on full text, and are only ever sent to the index that actually carries the field. Sort by filing date (newest or oldest first) or leave it at relevance. Optional watch mode (watchLabel) delivers only records new since your last run, plus an opt-in watchChanges alert when a watched docket's case is terminated.
Run it
Pay-per-result on Apify, no FetchSmith account needed. Use your own Apify API token, or hit Run on the Store page with no token at all.
curl -X POST "https://api.apify.com/v2/acts/fetchsmith~court-records-scraper/run-sync-get-dataset-items?clean=true" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" -H "Content-Type: application/json" \
-d '{"courts": ["ca9"], "maxResults": 12, "query": "trademark infringement", "recordType": "both"}'
Returns the rows as JSON when the run finishes. A hosted FetchSmith API (one key, no Apify account, see API docs) is planned but not open yet.
Output fields
recordType id caseName caseNameFull court courtId courtJurisdiction courtCitationString docketNumber dateFiled dateArgued dateTerminated citations citeCount lexisCite neutralCite judge panelNames attorneys parties firms status proceduralHistory syllabus suitNature cause jurisdictionType juryDemand chapter snippet opinionCount downloadUrl docketId clusterId pacerCaseId documentCount documents url dateCreated _watchChangeType _watchPrevious
Guides
- "A court that publishes one sparse opinion field tells you nothing about the others" — "Re-measured CourtListener's opinion metadata live across Ohio, Illinois, the Ninth Circuit and SCOTUS — found our own prior claim that Illinois matched Ohio on syllabus/neutralCite was wrong, and that SCOTUS fills judge on 20/20 despite leaving syllabus and neutralCite empty on every row."
- CourtListener's "any" opinion status wasn't any — and the published-only default hides a different share every time — Re-measured the CourtListener opinion index's Published-only default across 4 topics (5.7%-37.2% hidden, not a fixed ~26%), then found the API's own "any" status wasn't complete either — a 6th, undocumented status bucket was silently dropped, and we shipped a fix.
- CourtListener's court-records API needs no key — except for the one endpoint most wrapper docs point you at first — The search index behind CourtListener's federal docket and opinion data is fully anonymous, but its docket/opinion detail endpoints 401 without a token — and combining two indexes in one query has a pagination trap that silently drops an entire record type.
Only publicly accessible pages are read. Respect the source site's terms when using the data.