azsdwis.azdeq.gov APIazsdwis.azdeq.gov ↗
Access Arizona Safe Drinking Water Information System data: water systems, analytes, sample results, and CCR reports via 7 structured endpoints.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/075111a7-0e3d-4140-82e1-efebeab264a1/list_filters' \ -H 'X-API-Key: $PARSE_API_KEY'
List available search filters for water systems including counties, system types, source water types, and point of contact types.
No input parameters required.
{
"type": "object",
"fields": {
"counties": "array of county name strings",
"source_water_types": "array of source water type display names",
"water_system_types": "array of water system type display names",
"point_of_contact_types": "array of contact type display names"
},
"sample": {
"data": {
"counties": [
"All",
"APACHE",
"COCHISE",
"COCONINO",
"GILA",
"GRAHAM",
"GREENLEE",
"LA PAZ",
"MARICOPA",
"MOHAVE",
"NAVAJO",
"PIMA",
"PINAL",
"SANTA CRUZ",
"YAVAPAI",
"YUMA"
],
"source_water_types": [
"All",
"GroundWater",
"GroundWater Purchased",
"GroundWater UDI SurfaceWater",
"GroundWater UDI SurfaceWater Purchased",
"SurfaceWater",
"SurfaceWater Purchased"
],
"water_system_types": [
"All",
"Community",
"Non-Community",
"Non-Transient Non-Community"
],
"point_of_contact_types": [
"None",
"Administrative Contact",
"Emergency Contact",
"Owner",
"Lead Engineer",
"Operator",
"Financial Contact",
"Legal Contact",
"Designated Op in Charge",
"Sampling"
]
},
"status": "success"
}
}About the azsdwis.azdeq.gov API
The Arizona SDWIS API exposes public drinking water data from azsdwis.azdeq.gov across 7 endpoints, covering everything from statewide water system search to per-analyte historical sample results. The search_water_systems endpoint lets you query by name, county, system type, or source water type and returns system IDs needed to chain into detail, analyte, and sample-result calls.
What the API Covers
This API surfaces data from Arizona's Safe Drinking Water Information System (SDWIS), maintained by the Arizona Department of Environmental Quality (ADEQ). It covers public water systems (PWS) statewide — community, non-community, and non-transient non-community systems — along with their monitored contaminants, lab sample results, and Consumer Confidence Report (CCR) availability. The list_filters endpoint returns all valid enumerated values for county, system type, source water type, and point-of-contact type, which are the accepted inputs throughout the rest of the API.
Searching and Identifying Water Systems
search_water_systems accepts up to five optional filters — name (partial match), number (e.g. AZ0407025), county, source_type, and system_type — and returns an array of matching systems with fields including pws_id, federal_type, status, county, source_type, tinwsys_is_number, and tinwsys_st_code. The tinwsys_is_number value is the internal ID required by get_water_system_detail, get_water_system_analytes, and get_water_system_sample_results, so a search call is typically the first step in any workflow.
Analytes and Sample Results
get_water_system_analytes returns every contaminant monitored for a given system, including code, name, and analyte_id. Passing an analyte_id plus tinwsys_is_number to get_water_system_sample_results returns the full sample history for that contaminant, with fields for sample_type, date, sample_point, result, uom (unit of measure), and a less_than flag for non-detect readings. get_available_ccr_years takes a pws_id and returns which Consumer Confidence Report years are on file for that system.
Known Limitation
The get_glossary endpoint is documented in the API but currently returns an error because the corresponding page has been removed from the ADEQ site. All other endpoints return structured data. Coverage is limited to Arizona public water systems; no data from other states is included.
- Build a lookup tool that maps Arizona county names to their public water systems and current operational status.
- Track historical contaminant levels for a specific water system by chaining analyte and sample-result endpoints.
- Generate alerts when sample results for a regulated analyte exceed a threshold value across multiple systems.
- Compile a list of available Consumer Confidence Report years for all Community water systems in a given county.
- Identify all water systems using a specific source water type (e.g. GroundWater) across Arizona counties.
- Audit contact records for water systems by pulling operator and emergency contact data from the detail endpoint.
- Cross-reference federal_type and status fields to identify inactive or non-community water systems statewide.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.