NWS Weather Alerts & Point Forecast Scraper
NWS Weather Alerts & Point Forecast Scraper
Fetch active National Weather Service (NWS) weather alerts and multi-day point forecasts for any list of coordinates. Supply a list of lat/lon pairs (trailheads, campgrounds, peaks, campsites, or any geographic point) and get back per-point active alerts plus a 7-day forecast in a single run.
No API key required — the actor uses the public api.weather.gov REST API with a polite request rate.
What it does
For each coordinate you provide, the actor:
- Fetches active alerts (via
/alerts/active?point=lat,lon) — returns any currently active NWS weather alerts (Severe Thunderstorm Warning, Winter Storm Warning, Flood Watch, Red Flag Warning, etc.) that cover that location. - Fetches the 7-day point forecast (two-hop:
/points/lat,lon→/gridpoints/{office}/{x},{y}/forecast) — returns the NWS forecast for the nearest grid cell, broken into morning/afternoon/overnight periods.
Each output record carries a record_type field (alert or point_forecast) so you can filter downstream.
Input
| Field | Type | Required | Description |
|---|---|---|---|
coordinates |
array | yes | List of { lat, lon, label } objects. label is optional (e.g. trail name). |
includeAlerts |
boolean | no | Fetch active alerts for each point. Default: true. |
includeForecast |
boolean | no | Fetch 7-day forecast for each point. Default: true. |
maxItems |
integer | no | Maximum total records to return. Default: 100. |
Example input
{
"coordinates": [
{ "lat": 44.2706, "lon": -71.3033, "label": "Mt Washington Summit" },
{ "lat": 44.5236, "lon": -71.1762, "label": "Pinkham Notch" },
{ "lat": 43.9342, "lon": -71.6476, "label": "Lonesome Lake Hut" }
],
"includeAlerts": true,
"includeForecast": true,
"maxItems": 100
}
Output
Each record in the dataset has the following fields:
| Field | Type | Description |
|---|---|---|
record_type |
string | "alert" or "point_forecast" |
latitude |
number | Queried latitude |
longitude |
number | Queried longitude |
label |
string | Your supplied label for this coordinate |
event |
string | Alert event type (e.g. "Winter Storm Warning") — alerts only |
severity |
string | Severity: Extreme, Severe, Moderate, Minor, Unknown — alerts only |
certainty |
string | Certainty: Observed, Likely, Possible, Unlikely, Unknown — alerts only |
urgency |
string | Urgency: Immediate, Expected, Future, Past, Unknown — alerts only |
area_desc |
string | Affected geographic area description — alerts only |
effective |
string | ISO 8601 start datetime |
expires |
string | ISO 8601 end datetime |
headline |
string | Alert headline — alerts only |
description |
string | Full alert or forecast period text |
instruction |
string | Safety instructions — alerts only |
forecast_period |
string | Period name, e.g. "Tonight", "Tuesday" — forecasts only |
temperature |
number | Forecast temperature in degrees Fahrenheit — forecasts only |
wind_speed |
string | Forecast wind speed, e.g. "15 mph" — forecasts only |
short_forecast |
string | Brief summary, e.g. "Partly Cloudy" — forecasts only |
detailed_forecast |
string | Full forecast narrative — forecasts only |
Example alert record
{
"record_type": "alert",
"latitude": 44.2706,
"longitude": -71.3033,
"label": "Mt Washington Summit",
"event": "Wind Advisory",
"severity": "Moderate",
"certainty": "Likely",
"urgency": "Expected",
"area_desc": "Northern White Mountains; White Mountains",
"effective": "2026-05-29T06:00:00-04:00",
"expires": "2026-05-29T18:00:00-04:00",
"headline": "Wind Advisory issued May 29 at 6:00AM EDT until May 29 at 6:00PM EDT",
"description": "Southwest winds 25 to 35 mph with gusts up to 50 mph.",
"instruction": "Use extra caution when driving, especially in high-profile vehicles.",
"forecast_period": "",
"temperature": null,
"wind_speed": "",
"short_forecast": "",
"detailed_forecast": ""
}
Example forecast record
{
"record_type": "point_forecast",
"latitude": 44.2706,
"longitude": -71.3033,
"label": "Mt Washington Summit",
"event": "",
"severity": "",
"forecast_period": "Tonight",
"effective": "2026-05-29T18:00:00-04:00",
"expires": "2026-05-30T06:00:00-04:00",
"temperature": 34,
"wind_speed": "35 to 45 mph",
"short_forecast": "Mostly Cloudy",
"detailed_forecast": "Mostly cloudy, with a low around 34. Southwest wind 35 to 45 mph, with gusts as high as 65 mph.",
"description": "Mostly cloudy, with a low around 34. Southwest wind 35 to 45 mph, with gusts as high as 65 mph.",
"headline": "",
"instruction": "",
"alert_id": "",
"area_desc": "",
"certainty": "",
"urgency": ""
}
Coverage notes
- Continental US only. The NWS API (
api.weather.gov) covers the contiguous United States, Alaska, Hawaii, and some US territories. Coordinates outside NWS coverage (ocean, international) return no data and are skipped with a warning. - Alerts: Returns only currently active alerts at the time of the run. Historical alerts are not available via this endpoint.
- Forecast: 7-day forecast, typically 14 periods (7 daytime + 7 overnight).
Use cases
- Trail condition monitoring — batch-check active weather alerts and forecasts for a list of trailheads before a trip.
- Outdoor trip planning automation — pair with NPS Park Data Scraper or Recreation.gov data to enrich venue records with live weather context.
- Campground weather briefings — generate per-campsite weather summaries from a coordinate list.
- Alert dashboards — monitor which locations in a portfolio currently have active weather alerts.
Rate limiting
The NWS API has no published hard rate limit but requests a polite User-Agent header (included automatically) and reasonable request rates. This actor observes a 1-second delay between API calls per coordinate. For large coordinate lists, runs may take several minutes.