{
 "dataset": "Lansing, MI storm events — 12-month window, 25-mile radius plus Ingham 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-20T08:45:17.508+00:00",
 "window_days": 365,
 "schema_version": "2.0.0",
 "event_count": 122,
 "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": "nws-alert-faee94e4ca5f7890.001-Eaton-wind-2026-09-04",
   "lat": 42.51428571428572,
   "lon": -84.91285714285716,
   "zip": "",
   "city": "",
   "date": "2026-09-04",
   "county": "Eaton",
   "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 Eaton. Max wind: 60 mph. Severe Thunderstorm Warning issued September 4 at 8:24AM EDT until September 4 at 9:15AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max wind: 60 mph.",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-130"
  },
  {
   "id": "nws-alert-faee94e4ca5f7890.001-Eaton-hail-2026-09-04",
   "lat": 42.51428571428572,
   "lon": -84.91285714285716,
   "zip": "",
   "city": "",
   "date": "2026-09-04",
   "county": "Eaton",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Eaton. Max hail: 0.75\". Severe Thunderstorm Warning issued September 4 at 8:24AM EDT until September 4 at 9:15AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-130"
  },
  {
   "id": "ww-GRR-SV-W-123-2026-09-03-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Ingham",
   "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 GRR on 2026-09-03. Duration: 43 min. Counties: Eaton, Clinton, Ingham. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #123 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-123"
  },
  {
   "id": "ww-GRR-SV-W-123-2026-09-03-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Ingham",
   "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 GRR on 2026-09-03. Duration: 43 min. Counties: Eaton, Clinton, Ingham. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #123 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-123"
  },
  {
   "id": "iem-202609031854-hail-42.75--84.43",
   "lat": 42.75,
   "lon": -84.43,
   "zip": "",
   "city": "2 W Haslett",
   "date": "2026-09-03",
   "county": "Ingham",
   "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 Haslett, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "asos-LAN-2026-09-03-180693",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-09-03",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 66 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN)",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-LAN-2026-09-03-267227",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-09-03",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN)",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-LAN-2026-09-03",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Lansing (LAN): 52 mph gust at M.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) — peak at M",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "nws-alert-b4d6fbbf24828c6f.001-Shiawass-wind-2026-09-03",
   "lat": 42.854,
   "lon": -84.186,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Shiawassee",
   "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 Shiawassee. Severe Thunderstorm Warning issued September 3 at 3:12PM EDT until September 3 at 3:15PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-120"
  },
  {
   "id": "nws-alert-ad8321f8dca83153.001-Shiawass-hail-2026-09-03",
   "lat": 42.854,
   "lon": -84.186,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Shiawassee",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Shiawassee. Max hail: 0.75\". Severe Thunderstorm Warning issued September 3 at 3:02PM EDT until September 3 at 3:15PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-120"
  },
  {
   "id": "nws-alert-a72d33f23d20fd4b.001-Gratiot-wind-2026-09-03",
   "lat": 42.97666666666667,
   "lon": -84.625,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Gratiot",
   "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 Gratiot. Max wind: 60 mph. Severe Thunderstorm Warning issued September 3 at 2:14PM EDT until September 3 at 3:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max wind: 60 mph.",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-125"
  },
  {
   "id": "nws-alert-a72d33f23d20fd4b.001-Gratiot-hail-2026-09-03",
   "lat": 42.97666666666667,
   "lon": -84.625,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Gratiot",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Gratiot. Max hail: 1\". Severe Thunderstorm Warning issued September 3 at 2:14PM EDT until September 3 at 3:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 1\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-125"
  },
  {
   "id": "nws-alert-c83ec3f9f06836c5.001-Clinton-wind-2026-09-03",
   "lat": 42.842000000000006,
   "lon": -84.51,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Clinton",
   "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 Clinton. Severe Thunderstorm Warning issued September 3 at 2:56PM EDT until September 3 at 3:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-125"
  },
  {
   "id": "nws-alert-83fcc7c6daa7b950.001-Clinton-hail-2026-09-03",
   "lat": 42.842000000000006,
   "lon": -84.51,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Clinton. Max hail: 0.75\". Severe Thunderstorm Warning issued September 3 at 2:51PM EDT until September 3 at 3:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-125"
  },
  {
   "id": "nws-alert-496b71a0e598dcf6.001-Ingham-wind-2026-09-03",
   "lat": 42.57285714285715,
   "lon": -84.39285714285714,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Ingham",
   "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 Ingham. Severe Thunderstorm Warning issued September 3 at 3:28PM EDT until September 3 at 3:30PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "nws-alert-1df0b8d397e1172a.001-Ingham-hail-2026-09-03",
   "lat": 42.57285714285715,
   "lon": -84.39285714285714,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Ingham",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Ingham. Max hail: 0.75\". Severe Thunderstorm Warning issued September 3 at 3:16PM EDT until September 3 at 3:30PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "nws-alert-6d0f7d88cdf30c63.001-Eaton-wind-2026-09-03",
   "lat": 42.675000000000004,
   "lon": -84.415,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Eaton",
   "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 Eaton. Max wind: 70 mph. Severe Thunderstorm Warning issued September 3 at 2:46PM EDT until September 3 at 3:30PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max wind: 70 mph.",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "nws-alert-6d0f7d88cdf30c63.001-Eaton-hail-2026-09-03",
   "lat": 42.675000000000004,
   "lon": -84.415,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Eaton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Eaton. Max hail: 0.75\". Severe Thunderstorm Warning issued September 3 at 2:46PM EDT until September 3 at 3:30PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "nws-alert-a84003096edfe3a8.001-Ingham-tornado-2026-09-03",
   "lat": 42.62375,
   "lon": -84.19624999999999,
   "zip": "",
   "city": "",
   "date": "2026-09-03",
   "county": "Ingham",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Ingham (observed tornado). Tornado Warning issued September 3 at 3:06PM EDT until September 3 at 3:30PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "GRR-TO-W-23"
  },
  {
   "id": "iem-202609031841-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-09-03",
   "county": "Clinton",
   "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": "TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 76 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202609030232-hail-42.69--84.28",
   "lat": 42.69,
   "lon": -84.28,
   "zip": "",
   "city": "Williamston",
   "date": "2026-09-02",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Williamston, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-GRR-SV-W-121-2026-09-02-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-09-02",
   "county": "Ingham",
   "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 GRR on 2026-09-02. Duration: 15 min. County: Ingham. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #121 (15 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-121"
  },
  {
   "id": "ww-GRR-SV-W-121-2026-09-02-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-09-02",
   "county": "Ingham",
   "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 GRR on 2026-09-02. Duration: 15 min. County: Ingham. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #121 (15 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-121"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Ingham-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Ingham",
   "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 Ingham. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Ingham-wind",
   "zip": "",
   "city": "Ingham",
   "date": "2026-07-27",
   "county": "Ingham",
   "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 Ingham. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "ww-GRR-SV-W-109-2026-07-15-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Ingham",
   "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 GRR on 2026-07-15. Duration: 30 min. County: Ingham. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #109 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-109"
  },
  {
   "id": "ww-GRR-SV-W-109-2026-07-15-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Ingham",
   "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 GRR on 2026-07-15. Duration: 30 min. County: Ingham. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #109 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-109"
  },
  {
   "id": "spc-2026-07-09-75-1653",
   "lat": 43.02,
   "lon": -84.85,
   "zip": "",
   "city": "Pewamo",
   "date": "2026-07-09",
   "county": "Ionia",
   "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 by Ambient WS-4000. Large walnut tree split. Tree down over road a half mile away from this location. Neighbors outdoor furniture including polywood table thro (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 71,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607091653-wind-43.02--84.85",
   "lat": 43.02,
   "lon": -84.85,
   "zip": "",
   "city": "1 NNW Pewamo",
   "date": "2026-07-09",
   "county": "Ionia",
   "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": "TSTM WND GST reported near 1 NNW Pewamo, MI. Peak gust: 82 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 82,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-LAN-2026-07-03",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-07-03",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.67--84.49",
   "lat": 42.67,
   "lon": -84.49,
   "zip": "",
   "city": "3 NE Holt",
   "date": "2026-07-03",
   "county": "Ingham",
   "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 MIMHT East Lansing - 10m.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032132-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-07-03",
   "county": "Clinton",
   "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 NNE Edgemont Park, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032200-wind-42.67--84.49",
   "lat": 42.67,
   "lon": -84.49,
   "zip": "",
   "city": "3 NE Holt",
   "date": "2026-07-03",
   "county": "Ingham",
   "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": "TSTM WND GST reported near 3 NE Holt, MI. Peak gust: 76 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-03T21:35:00Z-wind-42.71--84.41",
   "lat": 42.71,
   "lon": -84.41,
   "zip": "",
   "city": "Okemos",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND DMG reported near Okemos, MI. Peak gust: 56 mph. Maple tree down on house. Measured 56 mph gust before power failure.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-03T22:00:00Z-wind-42.71--84.48",
   "lat": 42.71,
   "lon": -84.48,
   "zip": "",
   "city": "2 SSE East Lansing",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSE East Lansing, MI. Peak gust: 54 mph. Mesonet station MIHTC 1.8 S East Lansing (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-03T22:15:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-07-03",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 E Charlotte, MI. Peak gust: 54 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-102-2026-07-03-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ingham",
   "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 GRR on 2026-07-03. Duration: 93 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #102 (93 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-102"
  },
  {
   "id": "ww-GRR-SV-W-102-2026-07-03-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ingham",
   "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 GRR on 2026-07-03. Duration: 93 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #102 (93 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-102"
  },
  {
   "id": "ww-GRR-SV-W-107-2026-07-03-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ingham",
   "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 GRR on 2026-07-03. Duration: 68 min. Counties: Clinton, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #107 (68 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-107"
  },
  {
   "id": "ww-GRR-SV-W-107-2026-07-03-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ingham",
   "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 GRR on 2026-07-03. Duration: 68 min. Counties: Clinton, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #107 (68 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-107"
  },
  {
   "id": "iem-ww-GRR-TO-W-21-Ingham-tornado-2026-07-03",
   "zip": "",
   "city": "Ingham",
   "date": "2026-07-03",
   "county": "Ingham",
   "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 Ingham.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-21"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.67--84.49",
   "lat": 42.67,
   "lon": -84.49,
   "zip": "",
   "city": "3 NE Holt",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Mesonet station MIMSU 3.2 NE Holt (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LAN-2026-06-11",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-06-11",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606120221-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-06-11",
   "county": "Clinton",
   "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 NNE Edgemont Park, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-83-2026-06-11-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Ingham",
   "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 GRR on 2026-06-11. Duration: 60 min. Counties: Ingham, Clinton. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #83 (60 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-83"
  },
  {
   "id": "ww-GRR-SV-W-83-2026-06-11-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Ingham",
   "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 GRR on 2026-06-11. Duration: 60 min. Counties: Ingham, Clinton. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #83 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-83"
  },
  {
   "id": "spc-2026-06-10-341-0003",
   "lat": 42.96,
   "lon": -84.58,
   "zip": "",
   "city": "Saint Johns",
   "date": "2026-06-10",
   "county": "Clinton",
   "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 on a personal weather station. (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 62,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-LAN-2026-06-10",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-06-10",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606110003-wind-42.96--84.58",
   "lat": 42.96,
   "lon": -84.58,
   "zip": "",
   "city": "3 SSW Saint Johns",
   "date": "2026-06-10",
   "county": "Clinton",
   "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 SSW Saint Johns, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202606110105-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-06-10",
   "county": "Clinton",
   "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 NNE Edgemont Park, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Ingham",
   "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 GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Ingham",
   "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 GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "iem-geo-2026-06-09T14:30:00Z-tornado-42.73--84.78",
   "lat": 42.73,
   "lon": -84.78,
   "zip": "",
   "city": "2 SW Grand Ledge",
   "date": "2026-06-09",
   "county": "Eaton",
   "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 SW Grand Ledge, MI. This EF-0 tornado had maximum estimated winds of 75 mph and a path length of around 3.2 miles. One outbuilding was destroyed. Otherwise mostly tree damage or minor property damage due to fallen trees occurred along the path.",
   "sourceDetail": "NWS GRR — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.78--84.60",
   "lat": 42.78,
   "lon": -84.6,
   "zip": "",
   "city": "2 N Edgemont Park",
   "date": "2026-05-18",
   "county": "Clinton",
   "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 KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181925-wind-42.78--84.60",
   "lat": 42.78,
   "lon": -84.6,
   "zip": "",
   "city": "2 N Edgemont Park",
   "date": "2026-05-18",
   "county": "Clinton",
   "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": "TSTM WND GST reported near 2 N Edgemont Park, MI. Peak gust: 78 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 78,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T19:05:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-05-18",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 E Charlotte, MI. Peak gust: 51 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T19:23:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-05-18",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 55 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-66-2026-05-18-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "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 GRR on 2026-05-18. Duration: 35 min. Counties: Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #66 (35 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-66"
  },
  {
   "id": "ww-GRR-SV-W-66-2026-05-18-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "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 GRR on 2026-05-18. Duration: 35 min. Counties: Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #66 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-66"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "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 GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "windSpeedMph": 80,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "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 GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "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 GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "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 GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "asos-bf-LAN-2026-05-18",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-05-18",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 68 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1342572-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "PACKARD",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Dozen or more trees with trunks or limbs snapped in a wooded area.",
   "sourceDetail": "Verified by Public — NCEI Event #1342572",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342574-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "EAST LANSING",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Dispatch reports numerous trees and wires down across the county. Multiple trees on houses.",
   "sourceDetail": "Verified by State Official — NCEI Event #1342574",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "asos-bf-LAN-2026-04-27",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-04-27",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.57--84.42",
   "lat": 42.57,
   "lon": -84.42,
   "zip": "",
   "city": "2 SE Mason",
   "date": "2026-04-27",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Mason",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272140-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-04-27",
   "county": "Clinton",
   "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 NNE Edgemont Park, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272216-wind-42.57--84.42",
   "lat": 42.57,
   "lon": -84.42,
   "zip": "",
   "city": "2 SE Mason",
   "date": "2026-04-27",
   "county": "Ingham",
   "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 2 SE Mason, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T22:15:00Z-wind-42.57--84.42",
   "lat": 42.57,
   "lon": -84.42,
   "zip": "",
   "city": "2 SE Mason",
   "date": "2026-04-27",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Mason, MI. Peak gust: 51 mph. AWOS station KTEW Mason Jewett Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-15T04:04:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-04-15",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 E Charlotte, MI. Peak gust: 53 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Ingham",
   "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 GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Ingham",
   "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 GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "iem-202604140030-hail-42.87--84.90",
   "lat": 42.87,
   "lon": -84.9,
   "zip": "",
   "city": "Portland",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Portland, MI. Hail size: 2\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-lsr-2026-04-13-hail-42.87--84.90",
   "lat": 42.87,
   "lon": -84.9,
   "zip": "",
   "city": "Portland",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Quarter to ping pong sized hail from media reports and the public.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202603310850-hail-42.44--84.56",
   "lat": 42.44,
   "lon": -84.56,
   "zip": "",
   "city": "Onondaga",
   "date": "2026-03-31",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Onondaga, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310838-hail-42.46--84.66",
   "lat": 42.46,
   "lon": -84.66,
   "zip": "",
   "city": "3 S Eaton Rapids",
   "date": "2026-03-31",
   "county": "Eaton",
   "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 S Eaton Rapids, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310855-hail-42.44--84.46",
   "lat": 42.44,
   "lon": -84.46,
   "zip": "",
   "city": "2 WSW Leslie",
   "date": "2026-03-31",
   "county": "Ingham",
   "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 WSW Leslie, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-geo-2026-03-31T06:09:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-31",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 NNE Edgemont Park, MI. Peak gust: 56 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-25-2026-03-31-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Ingham",
   "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 GRR on 2026-03-31. Duration: 38 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #25 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-25"
  },
  {
   "id": "ww-GRR-SV-W-25-2026-03-31-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Ingham",
   "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 GRR on 2026-03-31. Duration: 38 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #25 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-25"
  },
  {
   "id": "asos-bf-LAN-2026-03-31",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-03-31",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1327155-2026-03-31",
   "lon": 212247,
   "zip": "",
   "city": "ONONDAGA",
   "date": "2026-03-31",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms brought large hail and damaging winds to parts of lower Michigan on late March 30 into the early hours of March 31.",
   "sourceDetail": "Verified by Public — NCEI Event #1327155",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-03-16T13:48:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-16",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 NNE Edgemont Park, MI. Peak gust: 54 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LAN-2026-03-13",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-03-13",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 66 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131016-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "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 NNE Edgemont Park, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603132210-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "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 NNE Edgemont Park, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603132353-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "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 3 NNE Edgemont Park, MI. Peak gust: 76 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T16:16:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-03-13",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 E Charlotte, MI. Peak gust: 52 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TEW-2026-03-13",
   "lat": 42.5658,
   "lon": -84.4232,
   "zip": "",
   "city": "MASON",
   "date": "2026-03-13",
   "county": "Ingham",
   "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": "MASON (TEW) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MASON (TEW) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1327110-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "HOPWOOD ACRES",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe weather impacted lower Michigan on March 6th. 1 tornado occurred in the Grand Rapids County Warning Area while 3 occurred in the Northern Indiana County Warning Area.",
   "sourceDetail": "Verified by Public — NCEI Event #1327110",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327113-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "EAST LANSING ARPT",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe weather impacted lower Michigan on March 6th. 1 tornado occurred in the Grand Rapids County Warning Area while 3 occurred in the Northern Indiana County Warning Area.",
   "sourceDetail": "Verified by Public — NCEI Event #1327113",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327114-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "PACKARD",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe weather impacted lower Michigan on March 6th. 1 tornado occurred in the Grand Rapids County Warning Area while 3 occurred in the Northern Indiana County Warning Area.",
   "sourceDetail": "Verified by Public — NCEI Event #1327114",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603070013-hail-42.73--84.55",
   "lat": 42.73,
   "lon": -84.55,
   "zip": "",
   "city": "2 N Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "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 Lansing, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603070017-hail-42.72--84.54",
   "lat": 42.72,
   "lon": -84.54,
   "zip": "",
   "city": "1 NE Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "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 Lansing, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603070019-hail-42.73--84.56",
   "lat": 42.73,
   "lon": -84.56,
   "zip": "",
   "city": "1 NNW Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "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 NNW Lansing, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603070027-hail-42.74--84.47",
   "lat": 42.74,
   "lon": -84.47,
   "zip": "",
   "city": "1 NE East Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "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 East Lansing, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603070029-hail-42.68--84.59",
   "lat": 42.68,
   "lon": -84.59,
   "zip": "",
   "city": "3 SW Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "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 SW Lansing, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "ww-GRR-SV-W-6-2026-03-06-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Ingham",
   "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 GRR on 2026-03-06. Duration: 45 min. Counties: Eaton, Ingham, Clinton. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #6 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-6"
  },
  {
   "id": "ww-GRR-SV-W-6-2026-03-06-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Ingham",
   "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 GRR on 2026-03-06. Duration: 45 min. Counties: Eaton, Ingham, Clinton. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #6 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-6"
  },
  {
   "id": "iem-202602182215-hail-42.71--84.41",
   "lat": 42.71,
   "lon": -84.41,
   "zip": "",
   "city": "Okemos",
   "date": "2026-02-18",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Okemos, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202602182229-hail-42.56--84.30",
   "lat": 42.56,
   "lon": -84.3,
   "zip": "",
   "city": "Dansville",
   "date": "2026-02-18",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Dansville, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-GRR-SV-W-1-2026-02-18-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-02-18",
   "county": "Ingham",
   "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 GRR on 2026-02-18. Duration: 25 min. County: Ingham. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #1 (25 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-1"
  },
  {
   "id": "ww-GRR-SV-W-1-2026-02-18-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-02-18",
   "county": "Ingham",
   "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 GRR on 2026-02-18. Duration: 25 min. County: Ingham. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #1 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-1"
  },
  {
   "id": "ncei-1320342-2026-02-02",
   "lon": 211347,
   "zip": "",
   "city": "DANSVILLE",
   "date": "2026-02-02",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "An isolated thunderstorm produced brief large hail over Ingham County.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1320342",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-01-09T14:00:00Z-wind-42.71--84.48",
   "lat": 42.71,
   "lon": -84.48,
   "zip": "",
   "city": "2 SSE East Lansing",
   "date": "2026-01-09",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSE East Lansing, MI. Peak gust: 51 mph. Mesonet station MIHTC 1.8 S East Lansing (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T14:48:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-01-09",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 E Charlotte, MI. Peak gust: 51 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T13:58:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-01-09",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 NNE Edgemont Park, MI. Peak gust: 55 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T08:34:00Z-wind-42.86--84.91",
   "lat": 42.86,
   "lon": -84.91,
   "zip": "",
   "city": "1 SW Portland",
   "date": "2025-12-29",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 SW Portland, MI. Peak gust: 51 mph. Mesonet station MC149 I-96 Mile Marker 76.0.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T10:16:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-12-29",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 NNE Edgemont Park, MI. Peak gust: 56 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LAN-2025-12-29",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2025-12-29",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-GRR-HW-W-2-Ingham-wind-2025-12-29",
   "zip": "",
   "city": "Ingham",
   "date": "2025-12-29",
   "county": "Ingham",
   "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 Ingham.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-2"
  },
  {
   "id": "iem-geo-2025-12-19T10:36:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-12-19",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 NNE Edgemont Park, MI. Peak gust: 52 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T15:53:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-12-19",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 NNE Edgemont Park, MI. Peak gust: 53 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T22:19:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-11-26",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "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 NNE Edgemont Park, MI. Peak gust: 51 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Ingham-wind-2025-11-26",
   "zip": "",
   "city": "Ingham",
   "date": "2025-11-26",
   "county": "Ingham",
   "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 Ingham.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-geo-2025-10-21T20:01:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-10-21",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 51 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ingham",
   "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 GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ingham",
   "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 GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-57"
  }
 ]
}