EPA Enforcement Cases
Every EPA-lead federal CIVIL enforcement case back to ~1977 — 135,000+ cases flattened to one record each: defendants, statutes cited (CWA, CAA, RCRA, FIFRA, TSCA, CERCLA, SDWA, EPCRA), federal + state penalties, SEP and compliance-action dollars, settlement lodged/entered dates, and the facilities involved with FRS registry IDs and NAICS codes. Criminal prosecutions are a separate EPA system and are NOT included. Refreshed weekly from EPA's Saturday data drop.
GET /v1/epa-enforcementWhat it returns
One record per case (doc ID = ICIS case number, e.g. 02-2026-7201 = Region 2, FY2026). Penalty dollars come from the CASE_PENALTIES join — the header totals EPA publishes are blank on most modern cases. Facility state drives the state filter. See the live example below for the full field set.
Filters
| case_number | Direct lookup by ICIS case number, format RR-YYYY-NNNN (e.g., 'HQ-1998-0303'). |
| defendant_name | Case-insensitive substring against defendant names + case name (e.g., 'caterpillar', 'exxon'). |
| state | Two-letter state code of a named facility (e.g., 'TX'). Derived from the case's facilities. |
| primary_statute | Lead statute code (RANK_ORDER=1): CWA (Clean Water Act), CAA (Clean Air Act), FIFRA (pesticides), SDWA (drinking water), RCRA (hazardous waste), TSCA (toxic substances), CERCLA (Superfund), EPCRA (right-to-know). Rare others: AIM, MPRSA, MWTA. |
| activity_type | administrative = EPA's own formal actions (~93% of cases); judicial = DOJ-filed civil court cases. |
| min_penalty | Only cases with fed_penalty >= this amount (USD). |
| fiscal_year | EPA fiscal year of the case (e.g., 2024). |
| since | status_date lower bound (YYYY-MM-DD inclusive). |
| until | status_date upper bound (YYYY-MM-DD inclusive). |
| sort_by | Default: status_date. fed_penalty surfaces the largest federal penalties (cannot be combined with since/until). |
| sort_order | Default: desc. |
| limit | Maximum records to return. Default 50, max 500. |
Example request
curl "https://api.keyvex.com/v1/epa-enforcement?limit=1" \
-H "x-api-key: YOUR_KEY"
Response
{
"results": [
{
"penalty_collected": 0,
"status_date": "1999-07-01",
"defendants": [
"CATERPILLAR, INC."
],
"primary_statute": "CAA",
"case_name": "CATERPILLAR, INC.",
"defendants_count": 1,
"federal_cost_recovery": null,
"source_url": "https://echo.epa.gov/enforcement-case-report?id=HQ-1998-0303",
"state_local_penalty": 6250000,
"compliance_action_cost": 250000001,
"fiscal_year": 1998,
"activity_type": "judicial",
"activity_id": "57374",
"enf_outcome": "Final Order With Penalty",
"summary_text": "CATERPILLAR INC. PRODUCED 320,000 ENGINES CONTAINING DEFEAT DEVICES SINCE 1988. THESE ENGINES RESULTED IN EXCESS NOX EMISSIONS OF 2.1 MILLION TONS. THE COMPANY WILL PAY A CIVIL PENALTY OF $25 MILLION, AND WILL CONDUCT ENVIRONMENTAL PROJECTS COSTING $35 MILLION.",
"case_number": "HQ-1998-0303",
"state": "IL",
"settlement_lodged_date": "1998-10-22",
"settlements_count": 1,
"state_local_cost_recovery": null,
"voluntary_self_disclosure": false,
"doj_docket_number": null,
"activity_type_code": "JDC",
"facilities_count": 6,
"multimedia": false,
"sep_amount": 0,
"statutes": [
"CAA"
],
"facilities": [
{
"frs_registry_id": "110041082949",
"name": "CATERPILLAR INC",
"city": "MOSSVILLE",
"state": "IL",
"naics_code": "326299"
},
{
"frs_registry_id": "110041082949",
"name": "CATERPILLAR INC",
"city": "MOSSVILLE",
"state": "IL",
"naics_code": "333618"
},
{
"frs_registry_id": "110041082949",
"name": "CATERPILLAR INC",
"city": "MOSSVILLE",
"state": "IL",
"naics_code": "326299"
},
{
"frs_registry_id": "110041082949",
"name": "CATERPILLAR INC",
"city": "MOSSVILLE",
"state": "IL",
"naics_code": "326299"
},
{
"frs_registry_id": "110041082949",
"name": "CATERPILLAR INC",
"city": "MOSSVILLE",
"state": "IL",
"naics_code": "333618"
},
{
"frs_registry_id": "110041082949",
"name": "CATERPILLAR INC",
"city": "MOSSVILLE",
"state": "IL",
"naics_code": "333618"
}
],
"fed_penalty": 18750000,
"settlement_entered_date": "1999-07-01",
"activity_status": "Concluded",
"region_code": "HQ",
"_first_seen_at": "2026-07-08T18:45:40.748Z",
"_last_history_at": "2026-07-08T18:45:40.748Z",
"_content_hash": "2a63d66609020f29795798805e483c98b88d43b81c6759e845684585efe7642b",
"scraped_at": "2026-07-08T18:56:47.909Z"
}
],
"count": 1,
"has_more": false
}
Example questions you can answer
- EPA cases against a company, with penalties.
- Biggest CAA or CWA penalties in a state.
- Judicial vs administrative enforcement over time.
- Which facilities (by NAICS) draw repeat enforcement?
Related datasets
Hand any AI your key + the OpenAPI spec and it can pull this dataset directly. Free key = full data, 60 requests/day.
Get a free key OpenAPI spec → REST docs →