EPA ECHO Facility Compliance Tracker – Enforcement API
Pricing
Pay per usage
EPA ECHO Facility Compliance Tracker – Enforcement API
Structured feed of EPA ECHO regulated-facility compliance, violations, inspections and enforcement actions (Clean Air/Water/RCRA). For ESG analysts, environmental law firms and site-risk diligence.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
K O
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
EPA ECHO Facility Compliance & Enforcement Tracker – Environmental Compliance API
An EPA ECHO API and environmental-compliance data feed that pulls regulated-facility records from EPA's Enforcement and Compliance History Online service and normalizes each into a clean record: facility, location, compliance status, current violations, inspection and enforcement counts, and total penalties across Clean Air/Water and RCRA programs. Use it to build an environmental due-diligence tool, an ESG risk monitor, or a data feed for environmental law and site assessment.
Who uses it
Environmental law firms, ESG and sustainability analysts, real-estate and M&A due-diligence teams assessing site risk, insurers, and community/advocacy researchers.
Why this is worth charging for
A facility's environmental violation and penalty history is material to site value, liability and ESG scoring, but ECHO exposes it through a two-step query API with program-specific field names that differ by media. This actor handles the QueryID handshake, pagination and field normalization, delivering a clean facility-level compliance feed.
Output
Each dataset item is one normalized record:
{"registryId": "110000123456","facilityName": "Acme Chemical Plant","street": "1 Industrial Way","city": "Houston","state": "TX","zip": "77001","latitude": 29.76,"longitude": -95.36,"complianceStatus": "Significant Violation","inspectionCount": 4,"formalActionCount": 1,"penaltiesTotal": 25000,"naicsCodes": "325199","source": "EPA ECHO"}
Input
| Field | Description |
|---|---|
state | Filter facilities by state, e.g. TX. |
county | Filter by county name. |
zip | Filter by ZIP code. |
mediaProgram | Restrict to a single environmental program. |
violationsOnly | Only return facilities with current violations. |
pageSize | Facilities per page. |
maxPagesToScan | How many pages to page through per run. |
onlyNewSinceLastRun | Recommended for schedules — skips records already returned by a previous run using persisted state, so you're only charged for genuinely new items. |
maxItems | Stop after this many normalized records. |
Pricing (Pay-Per-Event)
query— $0.03, charged once per run for the API query/poll.facility-record— $0.02 per normalized record pushed. This is the primary event.apify-actor-start(Apify-managed) — covers baseline compute per run.
Screening a county or ZIP returns tens to hundreds of facilities in one run for a few dollars. Statewide pulls scale with pages scanned; scope with filters to control cost.
Source & reliability
Data comes from EPA's official echodata.epa.gov REST services via the documented get_facilities/get_qid two-step. Field names are normalized across media programs. No proxies required. Run npm test for the offline self-test covering the normalizer, including edge cases and missing-field handling.
FAQ
Is there an API for EPA compliance data?
Yes — this actor wraps EPA ECHO's REST services and returns clean, deduplicated facility compliance records via the Apify API, webhook or export.
Can I focus on one environmental program?
Yes. Set mediaProgram to AIR, CWA, RCRA or SDWA to restrict results to that program's facilities and status fields.
SEO keywords: EPA ECHO API, environmental compliance data, facility violation scraper, environmental due diligence API, EPA enforcement feed, ESG site risk data