A powerful storm will track across the Southwest with additional heavy precipitation and strong winds. This storm will track into the Plains and evolve into a heavy rainfall and severe weather threat from the Ohio Valley into the Mid-Mississippi Valley Thursday into Friday. The next system is forecast to arrive for the Pacific Northwest this week and into the weekend with wind, rain and snow. Read More >
The National Weather Service (NWS) API allows developers access to critical forecasts, alerts, and observations, along with other weather data. The API was designed with a cache-friendly approach that expires content based upon the information life cycle. The API is based upon of JSON-LD to promote machine data discovery.
The API is located at: https://api.weather.gov
Operational issues should be reported to nco.ops@noaa.gov.
General use questions can be asked on the API github site.
All of the information presented via the API is intended to be open data, free to use for any purpose. As a public service of the United States Government, we do not charge any fees for the usage of this service, although there are reasonable rate limits in place to prevent abuse and help ensure that everyone has access. The rate limit is not public information, but allows a generous amount for typical use. If the rate limit is execeed a request will return with an error, and may be retried after the limit clears (typically within 5 seconds). Proxies are more likely to reach the limit, whereas requests directly from clients are not likely.
The new API will use headers to modify the version and format of the response. Every request, either by browser or application, sends header information every time you visit any website. For example, a commonly used header called "UserAgent" tells a website what type of device you are using so it can tailor the best experience for you. No private information is shared in a header, and this is a standard practice for all government and private sites. Developers can override these headers for specific purposes (see the "API Specifications" tab for more information). You can get full details by visiting the header field definitions page at the World Wide Web Consortium site.
A User Agent is required to identify your application. This string can be anything, and the more unique to your application the less likely it will be affected by a security event. If you include contact information (website or email), we can contact you if your string is associated to a security event. This will be replaced with an API key in the future.
User-Agent: (myweatherapp.com, contact@myweatherapp.com)
Endpoints typically have a GeoJSON default format, given the inclusion of geometry data. See the Specification tab for details on each endpoint. Below are common formats available by the API.
Accept: application/cap+xml
The API will use feature flags to make new features available to consumers. The available feature flags will be noted on the "Updates" tab on this page. The feature flag will be communicated through a Service Change Notice (SCN) allowing developers a period to adopt the flag if the change impacts their applications. Once the adoption window expires, the feature will be made default. Developers can then remove the flag at their convenience.
Feature-Flag: forecast_temperature_qv
Information on outages is generally communicated through Administrative messages sent by National Center of Environmental Prediction's (NCEP's) Senior Duty Meteorologist (SDM). These are sent via WMO id NOUS42 KWNO and product identifier ADASDM.
The API uses linked data to allow applications to discover content. Similar to a web site that provides HTML links to help users navigate to each page, linked data helps applications navigate to each endpoint. You may also review the OPEN API specification on the "Specification" tab on this page, or directly using the specification endpoint (that is also used to create the tab presentation): https://api.weather.gov/openapi.json.
Forecasts are divided into 2.5km grids. Each NWS office is responsible for a section of the grid. The API endpoint for the forecast at a specific grid is:
https://api.weather.gov/gridpoints/{office}/{grid X},{grid Y}/forecast
For example: https://api.weather.gov/gridpoints/TOP/31,80/forecast
If you do not know the grid that correlates to your location, you can use the /points endpoint to retrieve the exact grid endpoint by coordinates:
https://api.weather.gov/points/{latitude},{longitude}
For example: https://api.weather.gov/points/39.7456,-97.0892
This will return the grid endpoint in the "forecast" property. Applications may cache the grid for a location to improve latency and reduce the additional lookup request. This endpoint also tells the application where to find information for issuing office, observation stations, and zones.
The API has a robust selection of filters for alerts. A common request is all active alerts for a state:
https://api.weather.gov/alerts/active?area={state}
For example: https://api.weather.gov/alerts/active?area=KS
The /alerts/active endpoint redirects internally to the root /alerts endpoint with the "active=true" parameter. Please review the "Specification" tab for all the filter options. For more detailed information on how the Weather Service geolocates alerts, please review our guide.
The information on this page is updated regularly.
There are currently no feature flags.
Before contacting us, please review the following list of issues that have been identified for a future update.
Updated 3/20/2023
The following issues are related to upstream sources of the API, and are not an API bug.
Delayed observations
Observations may be delayed up to 20 minutes from MADIS, the upstream source.
The following issues have been recently resolved:
25 Feb 2022: The gridpoints endpoint no longer serves stale data. For this endpoint we currently are not returning the Last-Modified header. In addition, the If-Modified-Since header is also being ignored for gridpoints request.
5 Jul 2022: Observations are again being sorted in chronological order.
Important! Only the following endpoints are considered operational. Changes to operational endpoints are subject to PNS and SCN notices. All other endpoints are subject to change without notice.
Note: All times generated by the API are in ISO-8601 format.