Water Restrictions

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/restrictions

Endpoints

Get all data

GET /api/v1/restrictions

Returns 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=colorado

Returns 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=denver

Returns a single city record under { city: {…} }. Returns 404 if the slug pair is unknown.

Filter by severity

GET /api/v1/restrictions?severity=emergency

Returns 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

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.