OrbTop

NWS Weather Alerts & Point Forecast Scraper

TRAVEL

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:

  1. 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.
  2. 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.