National Weather Service API (api.weather.gov)
National Weather Service API (api.weather.gov)
Official U.S. forecasts, alerts and observations through api.weather.gov. Point lookups resolve coordinates to seven-day hourly, 12-hour and grid forecast endpoints. No key; every request needs a User-Agent.
Required Attribution:
No attribution requirement stated. NWS: a copyrighted work that consists predominantly of NWS material must identify the NWS material and state that it is not subject to copyright protection (17 U.S.C. § 403). Do not imply NOAA/NWS endorsement.
Coverage
United States and its territories where NWS offices issue products. Point forecasts use each office's roughly 2.5 km grid and expose hourly and 12-hour periods for the next seven days. Alerts cover the past seven days; observation timing and history vary by endpoint.
Verdict
A short-range U.S. weather signal for energy, agriculture and event-risk agents: upcoming temperature, wind, precipitation probability and forecast text. Forecasts change as offices update them, times are ISO 8601 with offsets, and this is not a historical forecast archive. NWS says delivery timing is not assured. The numeric rate limit is not public; cache point mappings and poll near the product refresh cycle.
Get the free weekly email
Free weekly email of newly verified free data. Unsubscribe by emailing us.
By entering your email and clicking Subscribe, you agree to receive the Signal Lab weekly email from Quantum Data Technologies Ltd., 3200-650 West Georgia Street, Vancouver, BC V6B 4P7, Canada (signal-lab@qdt.ai). You can unsubscribe at any time: reply "unsubscribe" to any email or write to signal-lab@qdt.ai. See our Privacy Policy.
Use in your agent
Load an NWS hourly point forecast into pandas and Parquet. Checked against the provider's documentation on Oct 30, 2026.
Access
- No account or API key.
- A User-Agent header is required. Observed 2026-10-30: omitting the header returned HTTP 403.
Request
curl -H 'User-Agent: SignalLabCatalog/1.0 (catalog@signal-lab.example)' 'https://api.weather.gov/points/41.88,-87.63'Format
GeoJSON/JSON-LD. The /points response links to forecastHourly; that response contains a properties.periods array with ISO 8601 times and forecast fields.
Load into pandas and Parquet
Needs Python 3 with requests, pandas and pyarrow.
"""NWS hourly point forecast for Chicago -> pandas -> Parquet. No key."""
import requests
import pandas as pd
HEADERS = {"User-Agent": "SignalLabCatalog/1.0 (catalog@signal-lab.example)"}
point = requests.get("https://api.weather.gov/points/41.88,-87.63", headers=HEADERS, timeout=30)
point.raise_for_status()
forecast_url = point.json()["properties"]["forecastHourly"]
forecast = requests.get(forecast_url, headers=HEADERS, timeout=30)
forecast.raise_for_status()
df = pd.DataFrame(forecast.json()["properties"]["periods"])
df["startTime"] = pd.to_datetime(df["startTime"], utc=True)
df["endTime"] = pd.to_datetime(df["endTime"], utc=True)
df.to_parquet("nws_chicago_hourly.parquet", index=False)
print(len(df), "hourly periods", df["startTime"].min().isoformat(), "to", df["startTime"].max().isoformat())Run by us on 2026-10-30 (python 3.13.5 | pandas 3.1.0 | pyarrow 26.0.0 | requests 2.34.2). Result: 156 hourly periods 2026-10-30T14:00:00+00:00 to 2026-11-06T01:00:00+00:00
Limits
- Rate limit: Not stated. NWS says the numeric limit is not public.
- The hourly point forecast covers the next seven days.
Quirks
- Resolve coordinates through /points, then follow properties.forecastHourly; office and grid coordinates can change.
- Forecast timestamps carry offsets. Convert with utc=True before combining locations.
- This endpoint gives the current forecast, not a historical forecast archive.
Terms and attribution
- NWS information is generally public-domain material unless marked otherwise. Do not claim it as your own, imply endorsement, or present modified content as official material.
- Check product timestamps and third-party markings.
Sources
- https://www.weather.gov/documentation/services-web-api: “All of the information presented via the API is intended to be open data, free to use for any purpose.”
- https://www.weather.gov/documentation/services-web-api: “A User Agent is required to identify your application.”
- https://www.weather.gov/documentation/services-web-api: “The rate limit is not public information, but allows a generous amount for typical use.”
- https://www.weather.gov/disclaimer: “The information on National Weather Service (NWS) Web pages are in the public domain, unless specifically noted otherwise, and may be used without charge for any lawful purpose”
Information and education only. Not financial, investment, legal or tax advice. Listings can be inaccurate, incomplete or out of date and are provided "as is". Free tiers, limits and licenses belong to each provider and can change, so check the provider's own terms before you rely on them. Terms & Disclaimer