legal.listCourts() to resolve court slugs for filtering.
Search dockets
Endpoint
Look up a docket
Retrieve a specific docket by CourtListener ID, optionally including the full list of filings.Resolve court IDs
Court slugs likecand, nysd, ca9 are CourtListener identifiers. Use legal.listCourts() to search for the correct slug.
Endpoint
Jurisdiction codes
| Code | Jurisdiction |
|---|---|
F | Federal (all) |
FD | Federal District |
FB | Federal Bankruptcy |
FA | Federal Appellate |
FS | Federal Special (e.g. Tax Court) |
S | State (all) |
SA | State Appellate |
SS | State Supreme |
Parameters
Docket search
| Parameter | Type | Required | Description |
|---|---|---|---|
type | 'search' | Yes | Search mode |
query | string | Yes | Case name or party name (2-500 chars) |
court | string | No | CourtListener court slug (e.g. cand, ca9) |
dateFiledAfter | string | No | Lower bound filing date (YYYY-MM-DD) |
dateFiledBefore | string | No | Upper bound filing date (YYYY-MM-DD) |
limit | integer | No | Page size (1-100, default 25) |
offset | integer | No | Pagination offset (default 0) |
Docket lookup
| Parameter | Type | Required | Description |
|---|---|---|---|
type | 'lookup' | Yes | Lookup mode |
docketId | string | Yes | CourtListener docket ID |
includeEntries | boolean | No | Include docket entries/filings (default false) |
limit | integer | No | Entries page size (1-100, default 25) |
offset | integer | No | Entries pagination offset (default 0) |
Courts lookup
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | No | Search court name (min 2 chars) |
jurisdiction | string | No | Filter by jurisdiction code |
inUseOnly | boolean | No | Only courts with docket data (default true) |
limit | integer | No | Page size (1-100, default 50) |
offset | integer | No | Pagination offset (default 0) |
Response fields
Docket object
| Field | Type | Description |
|---|---|---|
id | string | CourtListener docket ID |
caseName | string | Full case name |
docketNumber | string | Court docket number (e.g. 5:11-cv-01846) |
court | string | Full court name |
courtId | string | CourtListener court slug |
dateFiled | string | Filing date |
dateTerminated | string | null | Termination date |
cause | string | null | Cause of action (e.g. 35 U.S.C. 271 Patent Infringement) |
natureOfSuit | string | null | Nature of suit classification |
parties | string[] | Party names |
assignedTo | string | null | Assigned judge |
url | string | CourtListener URL |
pacerCaseId | string | null | PACER case ID |
Docket entry
| Field | Type | Description |
|---|---|---|
entryNumber | integer | Filing number on the docket |
date | string | Filing date |
description | string | Docket text (e.g. “COMPLAINT filed by Apple Inc.”) |
documents | array | Attached documents |
Document
| Field | Type | Description |
|---|---|---|
id | string | Document ID |
documentNumber | string | Document number |
attachmentNumber | integer | null | Attachment number (null for main document) |
description | string | Document description |
pdfUrl | string | null | PDF download URL (if available in RECAP) |
pageCount | integer | null | Number of pages |
isAvailable | boolean | true = free via RECAP archive, false = requires PACER |
Document availability
Documents on a docket have anisAvailable flag:
true— The PDF is freely available via the RECAP archive. ThepdfUrlfield contains a direct download link.false— The document exists but is only available via PACER (paid). The document metadata (number, description, page count) is still returned so you know it exists.
Pricing
| Method | Price |
|---|---|
legal.docket() | Free |
legal.listCourts() | Free |
Data source
All docket data comes from CourtListener’s RECAP archive, which aggregates federal court filings contributed by the RECAP browser extension. Coverage includes:- All federal district courts
- All federal appellate courts
- Federal bankruptcy courts
- Specialty courts (Tax Court, Court of Federal Claims, etc.)