Search Drinking Water Systems
epa_search_water_systemsRead-onlyIdempotent
Search drinking water systems (SDWIS) by state or ZIP code. Returns system name, PWSID, population served, primary water source, and activity status. With has_violation, returns only systems with an open violation — one SDWIS has not marked returned to compliance or closed out when the system was deactivated. At least one of state or zip_code is required.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of systems to return (1–200) | |
| state | No | 2-letter US state abbreviation (e.g. "WA", "CA") | |
| pws_type | No | Filter by public water system type: community=permanent residences, non-transient=regular non-residents (schools, businesses), transient=occasional users (campgrounds) | |
| zip_code | No | 5-digit ZIP code of the water system's address of record — often its owner's or operator's office, which can be far from the area the system serves | |
| has_violation | No | When true, return only systems with an open SDWIS violation (not yet returned to compliance). Works with state, zip_code, or both. |
Output Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| error | No | Present when the call failed. Absent on success. | |
| notice | No | Present when the has_violation check read only part of what it needed — the first 1,000 open violation records for the state, the first 1,000 systems in the ZIP, or the first 1,000 open violation records for a group of the ZIP’s systems — so violating systems outside that part may be missing from the results. | |
| message | No | Recovery hint when no systems are found. Absent when systems are returned. | |
| systems | No | Matching public water systems | |
| totalCount | No | Number of systems returned |