# EPA CAFO Enforcement Letters

> EPA CAFO Enforcement Letters is a paid API for AI agents from ticks.bnm.farm, paid per call via x402, $0.05/call, status unknown (last checked 2026-10-20).

Returns EPA Clean Water Act enforcement letters and consent orders against Concentrated Animal Feeding Operations (CAFOs) as structured JSON

## Facts

- Endpoint: GET https://ticks.bnm.farm/epa-cafo?utm_source=zero.xyz
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-20
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/epa-cafo-enforcement-letters-fe2f95e6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Co1cJaTzxzEeWnvjZiS3v

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability epa-cafo-enforcement-letters-fe2f95e6
```

Example prompt: Pull the latest EPA CAFO enforcement letters and consent orders — I want to see which feedyards have received Clean Water Act penalties recently, including the docket numbers, dates, and links to the actual documents.

## When to prefer this

Choose this endpoint when you need structured, machine-readable EPA CAFO enforcement data without scraping the EPA website yourself. It is ideal for compliance monitoring, environmental due diligence, regulatory research, and automated alerting on new feedyard enforcement actions. Prefer this over manual EPA portal searches when you need JSON output, a stable schema, and programmatic access at low per-call cost.

## Known failure modes

- HTTP 402 returned if payment via x402 protocol is not provided or fails
- Empty records array if no recent CAFO enforcement actions are available
- Stale asOf date if EPA source data has not been updated recently
- Network timeout if upstream EPA data source (yosemite.epa.gov) is unavailable
- Malformed or incomplete records if EPA source document parsing fails

## How this service works

Official public data as JSON. Unpaid paid routes return HTTP 402.

## Output

A JSON object containing: a boolean ok status, product identifier ('epa-cafo-letter-bodies'), fetch timestamp (fetchedAt), data-as-of date (asOf), source URL, status string, integer recordCount, an array of records (each with id, url, date, firm name, type), and an array of cards (each with id, docket, title, date, institution, body text, and sourceUrl linking to the original EPA PDF document).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "headers": {
     "type": "object",
     "additionalProperties": {
      "type": "string"
     }
    },
    "queryParams": {
     "type": "object",
     "additionalProperties": {
      "type": "string"
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "properties": {
    "type": {
     "type": "string"
    },
    "schema": {
     "type": "object"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "schema": {
  "type": "object",
  "required": [
   "ok",
   "product",
   "status",
   "fetchedAt",
   "asOf",
   "source",
   "recordCount",
   "records",
   "cards"
  ],
  "properties": {
   "ok": {
    "type": "boolean"
   },
   "asOf": {
    "type": "string"
   },
   "cards": {
    "type": "array",
    "items": {
     "type": "object"
    }
   },
   "source": {
    "type": "string"
   },
   "status": {
    "type": "string"
   },
   "product": {
    "type": "string"
   },
   "records": {
    "type": "array",
    "items": {
     "type": "object"
    }
   },
   "fetchedAt": {
    "type": "string"
   },
   "recordCount": {
    "type": "integer"
   }
  }
 },
 "example": {
  "ok": true,
  "asOf": "2026-07-14",
  "cards": [
   {
    "id": "CWA-06-2026-1792",
    "body": "CONSENT AGREEMENT AND FINAL ORDER. Class I Administrative Penalty Proceeding under Section 309(g) of the Clean Water Act.",
    "date": "2026-07-14",
    "title": "Complaint, Consent Agreement and Final Order",
    "docket": "CWA-06-2026-1792",
    "sourceUrl": "https://www.epa.gov/system/files/documents/2026-07/apache-feedyard_nmg010040_cwa0620261792_07142026.pdf",
    "institution": "Apache Feedyard"
   }
  ],
  "source": "https://yosemite.epa.gov/oa/rhc/epaadmin.nsf",
  "status": "ok",
  "product": "epa-cafo-letter-bodies",
  "records": [
   {
    "id": "CWA-06-2026-1792",
    "url": "https://www.epa.gov/system/files/documents/2026-07/apache-feedyard_nmg010040_cwa0620261792_07142026.pdf",
    "date": "2026-07-14",
    "firm": "Apache Feedyard",
    "type": "epa-cafo"
   }
  ],
  "fetchedAt": "2026-09-04T00:00:00.000Z",
  "recordCount": 1
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/epa-cafo-enforcement-letters-fe2f95e6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from ticks.bnm.farm](https://www.zero.xyz/host/ticks.bnm.farm/llms.txt)
