Check the Setup
- Python 3.10 or newer
- A notebook environment such as Jupyter or Google Colab
- An internet connection
SDWA public water-system inventory and compliance records for building local drinking-water system lookups.
Report a ProblemFrom Source to Product Signal
ECHO Drinking Water System Search services expose SDWIS/Fed inventory and compliance attributes for public water systems. Start with one state and JSON output. Do not use the web service as a bulk-download substitute, and do not treat these records as real-time water-quality measurements.
Install the packages, then run the notebook cell.
python -m pip install pandas requests
import pandas as pd
import requests
search_response = requests.get(
"https://echodata.epa.gov/echo/sdw_rest_services.get_systems",
params={"output": "JSON", "p_st": "RI", "p_act": "Y"},
timeout=30,
)
search_response.raise_for_status()
query_id = search_response.json()["Results"]["QueryID"]
systems_response = requests.get(
"https://echodata.epa.gov/echo/sdw_rest_services.get_qid",
params={"output": "JSON", "qid": query_id, "pageno": 1},
timeout=30,
)
systems_response.raise_for_status()
systems = pd.json_normalize(
systems_response.json()["Results"]["WaterSystems"]
)
systems["retrieved_at_utc"] = pd.Timestamp.now(tz="UTC")
print(systems.head(20))Test a Useful Signal
Count active Rhode Island public water systems in a bounded ECHO search and note compliance fields that are present.
U.S. Environmental Protection Agency is a government source. Last verified 2026-08-14. Temporal coverage: SDWIS/Fed records with weekly ECHO refreshes.