AnswerPool

Weather Alert Summary API: Active NWS alerts by state or nationwide with counts by event type

Active NWS alerts by state or nationwide with counts by event type, severity and urgency plus a Severe/Extreme total. Replaces paging GeoJSON and tallying. Free.

Free — no key, no signup, rate-limited to 60 calls per minute per client.

How do you call it?

GET /v1/weather/alerts — product id weather_alerts. Over MCP, call answerpool_get with product_id=weather_alerts.

curl "https://answerpool.io/v1/weather/alerts?area=CA"

Live call: https://answerpool.io/v1/weather/alerts?area=CA · JSON sample: /v1/samples/weather_alerts

What does the answer look like?

A representative response, the same static sample served at /v1/samples/weather_alerts.

as_of2026-09-03T16:00:00Z
areaCA
active_alerts4
severe_or_extreme0
noteCounts are computed over the active-alert set at retrieval time. One weather system produces many alerts across zones, so counts measure alert volume, not stor…
sourceNOAA National Weather Service (api.weather.gov)
refresh_after2026-09-17T11:15:00.000Z

by_event

keycount
Wind Advisory3
Heat Advisory1
The same sample as raw JSON
{
 "as_of": "2026-09-03T16:00:00Z",
 "area": "CA",
 "active_alerts": 4,
 "by_event": [
  {
   "key": "Wind Advisory",
   "count": 3
  },
  {
   "key": "Heat Advisory",
   "count": 1
  }
 ],
 "by_severity": [
  {
   "key": "Moderate",
   "count": 4
  }
 ],
 "by_urgency": [
  {
   "key": "Expected",
   "count": 4
  }
 ],
 "severe_or_extreme": 0,
 "alerts": [
  {
   "event": "Wind Advisory",
   "severity": "Moderate",
   "urgency": "Expected",
   "certainty": "Likely",
   "area": "Santa Barbara County Southwestern Coast",
   "onset": "2026-09-03T11:00:00-07:00",
   "ends": "2026-09-03T20:00:00-07:00",
   "sender": "NWS Los Angeles CA"
  }
 ],
 "note": "Counts are computed over the active-alert set at retrieval time. One weather system produces many alerts across zones, so counts measure alert volume, not storm count.",
 "source": "NOAA National Weather Service (api.weather.gov)",
 "refresh_after": "2026-09-17T11:15:00.000Z"
}

How fresh is it, and where does the data come from?

The fastest source behind this answer can change every 15 minutes, so every response carries a refresh_after timestamp — right now it would be 2026-09-17T11:15:00.000Z. Schedule the next call on that value rather than on a guess.

Method version 0.1.0 · serving cache 1 day · every response carries a result_id you can resolve at /v1/provenance.

When should you use it?

You need what is active now and how it breaks down by type or severity.

What you skip building

When should you not use it?

A point forecast — /v1/weather/forecast.

Where else can you find this?