Skip to content

Observations

All observation feeds are live layers rewritten on a fixed cadence. Responses carry a short cache-control; poll no faster than it. One credit per request.

GET /v1/radar/index.json (free) → { generated, step: 300, frames: [{ time, name, kind: "obs" | "nowcast" }] }. Frames are MRMS composite reflectivity at 5-minute steps for the trailing two hours, plus a pySTEPS nowcast to +60 minutes, refreshed every two minutes. Each frame’s tiles are at /v1/radar/{name}/{z}/{x}/{y}.png, value-encoded in dBZ. See tiles.

GET /v1/lightning/strikes.geojson → a FeatureCollection of cloud-to-ground strike-density cells for the trailing 120 minutes, rewritten every minute, each with its minute and density. Source: NOAA MRMS NLDN density (public domain). For forecast lightning potential use the thunder overlay.

GET /v1/stations/latest?bbox=w,s,e,n&vars=t,ws,wg&within=120

Latest reports from NOAA MADIS mesonets, METAR, RAWS, CWOP, SNOTEL and HADS inside a bbox (at most 16 tiles at zoom 5). Variables: t temperature, dp dew point, rh, ws wind speed, wd direction, wg gust, pa pressure, p precip, p1h, sr solar, sd snow depth, sf6/sf24 snowfall, swe, stage, flow. SI units. within is minutes (default 120, max 1440).

{ "type": "Feature", "geometry": { "type": "Point", "coordinates": [-113.99, 46.92] },
"properties": { "id": "KMSO", "provider": "METAR", "name": "Missoula Intl", "elev": 972,
"obs": { "t": [1789808400, 24.1], "ws": [1789808400, 3.6], "wg": [1789808400, 6.2] } } }

GET /v1/stations/history?provider=METAR&id=KMSO&lat=46.92&lon=-113.99&hours=72&vars=t,ws → hourly series for the last 7 days (cadence=native for raw report times).

Attribution: NOAA MADIS and the provider named on each station. Aircraft reports are never included.

GET /v1/soundings/latest?bbox=w,s,e,n&within=24 → launch sites with their latest radiosonde report. GET /v1/soundings/stations/{wmo}?hours=168 → a site’s reports for the last 7 days; each links to an immutable profile with mandatory and significant levels preserved.

GET /v1/gauges/latest.geojson → every USGS gauge nationwide with discharge, stage, water temperature and a rating fit (v = rk · Q^rm) for velocity, every 15 minutes. GET /v1/gauges/{site}/history?parameterCd=00060&period=P7D → the NWIS series for one gauge.

GET /v1/fire/perimeters.geojson, /v1/fire/incidents.geojson, /v1/fire/hotspots.geojson → NIFC WFIGS perimeters and incidents, and NASA FIRMS VIIRS hotspots for the trailing 48 hours. Hourly.

GET /v1/tfrs.geojson → active FAA temporary flight restrictions as polygons, every 15 minutes.

GET /v1/weather-alerts?lat=&lon= → active NWS alerts at a point (official NWS features, cancelled and expired filtered out). See Text products.