NWS Weather Alerts Scraper — Real-Time US Warnings avatar

NWS Weather Alerts Scraper — Real-Time US Warnings

Pricing

from $3.00 / 1,000 results

Go to Apify Store
NWS Weather Alerts Scraper — Real-Time US Warnings

NWS Weather Alerts Scraper — Real-Time US Warnings

Extract active weather alerts from the US National Weather Service — warnings, watches, and advisories with severity, urgency, affected areas, and timing. Filter by state and severity. No API key.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Compute Edge

Compute Edge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

NWS Weather Alerts Scraper

Extract active weather alerts from the U.S. National Weather Service (NWS) in real-time. Get tornado warnings, flash flood watches, winter storm advisories, heat advisories, and all active NWS alerts. Filter by state/marine area, severity, urgency, event type, and more. Perfect for weather monitoring dashboards, emergency response systems, and alert distribution platforms.

What This Actor Does

This Actor provides real-time access to the National Weather Service (NWS) Active Alerts API. It retrieves all currently active weather alerts and watches issued by the NWS, including:

  • Warnings — Tornado warnings, Flash Flood Warnings, Winter Storm Warnings
  • Watches — Tornado Watches, Flash Flood Watches, Severe Thunderstorm Watches
  • Advisories — Winter Storm Advisories, Heat Advisories, Wind Advisories, Frost Advisories
  • Statements — Excessive Heat Statements, Marine Statements

Key Features

  • Real-time alerts — Access to all currently active NWS alerts across the United States
  • Flexible filtering — Filter by state/marine code, severity, urgency, event type, and more
  • Pagination support — Automatically follows NWS API pagination to retrieve all matching alerts
  • No authentication required — Uses the free, public NWS API
  • 14+ output fields — Comprehensive alert details including headline, description, effective/expiration times, and sender information
  • Batch processing — Efficient extraction for large datasets

Getting Started

Step 1: Understand the Input Parameters

  • Area (optional) — Filter by 2-letter state or marine code (e.g., "CA", "TX", "AM" for Atlantic Marine)
  • Severity (optional) — Filter by severity: "Extreme", "Severe", "Moderate", "Minor", "Unknown"
  • Urgency (optional) — Filter by urgency: "Immediate", "Expected", "Future", "Past", "Unknown"
  • Event Type (optional) — Filter by event (e.g., "Tornado Warning", "Flash Flood Watch", "Heat Advisory")
  • Status (optional) — Filter by status: "actual", "exercise", "test", "system"
  • Message Type (optional) — Filter by message type: "alert", "update", "cancel"
  • Max Results (optional, default 1000) — Maximum number of alerts to return (1–20,000)

Step 2: Run the Actor

  1. Click Start to run the Actor with default settings (returns all active US alerts)
  2. Or configure any input filters and click Start
  3. Results appear in the Dataset tab as JSON records

Step 3: Download Results

Export results as JSON or CSV via the Apify UI, or use the Apify API to fetch programmatically.

How to scrape NWS weather alerts

Tutorial 1: Fetch All Active Tornado Warnings in Texas

Goal: Get all currently active tornado warnings in Texas.

Input configuration:

  • Area: TX
  • Event Type: Tornado Warning
  • Max Results: 100

Expected output:

[
{
"id": "urn:oid:2.49.0.1.840.0.840f0510ab8a8d.2024061912",
"event": "Tornado Warning",
"severity": "Severe",
"urgency": "Immediate",
"certainty": "Likely",
"areaDesc": "Austin; Travis County",
"headline": "Tornado Warning issued for Travis County in south central Texas",
"senderName": "NWS Austin/San Antonio",
"effective": "2025-06-19T14:30:00-05:00",
"expires": "2025-06-19T15:30:00-05:00",
"status": "actual",
"messageType": "alert",
"response": "Execute",
"description": "A tornado warning means that a tornado has been sighted or indicated by weather radar, and there is a significant threat to life and property to those in the path of the tornado. Move to an interior room on the lowest floor of a sturdy building. Avoid windows. If in a mobile home, evacuate to a sturdy building now. Wind damage to mobile homes can result in loss of life and injuries. Refer to NOAA's Storm Data and Unusual Weather Phenomena annual publication at https://www.ncei.noaa.gov/products/suggest-public-data-dataset for more details."
}
]

Use case: Feed this data into a weather alert aggregation system to notify users in Texas of active tornado warnings.


Tutorial 2: Monitor All Extreme Severity Alerts

Goal: Track all alerts with "Extreme" severity across the entire United States.

Input configuration:

  • Area: (leave blank for all areas)
  • Severity: Extreme
  • Max Results: 500

Expected output:

[
{
"id": "urn:oid:2.49.0.1.840.0.840f0510ab8a8d.2024061910",
"event": "Extreme Fire Threat",
"severity": "Extreme",
"urgency": "Immediate",
"certainty": "Observed",
"areaDesc": "Northern California",
"headline": "Extreme Fire Threat issued for Northern California",
"senderName": "NWS Medford",
"effective": "2025-06-19T13:00:00-07:00",
"expires": "2025-06-19T20:00:00-07:00",
"status": "actual",
"messageType": "alert",
"response": "Prepare",
"description": "An extreme fire threat warning has been issued due to extremely dangerous fire weather conditions..."
}
]

Use case: Create an emergency response dashboard that highlights all extreme-severity alerts for rapid incident management.


Tutorial 3: List All Flash Flood Watches in Coastal Areas

Goal: Get all active flash flood watches for monitoring coastal flood risk.

Input configuration:

  • Event Type: Flash Flood Watch
  • Max Results: 200

Expected output:

[
{
"id": "urn:oid:2.49.0.1.840.0.840f0510ab8a8d.2024061911",
"event": "Flash Flood Watch",
"severity": "Moderate",
"urgency": "Expected",
"certainty": "Likely",
"areaDesc": "Southeastern Louisiana",
"headline": "Flash Flood Watch issued for Southeastern Louisiana",
"senderName": "NWS New Orleans/Baton Rouge",
"effective": "2025-06-19T15:00:00-05:00",
"expires": "2025-06-20T09:00:00-05:00",
"status": "actual",
"messageType": "alert",
"response": "Monitor",
"description": "A flash flood watch means that conditions may develop that lead to flash flooding. Persons in the affected area should be on stand-by to take quick action if flash flooding is imminent."
}
]

Use case: Integrate into a hydrological monitoring system to track flood risk and coordinate emergency management responses.


Input Parameters

All parameters are optional. Leaving them blank returns all active alerts.

ParameterTypeDefaultDescription
Areastring2-letter state or marine code (e.g., "CA", "TX", "AM"). Leave blank for all areas.
SeveritystringAlert severity: "Extreme", "Severe", "Moderate", "Minor", "Unknown". Blank = all.
UrgencystringAlert urgency: "Immediate", "Expected", "Future", "Past", "Unknown". Blank = all.
CertaintystringCertainty level: "Observed", "Likely", "Possible", "Unlikely", "Unknown". Blank = all.
Event TypestringEvent type (e.g., "Tornado Warning", "Flash Flood Watch"). Blank = all.
StatusstringAlert status: "actual", "exercise", "test", "system". Blank = all.
Message TypestringMessage type: "alert", "update", "cancel". Blank = all.
Max Resultsinteger1000Maximum alerts to return. Min 1, max 20,000.

Output Fields

Each alert record contains the following fields:

FieldTypeDescription
idstringUnique NWS identifier (URN format)
eventstringAlert event type (e.g., "Tornado Warning", "Heat Advisory")
severitystringSeverity level (Extreme, Severe, Moderate, Minor, Unknown)
urgencystringUrgency level (Immediate, Expected, Future, Past, Unknown)
certaintystringCertainty level (Observed, Likely, Possible, Unlikely, Unknown)
areaDescstringGeographic area description (e.g., "Austin; Travis County")
headlinestringShort summary of the alert
senderNamestringNWS office that issued the alert (e.g., "NWS Austin/San Antonio")
effectivestringISO 8601 timestamp when alert becomes effective
expiresstringISO 8601 timestamp when alert expires
statusstringAlert status (actual, exercise, test, system)
messageTypestringMessage type (alert, update, cancel)
responsestringRecommended action (Execute, Issue, Monitor, Prepare, Respond, etc.)
descriptionstringFull alert description and instructions

Output Example

{
"id": "urn:oid:2.49.0.1.840.0.840f0510ab8a8d.2024061912",
"event": "Tornado Warning",
"severity": "Severe",
"urgency": "Immediate",
"certainty": "Likely",
"areaDesc": "Austin; Travis County",
"headline": "Tornado Warning issued for Travis County in south central Texas",
"senderName": "NWS Austin/San Antonio",
"effective": "2025-06-19T14:30:00-05:00",
"expires": "2025-06-19T15:30:00-05:00",
"status": "actual",
"messageType": "alert",
"response": "Execute",
"description": "A tornado warning means that a tornado has been sighted or indicated by weather radar, and there is a significant threat to life and property to those in the path of the tornado. Move to an interior room on the lowest floor of a sturdy building. Avoid windows. If in a mobile home, evacuate to a sturdy building now. Wind damage to mobile homes can result in loss of life and injuries. Refer to NOAA's Storm Data and Unusual Weather Phenomena annual publication at https://www.ncei.noaa.gov/products/suggest-public-data-dataset for more details."
}

Pricing

This Actor uses the free NWS API (no usage limits, no API key required). You pay only for Apify compute time.

  • Compute cost: ~$0.0001-0.001 per run (depends on data volume and API latency)
  • Typical cost per batch: $0.01-0.05 for 1-1000 alerts
  • Bulk runs (1000+ alerts): ~$0.05-0.20 per run

The NWS API itself is completely free — no subscriptions, no per-request charges.

FAQ

Q: Do I need an API key? A: No. The NWS API is completely free and requires no authentication.

Q: How often are alerts updated? A: The NWS updates alerts continuously as weather conditions change. Run this Actor as often as needed to get the latest alerts (every 5-30 minutes is typical for weather monitoring).

Q: How many alerts will I get? A: The number depends on current weather conditions across the US. In calm weather, there might be 0-10 alerts. During severe weather outbreaks, there can be hundreds of active alerts.

Q: Can I filter by county? A: The NWS API filters by state/marine code only. Area descriptions in the output include county information, so you can parse those results if needed.

Q: What is the difference between a Warning and a Watch? A: Warnings indicate a weather event is occurring or imminent (immediate threat). Watches indicate conditions are favorable for a weather event to develop (be prepared). Advisories indicate a weather hazard with less immediate threat than a warning.

Q: Can I use this for alerting end-users? A: Yes. You can integrate this Actor into a notification system that sends alerts to users via email, SMS, or push notifications.

Looking for other weather or environmental data sources?

Disclaimer: This Actor fetches data from the National Weather Service (NWS) API, which is maintained by NOAA. The data is public domain and free to use. Always verify NWS's terms of use at https://www.weather.gov.

Support: If you encounter issues:

  1. Check the NWS API docs: https://www.weather.gov/documentation/services-web-api
  2. Verify your input parameters match the expected formats
  3. Test the API directly: curl -H "User-Agent: (myapp, myemail@example.com)" https://api.weather.gov/alerts/active
  4. Open an issue on Apify Community or contact support

Built with ❤️ for emergency managers, weather enthusiasts, and alert distribution platforms.