# Changelog of Federal Court Records Scraper - PACER RECAP & Opinions (`haketa/federal-court-records-scraper`) Actor

- **URL**: https://apify.com/haketa/federal-court-records-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/haketa/federal-court-records-scraper.md

## Changelog

### 0.2.0 — 2026-11-02

- **Upstream change handled: CourtListener now requires a free API token for all data endpoints.** The public search, docket and opinion APIs return HTTP 401 without a token (confirmed live: `{"detail":"Authentication credentials were not provided."}`).
- The actor now **detects a missing token up front** (logs a clear instruction) and **fails fast with an actionable message** when CourtListener returns 401, instead of silently finishing with 0 records and a misleading "try a broader query" status.
- Relabeled the `courtListenerToken` input as **Required** with step-by-step guidance (register at courtlistener.com → Profile → API → copy token). Free, ~1 minute.
- **Verification:** validated the normalized schema against a live RECAP case sample — 100% core-field coverage (`caseName`, `court`, `courtId`, `courtCitation`, `docketNumber`, `docketId`, `pacerCaseId`, `dateFiled`, `parties`, `courtListenerUrl`), ~92% of case records carry at least one document, 19 distinct courts, 0 duplicate dockets.
- **README refreshed** to the gold standard: made the one-time free-token setup prominent, grounded the Output example and field-reference table in the real sample, and added an honest field-coverage note.
- No output fields renamed; the parser, pagination (cursor `next`) and input contract are unchanged.

### 0.1.0

- Initial release: search RECAP dockets, dockets metadata, opinions, filing documents, judges and oral arguments via the public CourtListener API.
- Cursor pagination, optional API token for higher rate limits, court/date filters.
- Clean normalized schema with nested documents (descriptions, page counts, PDF links), parties, attorneys and firms.
