For AI agents
Lawsuits as data: 33 cases so far, with dockets, dates, status, dated filings and rulings, and where each came from. New cases are found daily; every row carries its source and first-seen date.
Point your agent here
https://lawsuits.fru.dev/llms.txthttps://lawsuits.fru.dev/llms-full.txtCall the API
| Method | Path | Params | Returns |
|---|---|---|---|
| GET | /api/cases | kind, status, forum (court, regulator), company, q, limit (max 200), offset | Cases, upcoming hearings first: parties, court or regulator, docket, filed date, status, next date, outcome, amount, laws tested |
| GET | /api/cases/{id} | id | One case with its dated history (filings, orders, rulings, hearings) and its change log |
| GET | /api/upcoming | days (default 90) | Cases with a hearing, trial or ruling date ahead, soonest first |
| GET | /api/events | since (YYYY-MM-DD), limit (max 500) | Dated filings, orders, rulings and hearings across all cases, newest first |
| GET | /api/companies | since (ISO time), limit (max 200), offset | Companies that are parties, with registry slug, domain, site URL and dated items (filings, rulings) |
| GET | /api/changes | since (ISO time), limit (max 500) | Append-only log: status, next date, outcome, amount, verified |
| GET | /api/search | q, limit (max 20) | Ranked cases, companies and pages |
| GET | /calendar.ics | kind | Upcoming hearings and rulings as an iCalendar feed |
/api/cases
curl -s "https://lawsuits.fru.dev/api/cases?kind=copyright&limit=2"{
"total": 33,
"cases": [
{
"id": "kadrey-v-meta",
"title": "Kadrey v. Meta",
"forum": "US District Court, Northern District of California",
"docketNumber": "3:23-cv-03417",
"status": "active",
"next": {
"date": "2026-09-25",
"label": "Further Case Management Conference",
"sourceUrl": "https://www.courtlistener.com/docket/67569326/829/kadrey-v-meta-platforms-inc/"
},
"url": "https://lawsuits.fru.dev/cases/kadrey-v-meta"
},
{
"id": "us-v-google-ad-tech",
"title": "United States v. Google (ad tech)",
"forum": "US District Court, Eastern District of Virginia",
"docketNumber": "1:23-cv-00108",
"status": "decided",
"next": {
"date": "2026-10-02",
"label": "Joint proposed final judgment due",
"sourceUrl": "https://www.courtlistener.com/docket/66753787/united-states-v-google-llc/"
},
"url": "https://lawsuits.fru.dev/cases/us-v-google-ad-tech"
}
]
}/api/cases/{id}
curl -s "https://lawsuits.fru.dev/api/cases/kadrey-v-meta"{
"case": {
"id": "kadrey-v-meta",
"title": "Kadrey v. Meta",
"forum": "US District Court, Northern District of California",
"docketNumber": "3:23-cv-03417",
"status": "active",
"next": {
"date": "2026-09-25",
"label": "Further Case Management Conference",
"sourceUrl": "https://www.courtlistener.com/docket/67569326/829/kadrey-v-meta-platforms-inc/"
},
"url": "https://lawsuits.fru.dev/cases/kadrey-v-meta"
},
"events": [
{
"id": 37,
"caseId": "kadrey-v-meta",
"date": "2026-09-09",
"kind": "hearing",
"title": "Minute Entry for proceedings held before Judge Vince Chhabria: Further Case Management Conference held via Zoom on 9/9/2026",
"sourceUrl": "https://www.courtlistener.com/docket/67569326/829/kadrey-v-meta-platforms-inc/"
},
{
"id": 5,
"caseId": "kadrey-v-meta",
"date": "2023-07-07",
"kind": "filing",
"title": "Complaint filed: Kadrey et al. v. Meta Platforms, Inc.",
"sourceUrl": "https://www.courtlistener.com/docket/67569326/kadrey-v-meta-platforms-inc/"
}
]
}/api/upcoming
curl -s "https://lawsuits.fru.dev/api/upcoming?days=60"{
"cases": [
{
"id": "kadrey-v-meta",
"title": "Kadrey v. Meta",
"forum": "US District Court, Northern District of California",
"docketNumber": "3:23-cv-03417",
"status": "active",
"next": {
"date": "2026-09-25",
"label": "Further Case Management Conference",
"sourceUrl": "https://www.courtlistener.com/docket/67569326/829/kadrey-v-meta-platforms-inc/"
},
"url": "https://lawsuits.fru.dev/cases/kadrey-v-meta"
},
{
"id": "us-v-google-ad-tech",
"title": "United States v. Google (ad tech)",
"forum": "US District Court, Eastern District of Virginia",
"docketNumber": "1:23-cv-00108",
"status": "decided",
"next": {
"date": "2026-10-02",
"label": "Joint proposed final judgment due",
"sourceUrl": "https://www.courtlistener.com/docket/66753787/united-states-v-google-llc/"
},
"url": "https://lawsuits.fru.dev/cases/us-v-google-ad-tech"
}
]
}/api/events
curl -s "https://lawsuits.fru.dev/api/events?since=2026-09-01&limit=3"{
"events": [
{
"id": 79,
"caseId": "concord-music-group-inc-v-anthropic-pbc",
"date": "2026-09-21",
"kind": "order",
"title": "ORDER Granting Stipulations Regarding Parties' Proposed Coordination and Case Management Order, (126) in Case No. 5:26-cv-00880-EKL and (47) in Case No. 5:26-cv-02334-EKL. Signed b",
"sourceUrl": "https://www.courtlistener.com/docket/72199828/127/concord-music-group-inc-v-anthropic-pbc/"
},
{
"id": 76,
"caseId": "bmg-rights-management-us-llc-v-anthropic-pbc",
"date": "2026-09-21",
"kind": "order",
"title": "ORDER Granting Stipulations Regarding Parties' Proposed Coordination and Case Management Order, (126) in Case No. 5:26-cv-00880-EKL and (47) in Case No. 5:26-cv-02334-EKL. Signed b",
"sourceUrl": "https://www.courtlistener.com/docket/72505829/48/bmg-rights-management-us-llc-v-anthropic-pbc/"
},
{
"id": 60,
"caseId": "epic-v-google",
"date": "2026-09-18",
"kind": "order",
"title": "ORDER re (847 in 3:20-cv-05671-JD) Status Report",
"sourceUrl": "https://www.courtlistener.com/docket/17443962/8
.../api/companies
curl -s "https://lawsuits.fru.dev/api/companies?limit=2"{
"companies": [
{
"slug": "openai",
"name": "OpenAI",
"domain": "openai.com",
"url": "https://lawsuits.fru.dev/companies/openai",
"items": [
{
"type": "case_event",
"date": "...",
"title": "..."
}
]
}
]
}/api/changes
curl -s "https://lawsuits.fru.dev/api/changes?since=2026-09-01T00:00:00Z&limit=3"{
"changes": [
{
"id": 38,
"caseId": "carreyrou-v-anthropic-pbc",
"caseTitle": "Carreyrou v. Anthropic PBC",
"field": "next_date",
"old": "",
"new": "2026-12-17",
"changedAt": "2026-09-25 01:22:37",
"sourceUrl": "https://www.courtlistener.com/docket/72069211/228/10/carreyrou-v-anthropic-pbc/",
"note": null,
"url": "https://lawsuits.fru.dev/cases/carreyrou-v-anthropic-pbc"
},
{
"id": 36,
"caseId": "cruz-v-anthropic-pbc",
"caseTitle": "Cruz v. Anthropic PBC",
"field": "created",
"old": "",
"new": "active",
"changedAt": "2026-09-25 01:22:06",
"sourceUrl": "https://www.courtlistener.com/docket/73339887/cruz-v-anthropic-pbc/",
"note": null,
"url": "https://lawsuits.fru.dev/cases/cruz-v-anthropic-pbc"
}
]
}/api/search
curl -s "https://lawsuits.fru.dev/api/search?q=openai"{
"q": "openai",
"results": [
{
"id": "case:...",
"group": "items",
"title": "...",
"href": "/cases/..."
}
]
}/calendar.ics
curl -s "https://lawsuits.fru.dev/calendar.ics?kind=copyright"BEGIN:VCALENDAR
VERSION:2.0
...
BEGIN:VEVENT
SUMMARY:Motion Hearing: ...
DTSTART;VALUE=DATE:...
END:VEVENT
...OpenAPI 3.1: /openapi.json. Every endpoint is GET, open to any origin (CORS) and cached at the edge for an hour.
Add to your agent
System prompt line
For lawsuits and enforcement actions in data and AI (status, next hearing, rulings, fines), fetch https://lawsuits.fru.dev/llms.txt and use https://lawsuits.fru.dev/api/cases?kind={kind} and https://lawsuits.fru.dev/api/cases/{id}. Not legal advice; cite "Lawsuits (lawsuits.fru.dev)" and the docket link.Tool definition
{
"name": "ai_data_lawsuits",
"description": "Look up lawsuits and enforcement actions in data and AI (copyright, antitrust, privacy fines, FTC, DOJ and SEC actions): parties, court or regulator, docket number, filed date, status, next hearing or ruling date, outcome, amounts, and each filing and ruling with a link. Source: Lawsuits (lawsuits.fru.dev). Not legal advice.",
"input_schema": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"copyright",
"antitrust",
"privacy",
"consumer",
"governance",
"securities"
]
},
"company": {
"type": "string",
"description": "Company slug, e.g. openai, google, meta"
},
"q": {
"type": "string",
"description": "Words in the case name or parties"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 200
}
}
},
"endpoint": "GET https://lawsuits.fru.dev/api/cases"
}Python
import json, urllib.request
def cases(kind: str = "copyright") -> list[dict]:
"""Data and AI lawsuits, upcoming hearings first."""
url = f"https://lawsuits.fru.dev/api/cases?kind={kind}"
with urllib.request.urlopen(url, timeout=20) as r:
return json.load(r)["cases"]
for c in cases():
print(c["title"], c["status"], c["next"] and c["next"]["date"])TypeScript
type Case = { id: string; title: string; status: string; next: { date: string; label: string } | null }
async function upcoming(days = 30): Promise<Case[]> {
const res = await fetch(`https://lawsuits.fru.dev/api/upcoming?days=${days}`)
if (!res.ok) throw new Error(`lawsuits ${res.status}`)
return ((await res.json()) as { cases: Case[] }).cases
}
console.log(await upcoming())Usage terms
- Free to read. Please cite "Lawsuits (lawsuits.fru.dev)" with a link.
- Responses are cached for an hour.
- Be polite: 60 requests a minute at most.
- Summaries of public records, not legal advice; unverified cases were found automatically.