Active Hail Across CONUS

Rolling snapshot of recent hail across the contiguous United States.

Rolling snapshot of recent hail across the contiguous United States.

Sweeps all CONUS grid sectors in parallel and returns every grid cell (~1 km²) that recorded hail within the requested look-back window. Uses the same catalog and calibration pipeline as /lookback/hail/tile/; no new data is generated.

Data Latency

Hail events are not published the moment hail is first detected. An event becomes visible only after it ends and a quiet period passes with no further hail at that cell, so events typically appear about 45 to 90 minutes after they begin. Long-lived storms take longer, since the event's own duration adds to the delay.

peak_start_time is when the event began, not when it was published. A newly published event can already be close to window_start, and a short window can miss it entirely. An event is returned only while its start time is inside the window, so when polling use window_min=120 at minimum, and window_min=360 when long-lived storms are active.

Intended Use

Use this endpoint as a triage layer before targeted queries:

  1. Poll GET /lookback/hail/active/?window_min=120 every 10 minutes.
  2. If metadata.active_cells > 0, extract the bounding region of the returned features.
  3. POST that region to /lookback/hail/polygon/ for event detail and zone breakdown.
  4. POST individual assets to /lookback/hail/multi/ for per-address confirmation.

On quiet days (no active convection) this call returns in < 200 ms with an empty features array. On active storm days, expect 500 ms–2 s depending on cell count.

Parameters

Every window is continuously pre-warmed in the background, so any allowed value returns in well under 1 second, there is no slow path.

ParameterDefaultAllowed valuesDescription
window_min6015, 30, 60, 120, 360, 720, 1440Look-back window in minutes from now
include_provisionalfalsetrue, falseAlso return in-progress events (see Provisional Events)

The default of 60 minutes is close to the typical publication delay, so set window_min explicitly when polling (see Data Latency).

Response Metadata

window_start/window_end reflect when the background refresh last ran, not the moment you called the endpoint, check stale_seconds to see how old that is before treating the window bounds as "now".

FieldDescription
window_start / window_endLook-back window used for the cached sweep
stale_secondsSeconds between window_end and when this request was served
active_cellsNumber of cells with hail in the window
dropped_tilesCONUS tiles skipped due to a failure or the grid-cell cap; a nonzero value means active_cells is a thin, not empty, read
max_hail_size_inLargest calibrated hail size across all cells

Response Features

Each feature in the features array is a GeoJSON Point matching the /lookback/hail/tile/ cell schema:

FieldDescription
max_hail_size_inFLASH AI calibrated hail size, inches
raw_mrms_size_inRadar-derived size before calibration
coverageSpatial coverage fraction 0–1
duration_minPeak event duration in minutes
hail_index0.0–5.0 impact score (≥4.0 = dispatch)
event_countNumber of distinct events at this cell
peak_start_timeUTC ISO-8601 timestamp of the peak event
provisionalOnly with include_provisional=true: true for an in-progress event, false for a final one
last_detected_timeProvisional features only: UTC ISO-8601 time hail was last detected at this cell

Provisional Events

By default this endpoint returns only final events, which appear after an event has ended. Set include_provisional=true to also get events that are still in progress. A provisional event appears within a few minutes of hail first being detected at a cell, plus the window's refresh interval.

  • Provisional features have provisional: true and a last_detected_time. Final features have provisional: false.
  • They use the same fields, units, calibration and window rule as final events: an event is returned while its peak_start_time (the time it began) is inside the window, so an event that began before window_start is not returned even if hail is still falling.
  • Values can still grow. max_hail_size_in, raw_mrms_size_in, coverage, duration_min and hail_index describe the event so far and may increase on later polls. event_count is always 1.
  • An event stays provisional until 45 to 60 minutes pass with no further hail at that cell. At the next refresh after that it is replaced by the final event for the same cell and peak_start_time, whose values may differ from the last provisional read. One response never returns the same event as both provisional and final.
  • A cell can have a final feature for an earlier event and a provisional feature for a newer one in the same response.
  • metadata.provisional_cells is the number of provisional features, or null if in-progress events could not be read for this refresh. active_cells and max_hail_size_in still count final events only.

Use provisional events as an early signal for triage, and final events for decisions that need settled sizes.

Polling Guidance

Each window is refreshed in the background on a fixed interval: every 4 minutes for window_min of 60 or less, every 10 minutes for 120 and 360, and every 20 minutes for 720 and 1440. Polling faster than a window's refresh interval returns the same result, adds unnecessary load, and does not surface events any sooner. A look-back window well beyond the publication delay is what keeps new events from being missed.

GET
/lookback/hail/active/

Authorization

Authorization<token>

Token-based authentication with required prefix "Token"

In: header

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/lookback/hail/active/"

{  "type": "FeatureCollection",  "metadata": {    "window_start": "2024-05-15T21:00:00+00:00",    "window_end": "2024-05-15T22:00:00+00:00",    "window_min": 60,    "active_cells": 45,    "dropped_tiles": 0,    "max_hail_size_in": 1.75,    "stale_seconds": 47  },  "features": [    {      "type": "Feature",      "geometry": {        "type": "Point",        "coordinates": [          -97.516,          35.468        ]      },      "properties": {        "max_hail_size_in": 1.75,        "raw_mrms_size_in": 1.65,        "coverage": 0.22,        "duration_min": 18,        "hail_index": 3.8,        "event_count": 1,        "peak_start_time": "2024-05-15T21:14:00+00:00"      }    }  ]}

On this page