f5a72ed18934
List EPA ECHO facilities
Per-facility EPA ECHO records for an employer.
Each row is one EPA-registered facility under this employer's (name_normalized, state, zip5) identity. Multi-site operators (e.g. Tyson with dozens of plants) will return multiple rows; the summary tile on the employer page rolls these up via epa_inspection_count, epa_formal_action_count, etc., and this endpoint backs those numbers with the underlying facility roster.
Columns surface the same dimensions ECHO does in its Detailed Facility Report -- permits held (air / water / RCRA / TRI), quarters of significant noncompliance, inspection count + last inspection date, formal enforcement actions, total penalties, geographic info (street, city, state, zip5, county, lat/long). Each row carries the EPA registry_id so callers can drill into https://echo.epa.gov/detailed-facility-report?fid=<registry_id> for the agency's authoritative record.
Lookup is by employer_id directly -- EPA's source data carries zip5 so the canonical deterministic UUID applies (sync.py builds the employer_id column at sync time). Ordered: noncompliant + higher-penalty facilities first, so the riskier facilities appear on the first page of results.
Metered: one lookup per call, same as the other detail endpoints. Default limit 50 (higher than other detail endpoints) because multi-state operators routinely have 20-100 facilities and one page should cover the typical case.
Path parameters
Query parameters
Headers
Response
Successful Response