API Documentation
Structured JSON data for US water restrictions — free, no API key required.
Overview
The Water Restrictions API provides free access to structured water restriction data for 260+ US cities. Every endpoint returns JSON with permissive CORS — call it directly from a browser, a server, a Cloudflare Worker, or a phone.
Base URL
https://water-restrictions.com/api/v1/restrictionsEndpoints
Get all data
GET /api/v1/restrictionsReturns every state and city record we track. Response shape: { meta, states[], cities[] }. The meta object includes counts and a server timestamp.
Filter by state
GET /api/v1/restrictions?state=coloradoReturns all cities in a state. The state parameter is the slug used in URLs (lowercase, hyphenated).
Filter by city
GET /api/v1/restrictions?state=colorado&city=denverReturns a single city record under { city: {…} }. Returns 404 if the slug pair is unknown.
Filter by severity
GET /api/v1/restrictions?severity=emergencyReturns all cities at the specified severity level. Allowed values: emergency, mandatory, voluntary, none.
Response format
Example: GET /api/v1/restrictions?state=colorado&city=denver
{
"city": {
"id": 1,
"slug": "denver",
"state_slug": "colorado",
"city": "Denver",
"state": "Colorado",
"state_abbr": "CO",
"phase": "Stage 1 Mandatory Drought",
"restriction": "2 Days/Week Assigned",
"severity_level": "mandatory",
"days_per_week": 2,
"allowed_days": "Single-family: 2 assigned days/week based on address",
"hours": "Not 10am-6pm",
"fine_first": "Written warning",
"fine_repeat": "Escalating fines",
"end_date": "October 1, 2026",
"authority": "Denver Water",
"authority_url": "https://denverwater.org",
"phone": "303-893-2444",
"date_published": "2026-03-25",
"date_modified": "2026-04-29"
}
}Rate limits
- Free tier: 100 requests per day per IP
- No API key required
- Higher limits or commercial use: contact@water-restrictions.com
Data freshness
Records are updated as restrictions change. The date_modified field on each record shows the last update. The meta.generated_at timestamp shows when the response was generated. Responses are cached for 5 minutes at the edge.
Terms of use
Free for personal use, research, and non-commercial applications. Attribution appreciated. For commercial licensing (smart irrigation, property management, HOA software): contact@water-restrictions.com.