{
 "dataset": "Des Moines, IA storm events — 12-month window, 25-mile radius plus Polk records (floods and special weather statements excluded, matching the city page)",
 "license": "https://www.stormauditor.com/data-license",
 "provenance": "Consolidated by StormAuditor from public NOAA/NWS records (warnings, Local Storm Reports, NCEI Storm Events) under the published methodology at https://www.stormauditor.com/methodology",
 "refreshed_at": "2026-09-20T10:10:20.982+00:00",
 "window_days": 365,
 "schema_version": "2.0.0",
 "event_count": 227,
 "fields": {
  "id": "stable event identifier (source-derived)",
  "date": "event date (YYYY-MM-DD, local storm day)",
  "county": "county or county-equivalent (may be blank)",
  "city": "place name from the source record (LSR names may carry a distance/direction prefix)",
  "zip": "ZIP code when the source provides one (may be blank)",
  "eventType": "hazard tag: wind | hail | tornado | flood | lightning",
  "severity": "StormAuditor severity bucket (low|moderate|high|severe)",
  "evidenceLevel": "evidence level of the source record (warning|observed|...)",
  "confidence": "StormAuditor confidence score for the record (0-1, may be absent)",
  "windSpeedMph": "reported/estimated wind gust, mph (absent if n/a)",
  "hailSizeInches": "reported/estimated hail size, inches (absent if n/a)",
  "tornadoScale": "EF-scale rating when the source provides one (absent if n/a)",
  "damageTypes": "damage tags from the source narrative (may be absent)",
  "description": "source narrative excerpt (may be absent)",
  "source": "originating public record (NWS warning, LSR, NCEI, ...)",
  "sourceDetail": "issuing office / product detail for the source (may be absent)",
  "originStation": "reporting station identifier when applicable (may be absent)",
  "warningProductKey": "NWS warning product key for warning-derived rows (may be absent)",
  "lat": "event latitude (WGS84, may be blank)",
  "lon": "event longitude (WGS84, may be blank)",
  "rawWindSpeedMph": "source-reported wind value before display screening, mph (may be absent)",
  "windSpeedDisclaimer": "set when the wind value is a warning-projected figure rather than a measurement (may be absent)"
 },
 "events": [
  {
   "id": "spc-2026-09-08-wind-41.83-2",
   "lat": 41.83,
   "lon": -93.8,
   "zip": "",
   "city": "3 SSE Madrid",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.93,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "wind reported near 3 SSE Madrid",
   "sourceDetail": "SPC filtered reports — 2026-09-08",
   "windSpeedMph": 74,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-09-08-wind-41.76-4",
   "lat": 41.76,
   "lon": -93.62,
   "zip": "",
   "city": "2 NW Ankeny",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 0.93,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "wind reported near 2 NW Ankeny",
   "sourceDetail": "SPC filtered reports — 2026-09-08",
   "windSpeedMph": 75,
   "evidenceLevel": "reported"
  },
  {
   "id": "nws-alert-ef7cd8aafaba52b4.001-Polk-wind",
   "zip": "",
   "city": "Polk",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Polk. Severe Thunderstorm Warning issued September 8 at 6:04PM CDT until September 8 at 6:30PM CDT by NWS Des Moines IA",
   "sourceDetail": "NWS Des Moines IA — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-333"
  },
  {
   "id": "iem-ww-DMX-SV-W-333-Polk-hail-2026-09-08",
   "zip": "",
   "city": "Polk",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX for Polk on 2026-09-08. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-333"
  },
  {
   "id": "spc-2026-09-08-hail-41.73-1",
   "lat": 41.73,
   "lon": -93.6,
   "zip": "",
   "city": "Ankeny",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near Ankeny",
   "sourceDetail": "SPC filtered reports — 2026-09-08",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.25
  },
  {
   "id": "iem-lsr-2026-09-08-hail-41.66--93.49",
   "lat": 41.66,
   "lon": -93.49,
   "zip": "",
   "city": "1 NW Altoona",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Time estimated.",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-lsr-2026-09-08-hail-41.74--93.55",
   "lat": 41.74,
   "lon": -93.55,
   "zip": "",
   "city": "2 E Ankeny",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Trained spotter reported largest hail around 1.5 inches and minor siding damage.",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-lsr-2026-09-08-hail-41.70--93.48",
   "lat": 41.7,
   "lon": -93.48,
   "zip": "",
   "city": "1 NW Bondurant",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Half Dollar (1.25 in.).",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-09-08-hail-41.70--93.54",
   "lat": 41.7,
   "lon": -93.54,
   "zip": "",
   "city": "4 SE Ankeny",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed public photo of a hailstone estimated at half dollar sized. Time and location also estimated.",
   "sourceDetail": "NWS DMX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "spc-2026-09-08-hail-41.70-2",
   "lat": 41.7,
   "lon": -93.48,
   "zip": "",
   "city": "1 NW Bondurant",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near 1 NW Bondurant",
   "sourceDetail": "SPC filtered reports — 2026-09-08",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-09-08-hail-41.66--93.36",
   "lat": 41.66,
   "lon": -93.36,
   "zip": "",
   "city": "Mitchellville",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Picture sent in via social media.",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-09-08-hail-41.66--93.36",
   "lat": 41.66,
   "lon": -93.36,
   "zip": "",
   "city": "Mitchellville",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Ping Pong Ball (1.50 in.).",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-lsr-2026-09-08-wind-41.77--93.58",
   "lat": 41.77,
   "lon": -93.58,
   "zip": "",
   "city": "3 NNE Ankeny",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NNE Ankeny",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-09-08-wind-41.76--93.57",
   "lat": 41.76,
   "lon": -93.57,
   "zip": "",
   "city": "3 NE Ankeny",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Ankeny RWIS site measured a 71 MPH gust.",
   "sourceDetail": "NWS DMX — Other Federal via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-09-08-wind-41.53--93.66",
   "lat": 41.53,
   "lon": -93.66,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Des Moines Int Airport",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-DSM-2026-09-08-172562",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 66 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM)",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "nws-alert-f8f69fa7a7fa286f.001-Polk-wind",
   "zip": "",
   "city": "Polk",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Polk. Severe Thunderstorm Warning issued September 8 at 6:55PM CDT until September 8 at 7:45PM CDT by NWS Des Moines IA",
   "sourceDetail": "NWS Des Moines IA — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-335"
  },
  {
   "id": "iem-ww-DMX-SV-W-335-Polk-hail-2026-09-08",
   "zip": "",
   "city": "Polk",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX for Polk on 2026-09-08. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-335"
  },
  {
   "id": "iem-ww-DMX-SV-W-334-Polk-wind-2026-09-08",
   "zip": "",
   "city": "Polk",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX for Polk on 2026-09-08. Storm tag wind: 70 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-334"
  },
  {
   "id": "iem-ww-DMX-SV-W-334-Polk-hail-2026-09-08",
   "zip": "",
   "city": "Polk",
   "date": "2026-09-08",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX for Polk on 2026-09-08. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-334"
  },
  {
   "id": "nws-alert-ae77d386898752dd.001-Polk-wind-2026-09-06",
   "zip": "",
   "city": "",
   "date": "2026-09-06",
   "county": "Polk",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Polk. Severe Thunderstorm Watch issued September 6 at 4:45PM CDT until September 6 at 10:00PM CDT by NWS Des Moines IA",
   "sourceDetail": "NWS Des Moines IA — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-A-661"
  },
  {
   "id": "iem-lsr-2026-08-13-wind-41.84--93.64",
   "lat": 41.84,
   "lon": -93.64,
   "zip": "",
   "city": "2 NW Alleman",
   "date": "2026-08-13",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured from personal weather station.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-08-13-wind-41.74--93.76",
   "lat": 41.74,
   "lon": -93.76,
   "zip": "",
   "city": "3 SW Polk City",
   "date": "2026-08-13",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured from personal weather station.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "nws-alert-ac11fe26aec85923.002-Polk-wind",
   "zip": "",
   "city": "Polk",
   "date": "2026-08-13",
   "county": "Polk",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Polk. Severe Thunderstorm Warning issued August 13 at 7:00AM CDT until August 13 at 7:15AM CDT by NWS Des Moines IA",
   "sourceDetail": "NWS Des Moines IA — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-322"
  },
  {
   "id": "iem-ww-DMX-SV-W-322-Polk-hail-2026-08-13",
   "zip": "",
   "city": "Polk",
   "date": "2026-08-13",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Polk. Max hail tag: 0.75\".",
   "sourceDetail": "NWS DMX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-322"
  },
  {
   "id": "iem-ww-DMX-SV-W-321-Polk-wind-2026-08-13",
   "zip": "",
   "city": "Polk",
   "date": "2026-08-13",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Polk. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DMX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-321"
  },
  {
   "id": "iem-ww-DMX-SV-W-321-Polk-hail-2026-08-13",
   "zip": "",
   "city": "Polk",
   "date": "2026-08-13",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Polk. Max hail tag: 0.75\".",
   "sourceDetail": "NWS DMX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-321"
  },
  {
   "id": "nws-alert-8ef1c641b2dffd6f.001-Polk-tornado",
   "zip": "",
   "city": "Polk",
   "date": "2026-08-13",
   "county": "Polk",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Polk (observed tornado). Tornado Warning issued August 13 at 7:12AM CDT until August 13 at 7:15AM CDT by NWS Des Moines IA",
   "sourceDetail": "NWS Des Moines IA — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DMX-TO-W-78"
  },
  {
   "id": "spc-2026-08-12-wind-41.84-160",
   "lat": 41.84,
   "lon": -93.64,
   "zip": "",
   "city": "2 NW Alleman",
   "date": "2026-08-12",
   "county": "Polk",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.93,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "wind reported near 2 NW Alleman",
   "sourceDetail": "SPC filtered reports — 2026-08-12",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "nws-alert-9999ceb0f7822989.001-Polk-wind",
   "zip": "",
   "city": "Polk",
   "date": "2026-08-07",
   "county": "Polk",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Polk. Severe Thunderstorm Watch issued August 7 at 1:41PM CDT until August 7 at 10:00PM CDT by NWS Des Moines IA",
   "sourceDetail": "NWS Des Moines IA — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-A-541"
  },
  {
   "id": "iem-202607210033-hail-41.78--93.59",
   "lat": 41.78,
   "lon": -93.59,
   "zip": "",
   "city": "3 SSE Alleman",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 SSE Alleman, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607210207-hail-41.57--93.75",
   "lat": 41.57,
   "lon": -93.75,
   "zip": "",
   "city": "West Des Moines",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near West Des Moines, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607210213-hail-41.59--93.84",
   "lat": 41.59,
   "lon": -93.84,
   "zip": "",
   "city": "2 SE Waukee",
   "date": "2026-07-20",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 SE Waukee, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-20-wind-41.74--93.64",
   "lat": 41.74,
   "lon": -93.64,
   "zip": "",
   "city": "2 W Ankeny",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured from personal weather station.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-07-20-55-0035",
   "lat": 41.69,
   "lon": -93.4,
   "zip": "",
   "city": "Mitchellville",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "measured from personal weather station. (DMX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-07-20-56-0101",
   "lat": 41.38,
   "lon": -93.4,
   "zip": "",
   "city": "Sandyville",
   "date": "2026-07-20",
   "county": "Warren",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(DMX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-DMX-SV-W-296-2026-07-20-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 43 min. Counties: Dallas, Madison, Polk, Warren. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #296 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-296"
  },
  {
   "id": "ww-DMX-SV-W-296-2026-07-20-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 43 min. Counties: Dallas, Madison, Polk, Warren. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #296 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "DMX-SV-W-296"
  },
  {
   "id": "ww-DMX-SV-W-295-2026-07-20-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 17 min. Counties: Dallas, Madison, Polk, Warren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #295 (17 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-295"
  },
  {
   "id": "ww-DMX-SV-W-295-2026-07-20-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 17 min. Counties: Dallas, Madison, Polk, Warren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #295 (17 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-295"
  },
  {
   "id": "ww-DMX-SV-W-294-2026-07-20-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 37 min. Counties: Dallas, Madison, Polk, Warren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #294 (37 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-294"
  },
  {
   "id": "ww-DMX-SV-W-294-2026-07-20-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 37 min. Counties: Dallas, Madison, Polk, Warren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #294 (37 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-294"
  },
  {
   "id": "ww-DMX-SV-W-290-2026-07-20-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 43 min. Counties: Jasper, Polk, Boone, Story. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #290 (43 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-290"
  },
  {
   "id": "ww-DMX-SV-W-290-2026-07-20-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 43 min. Counties: Jasper, Polk, Boone, Story. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #290 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-290"
  },
  {
   "id": "ww-DMX-SV-W-291-2026-07-20-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 49 min. Counties: Jasper, Marion, Polk, Warren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #291 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-291"
  },
  {
   "id": "ww-DMX-SV-W-291-2026-07-20-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 49 min. Counties: Jasper, Marion, Polk, Warren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #291 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-291"
  },
  {
   "id": "ww-DMX-SV-W-292-2026-07-20-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 45 min. Counties: Jasper, Polk, Warren, Marion. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #292 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-292"
  },
  {
   "id": "ww-DMX-SV-W-292-2026-07-20-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-20. Duration: 45 min. Counties: Jasper, Polk, Warren, Marion. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #292 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-292"
  },
  {
   "id": "iem-202607210018-wind-41.74--93.64",
   "lat": 41.74,
   "lon": -93.64,
   "zip": "",
   "city": "2 W Ankeny",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 W Ankeny, IA. Peak gust: 67 mph.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607210035-wind-41.69--93.40",
   "lat": 41.69,
   "lon": -93.4,
   "zip": "",
   "city": "3 NW Mitchellville",
   "date": "2026-07-20",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NW Mitchellville, IA. Peak gust: 70 mph.",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607210101-wind-41.38--93.40",
   "lat": 41.38,
   "lon": -93.4,
   "zip": "",
   "city": "1 NW Sandyville",
   "date": "2026-07-20",
   "county": "Warren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 NW Sandyville, IA. Peak gust: 70 mph.",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-21T01:07:00Z-wind-41.39--93.27",
   "lat": 41.39,
   "lon": -93.27,
   "zip": "",
   "city": "Pleasantville",
   "date": "2026-07-20",
   "county": "Marion",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND DMG reported near Pleasantville, IA. Peak gust: 60 mph. Caller reports multiple trees down with a wind gust of 60 mph.",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-04-wind-41.51--93.51",
   "lat": 41.51,
   "lon": -93.51,
   "zip": "",
   "city": "1 WNW Carlisle",
   "date": "2026-07-04",
   "county": "Warren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "PWS gust.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-04-wind-41.54--93.66",
   "lat": 41.54,
   "lon": -93.66,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-07-04",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Des Moines Int Airport",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DMX-SV-W-264-2026-07-04-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-04",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-04. Duration: 45 min. Counties: Warren, Polk. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #264 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-264"
  },
  {
   "id": "ww-DMX-SV-W-264-2026-07-04-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-04",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-04. Duration: 45 min. Counties: Warren, Polk. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #264 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-264"
  },
  {
   "id": "ww-DMX-SV-W-263-2026-07-04-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-04",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-04. Duration: 29 min. County: Polk. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #263 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-263"
  },
  {
   "id": "ww-DMX-SV-W-263-2026-07-04-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-04",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-04. Duration: 29 min. County: Polk. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #263 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-263"
  },
  {
   "id": "asos-bf-DSM-2026-07-04",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-07-04",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 58 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607040710-wind-41.51--93.51",
   "lat": 41.51,
   "lon": -93.51,
   "zip": "",
   "city": "1 WNW Carlisle",
   "date": "2026-07-04",
   "county": "Warren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 WNW Carlisle, IA. Peak gust: 67 mph.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607040713-wind-41.54--93.66",
   "lat": 41.54,
   "lon": -93.66,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-07-04",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Des Moines Int Airport, IA. Peak gust: 67 mph.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-07-03-99-0710",
   "lat": 41.51,
   "lon": -93.51,
   "zip": "",
   "city": "Carlisle",
   "date": "2026-07-03",
   "county": "Warren",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "PWS gust. (DMX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-07-03-100-0713",
   "lat": 41.54,
   "lon": -93.66,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-07-03",
   "county": "Polk",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(DMX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607022126-hail-41.61--93.69",
   "lat": 41.61,
   "lon": -93.69,
   "zip": "",
   "city": "1 NE Windsor Heights",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NE Windsor Heights, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607022127-hail-41.60--93.70",
   "lat": 41.6,
   "lon": -93.7,
   "zip": "",
   "city": "1 SE Windsor Heights",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SE Windsor Heights, IA. Hail size: 1.25\".",
   "sourceDetail": "NWS DMX — CO-OP Observer via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202607022135-hail-41.63--93.70",
   "lat": 41.63,
   "lon": -93.7,
   "zip": "",
   "city": "2 NNE Windsor Heights",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NNE Windsor Heights, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607022137-hail-41.64--93.70",
   "lat": 41.64,
   "lon": -93.7,
   "zip": "",
   "city": "2 E Urbandale",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 E Urbandale, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607022140-hail-41.64--93.66",
   "lat": 41.64,
   "lon": -93.66,
   "zip": "",
   "city": "3 NE Windsor Heights",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 NE Windsor Heights, IA. Hail size: 1.5\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202607022225-hail-41.82--93.78",
   "lat": 41.82,
   "lon": -93.78,
   "zip": "",
   "city": "4 NW Polk City",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 NW Polk City, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-DMX-SV-W-253-2026-07-02-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 25 min. Counties: Boone, Hamilton, Story, Webster, Jasper, Marshall, Polk. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #253 (25 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-253"
  },
  {
   "id": "ww-DMX-SV-W-253-2026-07-02-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 25 min. Counties: Boone, Hamilton, Story, Webster, Jasper, Marshall, Polk. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #253 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-253"
  },
  {
   "id": "ww-DMX-SV-W-258-2026-07-02-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 32 min. Counties: Boone, Story, Polk. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #258 (32 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-258"
  },
  {
   "id": "ww-DMX-SV-W-258-2026-07-02-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 32 min. Counties: Boone, Story, Polk. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #258 (32 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DMX-SV-W-258"
  },
  {
   "id": "ww-DMX-SV-W-260-2026-07-02-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 20 min. Counties: Jasper, Marshall, Polk, Story. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #260 (20 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-260"
  },
  {
   "id": "ww-DMX-SV-W-260-2026-07-02-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 20 min. Counties: Jasper, Marshall, Polk, Story. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #260 (20 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-260"
  },
  {
   "id": "ww-DMX-SV-W-261-2026-07-02-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 23 min. County: Polk. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #261 (23 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-261"
  },
  {
   "id": "ww-DMX-SV-W-261-2026-07-02-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 23 min. County: Polk. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #261 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-261"
  },
  {
   "id": "ww-DMX-SV-W-259-2026-07-02-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 30 min. Counties: Polk, Story. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #259 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-259"
  },
  {
   "id": "ww-DMX-SV-W-259-2026-07-02-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 30 min. Counties: Polk, Story. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #259 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-259"
  },
  {
   "id": "ww-DMX-SV-W-257-2026-07-02-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 44 min. Counties: Polk, Story, Dallas, Boone. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #257 (44 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-257"
  },
  {
   "id": "ww-DMX-SV-W-257-2026-07-02-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-07-02. Duration: 44 min. Counties: Polk, Story, Dallas, Boone. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #257 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-257"
  },
  {
   "id": "fema-4942-Polk",
   "zip": "",
   "city": "Polk",
   "date": "2026-07-01",
   "county": "Polk",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS AND FLOODING",
   "sourceDetail": "FEMA DR-4942: SEVERE STORMS AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ww-DMX-SV-W-235-2026-06-17-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-17",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-06-17. Duration: 41 min. Counties: Franklin, Jasper, Marshall, Polk, Boone, Story. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #235 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-235"
  },
  {
   "id": "ww-DMX-SV-W-235-2026-06-17-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-17",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-06-17. Duration: 41 min. Counties: Franklin, Jasper, Marshall, Polk, Boone, Story. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #235 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DMX-SV-W-235"
  },
  {
   "id": "ww-DMX-SV-W-210-2026-06-11-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-06-11. Duration: 20 min. Counties: Madison, Boone, Dallas, Greene, Guthrie, Polk, Decatur, Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #210 (20 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-210"
  },
  {
   "id": "ww-DMX-SV-W-210-2026-06-11-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-06-11. Duration: 20 min. Counties: Madison, Boone, Dallas, Greene, Guthrie, Polk, Decatur, Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #210 (20 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-210"
  },
  {
   "id": "iem-ww-DMX-TO-W-66-Polk-tornado-2026-06-11",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-11",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Polk.",
   "sourceDetail": "NWS DMX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-TO-W-66"
  },
  {
   "id": "asos-bf-DSM-2026-06-11",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-06-11",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 50 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-DMX-SV-W-214-Polk-wind-2026-06-11",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-11",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Polk. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DMX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-214"
  },
  {
   "id": "iem-ww-DMX-SV-W-214-Polk-hail-2026-06-11",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-11",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Polk. Max hail tag: 1\".",
   "sourceDetail": "NWS DMX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-214"
  },
  {
   "id": "iem-ww-DMX-SV-W-218-Polk-wind-2026-06-11",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-11",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Polk. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DMX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-218"
  },
  {
   "id": "iem-ww-DMX-SV-W-218-Polk-hail-2026-06-11",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-11",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Polk. Max hail tag: 0.88\".",
   "sourceDetail": "NWS DMX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DMX-SV-W-218"
  },
  {
   "id": "iem-ww-DMX-SV-W-205-Polk-wind-2026-06-10",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-10",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Polk. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DMX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-205"
  },
  {
   "id": "iem-ww-DMX-SV-W-205-Polk-hail-2026-06-10",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-10",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Polk. Max hail tag: 0.75\".",
   "sourceDetail": "NWS DMX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-205"
  },
  {
   "id": "iem-ww-DMX-SV-W-195-Polk-wind-2026-06-06",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-06",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Polk. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DMX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-195"
  },
  {
   "id": "iem-ww-DMX-SV-W-195-Polk-hail-2026-06-06",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-06",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Polk. Max hail tag: 1\".",
   "sourceDetail": "NWS DMX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-195"
  },
  {
   "id": "iem-ww-DMX-SV-W-194-Polk-wind-2026-06-06",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-06",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Polk. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DMX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-194"
  },
  {
   "id": "iem-ww-DMX-SV-W-194-Polk-hail-2026-06-06",
   "zip": "",
   "city": "Polk",
   "date": "2026-06-06",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Polk. Max hail tag: 0.75\".",
   "sourceDetail": "NWS DMX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-194"
  },
  {
   "id": "iem-202606060302-hail-41.39--93.27",
   "lat": 41.39,
   "lon": -93.27,
   "zip": "",
   "city": "Pleasantville",
   "date": "2026-06-05",
   "county": "Marion",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Pleasantville, IA. Hail size: 1.75\".",
   "sourceDetail": "NWS DMX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-202606060356-hail-41.39--93.28",
   "lat": 41.39,
   "lon": -93.28,
   "zip": "",
   "city": "1 WSW Pleasantville",
   "date": "2026-06-05",
   "county": "Marion",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 WSW Pleasantville, IA. Hail size: 1.5\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "spc-2026-06-05-397-0311",
   "lat": 41.37,
   "lon": -93.36,
   "zip": "",
   "city": "Sandyville",
   "date": "2026-06-05",
   "county": "Warren",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Received text message from trained spotter of 63mph gust on PWS. (DMX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 63,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202606060255-hail-41.39--93.27",
   "lat": 41.39,
   "lon": -93.27,
   "zip": "",
   "city": "Pleasantville",
   "date": "2026-06-05",
   "county": "Marion",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Pleasantville, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606060300-hail-41.39--93.27",
   "lat": 41.39,
   "lon": -93.27,
   "zip": "",
   "city": "Pleasantville",
   "date": "2026-06-05",
   "county": "Marion",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Pleasantville, IA. Hail size: 2\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202606060311-wind-41.37--93.36",
   "lat": 41.37,
   "lon": -93.36,
   "zip": "",
   "city": "2 E Sandyville",
   "date": "2026-06-05",
   "county": "Warren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 E Sandyville, IA. Peak gust: 72 mph.",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-05-hail-41.39--93.26",
   "lat": 41.39,
   "lon": -93.26,
   "zip": "",
   "city": "Pleasantville",
   "date": "2026-06-05",
   "county": "Marion",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Received phone call from trained spotter reporting golf ball sized hail in Pleasantville.",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "ww-DMX-SV-W-179-2026-05-18-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-05-18. Duration: 52 min. Counties: Jasper, Marshall, Polk, Story. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #179 (52 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-179"
  },
  {
   "id": "ww-DMX-SV-W-179-2026-05-18-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-05-18. Duration: 52 min. Counties: Jasper, Marshall, Polk, Story. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #179 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DMX-SV-W-179"
  },
  {
   "id": "ww-DMX-SV-W-178-2026-05-18-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-05-18. Duration: 49 min. Counties: Warren, Jasper, Polk. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #178 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-178"
  },
  {
   "id": "ww-DMX-SV-W-178-2026-05-18-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-05-18. Duration: 49 min. Counties: Warren, Jasper, Polk. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #178 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DMX-SV-W-178"
  },
  {
   "id": "iem-ww-DMX-TO-W-50-Polk-tornado-2026-05-18",
   "zip": "",
   "city": "Polk",
   "date": "2026-05-18",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Polk.",
   "sourceDetail": "NWS DMX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-TO-W-50"
  },
  {
   "id": "asos-bf-DSM-2026-05-18",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-05-18",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 57 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DMX-SV-W-175-2026-05-17-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-05-17. Duration: 24 min. Counties: Madison, Polk, Warren, Adair, Dallas, Guthrie. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #175 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-175"
  },
  {
   "id": "ww-DMX-SV-W-175-2026-05-17-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-05-17. Duration: 24 min. Counties: Madison, Polk, Warren, Adair, Dallas, Guthrie. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #175 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-175"
  },
  {
   "id": "asos-bf-DSM-2026-05-16",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-05-16",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 53 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DSM-2026-05-15",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-05-15",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 52 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604240108-hail-41.69--93.61",
   "lat": 41.69,
   "lon": -93.61,
   "zip": "",
   "city": "1 NE Saylorville",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NE Saylorville, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-23-wind-41.54--93.66",
   "lat": 41.54,
   "lon": -93.66,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Des Moines Int Airport",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-24T00:33:00Z-tornado-41.89--93.66",
   "lat": 41.89,
   "lon": -93.66,
   "zip": "",
   "city": "2 ENE Slater",
   "date": "2026-04-23",
   "county": "Story",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 2 ENE Slater, IA. Several reports from local fire department and spotters of tornado on the ground.",
   "sourceDetail": "NWS DMX — Fire Dept/Rescue via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-24T01:25:00Z-tornado-41.60--93.36",
   "lat": 41.6,
   "lon": -93.36,
   "zip": "",
   "city": "4 S Mitchellville",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 4 S Mitchellville, IA. Trained spotter reports tornado on the ground.",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-DMX-SV-W-121-2026-04-23-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-23. Duration: 66 min. Counties: Jasper, Marion, Polk, Warren. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #121 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-121"
  },
  {
   "id": "ww-DMX-SV-W-121-2026-04-23-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-23. Duration: 66 min. Counties: Jasper, Marion, Polk, Warren. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #121 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-121"
  },
  {
   "id": "ww-DMX-SV-W-118-2026-04-23-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-23. Duration: 40 min. Counties: Boone, Dallas, Jasper, Madison, Polk, Story, Warren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #118 (40 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-118"
  },
  {
   "id": "ww-DMX-SV-W-118-2026-04-23-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-23. Duration: 40 min. Counties: Boone, Dallas, Jasper, Madison, Polk, Story, Warren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #118 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-118"
  },
  {
   "id": "ww-DMX-SV-W-116-2026-04-23-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-23. Duration: 56 min. Counties: Warren, Adair, Boone, Dallas, Guthrie, Madison, Polk, Story. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #116 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-116"
  },
  {
   "id": "ww-DMX-SV-W-116-2026-04-23-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-23. Duration: 56 min. Counties: Warren, Adair, Boone, Dallas, Guthrie, Madison, Polk, Story. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #116 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-116"
  },
  {
   "id": "iem-ww-DMX-TO-W-21-Polk-tornado-2026-04-23",
   "zip": "",
   "city": "Polk",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Polk.",
   "sourceDetail": "NWS DMX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-TO-W-21"
  },
  {
   "id": "iem-ww-DMX-TO-W-27-Polk-tornado-2026-04-23",
   "zip": "",
   "city": "Polk",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Polk.",
   "sourceDetail": "NWS DMX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-TO-W-27"
  },
  {
   "id": "iem-ww-DMX-TO-W-24-Polk-tornado-2026-04-23",
   "zip": "",
   "city": "Polk",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Polk.",
   "sourceDetail": "NWS DMX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-TO-W-24"
  },
  {
   "id": "iem-ww-DMX-TO-W-25-Polk-tornado-2026-04-23",
   "zip": "",
   "city": "Polk",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Polk.",
   "sourceDetail": "NWS DMX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-TO-W-25"
  },
  {
   "id": "asos-bf-DSM-2026-04-23",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 59 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604240100-wind-41.54--93.66",
   "lat": 41.54,
   "lon": -93.66,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-04-23",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Des Moines Int Airport, IA. Peak gust: 68 mph.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604171858-hail-41.73--93.60",
   "lat": 41.73,
   "lon": -93.6,
   "zip": "",
   "city": "Ankeny",
   "date": "2026-04-17",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Ankeny, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202604171901-hail-41.48--93.76",
   "lat": 41.48,
   "lon": -93.76,
   "zip": "",
   "city": "Cumming",
   "date": "2026-04-17",
   "county": "Warren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Cumming, IA. Hail size: 1.25\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202604171904-hail-41.65--93.60",
   "lat": 41.65,
   "lon": -93.6,
   "zip": "",
   "city": "3 SE Saylorville",
   "date": "2026-04-17",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 SE Saylorville, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202604171905-hail-41.68--93.57",
   "lat": 41.68,
   "lon": -93.57,
   "zip": "",
   "city": "3 E Saylorville",
   "date": "2026-04-17",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 E Saylorville, IA. Hail size: 1.25\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202604171911-hail-41.58--93.62",
   "lat": 41.58,
   "lon": -93.62,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-04-17",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Des Moines, IA. Hail size: 1.5\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202604171926-hail-41.62--93.39",
   "lat": 41.62,
   "lon": -93.39,
   "zip": "",
   "city": "3 SSW Mitchellville",
   "date": "2026-04-17",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 SSW Mitchellville, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202604171940-hail-41.71--93.24",
   "lat": 41.71,
   "lon": -93.24,
   "zip": "",
   "city": "2 N Colfax",
   "date": "2026-04-17",
   "county": "Jasper",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 N Colfax, IA. Hail size: 1.5\".",
   "sourceDetail": "NWS DMX — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202604171940-hail-41.68--93.24",
   "lat": 41.68,
   "lon": -93.24,
   "zip": "",
   "city": "Colfax",
   "date": "2026-04-17",
   "county": "Jasper",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Colfax, IA. Hail size: 1.5\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202604171941-hail-41.72--93.25",
   "lat": 41.72,
   "lon": -93.25,
   "zip": "",
   "city": "3 N Colfax",
   "date": "2026-04-17",
   "county": "Jasper",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 N Colfax, IA. Hail size: 1.25\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202604172325-hail-41.63--93.89",
   "lat": 41.63,
   "lon": -93.89,
   "zip": "",
   "city": "2 NW Waukee",
   "date": "2026-04-17",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NW Waukee, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202604172326-hail-41.61--93.88",
   "lat": 41.61,
   "lon": -93.88,
   "zip": "",
   "city": "1 W Waukee",
   "date": "2026-04-17",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Waukee, IA. Hail size: 0.88\".",
   "sourceDetail": "NWS DMX — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202604172326-hail-41.62--93.85",
   "lat": 41.62,
   "lon": -93.85,
   "zip": "",
   "city": "1 NE Waukee",
   "date": "2026-04-17",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NE Waukee, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-DMX-SV-W-79-2026-04-17-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-17. Duration: 48 min. Counties: Jasper, Polk, Marshall, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #79 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-79"
  },
  {
   "id": "ww-DMX-SV-W-79-2026-04-17-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-17. Duration: 48 min. Counties: Jasper, Polk, Marshall, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #79 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-79"
  },
  {
   "id": "ww-DMX-SV-W-80-2026-04-17-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-17. Duration: 29 min. Counties: Madison, Dallas, Warren, Polk. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #80 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-80"
  },
  {
   "id": "ww-DMX-SV-W-80-2026-04-17-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-17. Duration: 29 min. Counties: Madison, Dallas, Warren, Polk. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #80 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-80"
  },
  {
   "id": "iem-202604152115-hail-41.66--93.76",
   "lat": 41.66,
   "lon": -93.76,
   "zip": "",
   "city": "2 WSW Johnston",
   "date": "2026-04-15",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 WSW Johnston, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202604152139-hail-41.40--94.02",
   "lat": 41.4,
   "lon": -94.02,
   "zip": "",
   "city": "4 N Winterset",
   "date": "2026-04-15",
   "county": "Madison",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 N Winterset, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202604152205-hail-41.53--93.60",
   "lat": 41.53,
   "lon": -93.6,
   "zip": "",
   "city": "3 E Des Moines Int Airp",
   "date": "2026-04-15",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 E Des Moines Int Airp, IA. Hail size: 0.88\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202604160129-hail-41.88--93.82",
   "lat": 41.88,
   "lon": -93.82,
   "zip": "",
   "city": "Madrid",
   "date": "2026-04-15",
   "county": "Boone",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Madrid, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202604160152-hail-41.52--94.07",
   "lat": 41.52,
   "lon": -94.07,
   "zip": "",
   "city": "3 NE Earlham",
   "date": "2026-04-15",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 NE Earlham, IA. Hail size: 0.75\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "ww-DMX-SV-W-62-2026-04-15-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-15. Duration: 13 min. Counties: Jasper, Polk. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #62 (13 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-62"
  },
  {
   "id": "ww-DMX-SV-W-62-2026-04-15-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-15. Duration: 13 min. Counties: Jasper, Polk. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #62 (13 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-62"
  },
  {
   "id": "ww-DMX-SV-W-52-2026-04-15-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-15. Duration: 40 min. Counties: Jasper, Polk, Story. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #52 (40 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-52"
  },
  {
   "id": "ww-DMX-SV-W-52-2026-04-15-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-15. Duration: 40 min. Counties: Jasper, Polk, Story. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #52 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DMX-SV-W-52"
  },
  {
   "id": "ww-DMX-SV-W-74-2026-04-15-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-15. Duration: 59 min. Counties: Boone, Dallas, Marshall, Polk, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #74 (59 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-74"
  },
  {
   "id": "ww-DMX-SV-W-74-2026-04-15-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-15. Duration: 59 min. Counties: Boone, Dallas, Marshall, Polk, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #74 (59 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-74"
  },
  {
   "id": "asos-bf-DSM-2026-04-08",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-04-08",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 52 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DMX-SV-W-15-2026-04-02-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-02. Duration: 41 min. Counties: Jasper, Marion, Polk, Warren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #15 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-15"
  },
  {
   "id": "ww-DMX-SV-W-15-2026-04-02-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-04-02. Duration: 41 min. Counties: Jasper, Marion, Polk, Warren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #15 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DMX-SV-W-15"
  },
  {
   "id": "iem-202603310249-hail-41.73--94.03",
   "lat": 41.73,
   "lon": -94.03,
   "zip": "",
   "city": "2 S Minburn",
   "date": "2026-03-30",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 S Minburn, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310312-hail-41.68--93.75",
   "lat": 41.68,
   "lon": -93.75,
   "zip": "",
   "city": "1 WNW Johnston",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 WNW Johnston, IA. Hail size: 0.75\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202603310316-hail-41.74--93.64",
   "lat": 41.74,
   "lon": -93.64,
   "zip": "",
   "city": "2 W Ankeny",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 W Ankeny, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310317-hail-41.73--93.60",
   "lat": 41.73,
   "lon": -93.6,
   "zip": "",
   "city": "Ankeny",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Ankeny, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Amateur Radio via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310320-hail-41.77--93.58",
   "lat": 41.77,
   "lon": -93.58,
   "zip": "",
   "city": "3 NNE Ankeny",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 NNE Ankeny, IA. Hail size: 0.75\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202603310334-hail-41.61--93.86",
   "lat": 41.61,
   "lon": -93.86,
   "zip": "",
   "city": "Waukee",
   "date": "2026-03-30",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Waukee, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310334-hail-41.61--93.88",
   "lat": 41.61,
   "lon": -93.88,
   "zip": "",
   "city": "1 W Waukee",
   "date": "2026-03-30",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Waukee, IA. Hail size: 1.25\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202603310335-hail-41.59--93.85",
   "lat": 41.59,
   "lon": -93.85,
   "zip": "",
   "city": "1 SSE Waukee",
   "date": "2026-03-30",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SSE Waukee, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310345-hail-41.63--93.70",
   "lat": 41.63,
   "lon": -93.7,
   "zip": "",
   "city": "2 NNE Windsor Heights",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NNE Windsor Heights, IA. Hail size: 1\".",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-DMX-SV-W-9-2026-03-30-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 39 min. Counties: Polk, Dallas. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #9 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-9"
  },
  {
   "id": "ww-DMX-SV-W-9-2026-03-30-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 39 min. Counties: Polk, Dallas. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #9 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-9"
  },
  {
   "id": "ww-DMX-SV-W-8-2026-03-30-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 67 min. Counties: Jasper, Boone, Dallas, Marshall, Polk, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #8 (67 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-8"
  },
  {
   "id": "ww-DMX-SV-W-8-2026-03-30-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 67 min. Counties: Jasper, Boone, Dallas, Marshall, Polk, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #8 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-8"
  },
  {
   "id": "ww-DMX-SV-W-10-2026-03-30-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 42 min. Counties: Jasper, Tama, Marshall, Polk, Poweshiek, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #10 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-10"
  },
  {
   "id": "ww-DMX-SV-W-10-2026-03-30-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 42 min. Counties: Jasper, Tama, Marshall, Polk, Poweshiek, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #10 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-10"
  },
  {
   "id": "ww-DMX-SV-W-5-2026-03-30-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 27 min. Counties: Dallas, Polk, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #5 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-5"
  },
  {
   "id": "ww-DMX-SV-W-5-2026-03-30-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 27 min. Counties: Dallas, Polk, Story. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #5 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-5"
  },
  {
   "id": "ww-DMX-SV-W-7-2026-03-30-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 49 min. Counties: Dallas, Guthrie, Polk, Greene, Boone. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #7 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-7"
  },
  {
   "id": "ww-DMX-SV-W-7-2026-03-30-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-30. Duration: 49 min. Counties: Dallas, Guthrie, Polk, Greene, Boone. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #7 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DMX-SV-W-7"
  },
  {
   "id": "iem-202603310315-hail-41.74--93.64",
   "lat": 41.74,
   "lon": -93.64,
   "zip": "",
   "city": "2 WNW Ankeny",
   "date": "2026-03-30",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 WNW Ankeny, IA. Hail size: 0.88\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "asos-bf-DSM-2026-03-16",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-03-16",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 56 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-15-wind-41.68--93.57",
   "lat": 41.68,
   "lon": -93.57,
   "zip": "",
   "city": "3 E Saylorville",
   "date": "2026-03-15",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak wind at AWOS station KIKV Ankeny Airport.",
   "sourceDetail": "NWS DMX — AWOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-15-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-03-15",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak wind gust at ASOS station KDSM Des Moines International Airport.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IKV-2026-03-15",
   "lat": 41.6878,
   "lon": -93.5695,
   "zip": "",
   "city": "ANKENY",
   "date": "2026-03-15",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ANKENY (IKV) recorded a 58 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — ANKENY (IKV) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603160235-wind-41.68--93.57",
   "lat": 41.68,
   "lon": -93.57,
   "zip": "",
   "city": "3 E Saylorville",
   "date": "2026-03-15",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 E Saylorville, IA. Peak gust: 67 mph.",
   "sourceDetail": "NWS DMX — AWOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603160456-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-03-15",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Des Moines Int Airport, IA. Peak gust: 69 mph.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-DMX-HW-W-3-Polk-wind-2026-03-15",
   "zip": "",
   "city": "Polk",
   "date": "2026-03-15",
   "county": "Polk",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Polk.",
   "sourceDetail": "NWS DMX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-HW-W-3"
  },
  {
   "id": "asos-bf-DSM-2026-03-13",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-03-13",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 58 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IKV-2026-03-13",
   "lat": 41.6878,
   "lon": -93.5695,
   "zip": "",
   "city": "ANKENY",
   "date": "2026-03-13",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ANKENY (IKV) recorded a 52 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — ANKENY (IKV) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-DMX-HW-W-2-Polk-wind-2026-03-13",
   "zip": "",
   "city": "Polk",
   "date": "2026-03-13",
   "county": "Polk",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Polk.",
   "sourceDetail": "NWS DMX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-HW-W-2"
  },
  {
   "id": "iem-202603070136-hail-41.69--93.99",
   "lat": 41.69,
   "lon": -93.99,
   "zip": "",
   "city": "2 W Dallas Center",
   "date": "2026-03-06",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 W Dallas Center, IA. Hail size: 0.75\".",
   "sourceDetail": "NWS DMX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "ww-DMX-SV-W-2-2026-03-06-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-06. Duration: 29 min. Counties: Boone, Dallas, Polk. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #2 (29 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-2"
  },
  {
   "id": "ww-DMX-SV-W-2-2026-03-06-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2026-03-06. Duration: 29 min. Counties: Boone, Dallas, Polk. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #2 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DMX-SV-W-2"
  },
  {
   "id": "iem-lsr-2026-01-21-wind-41.86--93.90",
   "lat": 41.86,
   "lon": -93.9,
   "zip": "",
   "city": "1 ENE Woodward",
   "date": "2026-01-21",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured from personal weather station.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-21-wind-41.79--93.53",
   "lat": 41.79,
   "lon": -93.53,
   "zip": "",
   "city": "1 W Elkhart",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Mesonet station UP752 0.6 W Elkhart (UPR).",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-21-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ASOS station KDSM Des Moines International Airport.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-21-wind-41.82--93.80",
   "lat": 41.82,
   "lon": -93.8,
   "zip": "",
   "city": "4 SSE Madrid",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured from personal weather station.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 65,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DSM-2026-01-21",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 65 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 65,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601212107-wind-41.86--93.90",
   "lat": 41.86,
   "lon": -93.9,
   "zip": "",
   "city": "1 ENE Woodward",
   "date": "2026-01-21",
   "county": "Dallas",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Woodward, IA. Peak gust: 74 mph.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 74,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601212121-wind-41.79--93.53",
   "lat": 41.79,
   "lon": -93.53,
   "zip": "",
   "city": "1 W Elkhart",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Elkhart, IA. Peak gust: 67 mph.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601212128-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Des Moines Int Airport, IA. Peak gust: 67 mph.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601212128-wind-41.82--93.80",
   "lat": 41.82,
   "lon": -93.8,
   "zip": "",
   "city": "4 SSE Madrid",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 SSE Madrid, IA. Peak gust: 75 mph.",
   "sourceDetail": "NWS DMX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 75,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601212159-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Des Moines Int Airport, IA. Peak gust: 74 mph.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 74,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-DMX-HW-W-1-Polk-wind-2026-01-21",
   "zip": "",
   "city": "Polk",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Polk.",
   "sourceDetail": "NWS DMX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-HW-W-1"
  },
  {
   "id": "iem-lsr-2026-01-21-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2026-01-21",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ASOS station KDSM Des Moines International Airport.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IKV-2025-12-28",
   "lat": 41.6878,
   "lon": -93.5695,
   "zip": "",
   "city": "ANKENY",
   "date": "2025-12-28",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ANKENY (IKV) recorded a 56 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — ANKENY (IKV) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DSM-2025-12-18",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2025-12-18",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 54 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-10-wind-41.53--93.66",
   "lat": 41.53,
   "lon": -93.66,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2025-12-10",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "KDSM 45 gust 66 mph.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-10-wind-41.38--93.40",
   "lat": 41.38,
   "lon": -93.4,
   "zip": "",
   "city": "1 NW Sandyville",
   "date": "2025-12-10",
   "county": "Warren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "measured on home weather station.",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2025-12-10-wind-41.57--93.26",
   "lat": 41.57,
   "lon": -93.26,
   "zip": "",
   "city": "3 SSW Prairie City",
   "date": "2025-12-10",
   "county": "Jasper",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Neal Smith RAWS.",
   "sourceDetail": "NWS DMX — Park/Forest Srvc via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-DSM-2025-12-10",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2025-12-10",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 65 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 65,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IKV-2025-12-10",
   "lat": 41.6878,
   "lon": -93.5695,
   "zip": "",
   "city": "ANKENY",
   "date": "2025-12-10",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ANKENY (IKV) recorded a 51 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — ANKENY (IKV) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512101011-wind-41.53--93.66",
   "lat": 41.53,
   "lon": -93.66,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2025-12-10",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Des Moines Int Airport, IA. Peak gust: 76 mph.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512101030-wind-41.38--93.40",
   "lat": 41.38,
   "lon": -93.4,
   "zip": "",
   "city": "1 NW Sandyville",
   "date": "2025-12-10",
   "county": "Warren",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Sandyville, IA. Peak gust: 76 mph.",
   "sourceDetail": "NWS DMX — Public via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202512101031-wind-41.57--93.26",
   "lat": 41.57,
   "lon": -93.26,
   "zip": "",
   "city": "3 SSW Prairie City",
   "date": "2025-12-10",
   "county": "Jasper",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SSW Prairie City, IA. Peak gust: 69 mph.",
   "sourceDetail": "NWS DMX — Park/Forest Srvc via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-ww-DMX-HW-W-6-Polk-wind-2025-12-10",
   "zip": "",
   "city": "Polk",
   "date": "2025-12-10",
   "county": "Polk",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Polk.",
   "sourceDetail": "NWS DMX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-HW-W-6"
  },
  {
   "id": "asos-bf-DSM-2025-12-09",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2025-12-09",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 57 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DSM-2025-11-26",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2025-11-26",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 57 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-25-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2025-11-25",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ASOS station KDSM Des Moines International Airport.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IKV-2025-11-25",
   "lat": 41.6878,
   "lon": -93.5695,
   "zip": "",
   "city": "ANKENY",
   "date": "2025-11-25",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ANKENY (IKV) recorded a 52 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — ANKENY (IKV) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DSM-2025-11-25",
   "lat": 41.534,
   "lon": -93.6531,
   "zip": "",
   "city": "Des Moines",
   "date": "2025-11-25",
   "county": "Polk",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Des Moines (DSM) recorded a 60 mph gust.",
   "sourceDetail": "IA_ASOS automated observation — Des Moines (DSM) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511260231-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2025-11-25",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Des Moines Int Airport, IA. Peak gust: 67 mph.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511260448-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2025-11-25",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Des Moines Int Airport, IA. Peak gust: 70 mph.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-25-wind-41.53--93.67",
   "lat": 41.53,
   "lon": -93.67,
   "zip": "",
   "city": "Des Moines Int Airport",
   "date": "2025-11-25",
   "county": "Polk",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ASOS station KDSM Des Moines International Airport.",
   "sourceDetail": "NWS DMX — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DMX-SV-W-250-2025-09-22-Polk-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2025-09-22. Duration: 38 min. Counties: Hamilton, Webster, Wright, Polk, Jasper. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #250 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DMX-SV-W-250"
  },
  {
   "id": "ww-DMX-SV-W-250-2025-09-22-Polk-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Polk",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DMX on 2025-09-22. Duration: 38 min. Counties: Hamilton, Webster, Wright, Polk, Jasper. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DMX — Severe Thunderstorm Warning #250 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DMX-SV-W-250"
  }
 ]
}