Severe Weather Alerts API
This API returns severe weather alerts issued by local meteorological agencies.
Current supported countries include: The USA via NOAA. European Union member nations, the United Kingdom, and Israel via Meteoalarm. As well as weather alerts for Canada via Environment Canada, and China via the China Meteorological Administration. Alert text is commonly returned in the local language of the source country.
Request Parameters
| Field | Optional/Required | Type | Data Type | Description |
|---|---|---|---|---|
lat
|
Optional | query | number | Latitude component of location. |
lon
|
Optional | query | number | Longitude component of location. |
city
|
Optional | query | string | City search.. Example - &city=Raleigh,NC or &city=Berlin,DE or city=Paris&country=FR |
postal_code
|
Optional | query | string | Postal Code. Example: 28546 |
country
|
Optional | query | string | Country Code (2 letter) - to be used with postal_code. |
station
|
Optional | query | string | Station Call ID. |
key
|
Required | query | string | Your registered API key. |
* One of the following location methods is required: lat/lon (recommended), city,ST + country, postal_code + country or station ID .
Example Requests
lat/lon (recommended)
https://api.weatherbit.io/v2.0/alerts?key=API_KEY&lat=40.08748&lon=-108.80483
curl -s "https://api.weatherbit.io/v2.0/alerts?key=API_KEY&lat=40.08748&lon=-108.80483"
require 'uri'
require 'net/http'
require 'json'
uri = URI("https://api.weatherbit.io/v2.0/alerts?key=API_KEY&lat=40.08748&lon=-108.80483")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = (uri.scheme == "https")
request = Net::HTTP::Get.new(uri)
response = http.request(request)
json = JSON.parse(response.body)
puts JSON.pretty_generate(json)
const https = require("https");
https.get("https://api.weatherbit.io/v2.0/alerts?key=API_KEY&lat=40.08748&lon=-108.80483", (res) => {
let raw = "";
res.on("data", (chunk) => { raw += chunk; });
res.on("end", () => {
const json = JSON.parse(raw);
console.log(JSON.stringify(json, null, 2));
});
}).on("error", (err) => {
console.error(err.message);
});
# pip install python-weatherbit
# https://pypi.org/project/pyweatherbit/
from weatherbit.api import Api
api = Api("YOUR_API_KEY")
response = api.get_alerts(lat='35.7796', lon='-78.6382').get()
print(response)
Example Response HTTP 200
{
"alerts": [
{
"description": "The National Weather Service in Grand Junction has issued a Fire\nWeather Watch for gusty winds, low relative humidity and dry\nfuels, which is in effect from Saturday afternoon through\nSaturday evening.\n\n* AFFECTED AREA...In Colorado, Fire Weather Zone 200 Little\nSnake Forecast Area and Fire Weather Zone 202 White River\nForecast Area. In Utah, Fire Weather Zone 486 Eastern Uinta\nBasin and Fire Weather Zone 487 Book Cliffs.\n\n* TIMING...For the Red Flag Warning, until 7 PM MDT this\nevening. For the Fire Weather Watch, from Saturday afternoon\nthrough Saturday evening.\n\n* WINDS...Southwest 15 to 25 mph with gusts up to 40 mph.\n\n* RELATIVE HUMIDITY...7 to 12 percent.\n\n* IMPACTS...Fires will catch and spread quickly. Exercise\nextreme caution with any outdoor burning.",
"effective_local": "2026-06-04T11:25:00",
"effective_utc": "2026-06-04T17:25:00",
"ends_local": "2026-06-04T19:00:00",
"ends_utc": "2026-06-05T01:00:00",
"expires_local": "2026-06-04T19:30:00",
"expires_utc": "2026-06-05T01:30:00",
"onset_local": "2026-06-04T13:00:00",
"onset_utc": "2026-06-04T19:00:00",
"regions": [
"Little Snake",
" White River",
" Eastern Uintah Basin",
" Book Cliffs"
],
"severity": "Warning",
"title": "Red Flag Warning issued June 4 at 11:25AM MDT until June 4 at 7:00PM MDT by NWS Grand Junction CO",
"uri": "https://api.weather.gov/alerts/urn:oid:2.49.0.1.840.0.043a0ea93889704a197ec63f516bdec1aa2834c2.001.2"
},
{
"description": "The National Weather Service in Grand Junction has issued a Fire\nWeather Watch for gusty winds, low relative humidity and dry\nfuels, which is in effect from Saturday afternoon through\nSaturday evening.\n\n* AFFECTED AREA...In Colorado, Fire Weather Zone 200 Little\nSnake Forecast Area and Fire Weather Zone 202 White River\nForecast Area. In Utah, Fire Weather Zone 486 Eastern Uinta\nBasin and Fire Weather Zone 487 Book Cliffs.\n\n* TIMING...For the Red Flag Warning, until 7 PM MDT this\nevening. For the Fire Weather Watch, from Saturday afternoon\nthrough Saturday evening.\n\n* WINDS...Southwest 15 to 25 mph with gusts up to 40 mph.\n\n* RELATIVE HUMIDITY...7 to 12 percent.\n\n* IMPACTS...Fires will catch and spread quickly. Exercise\nextreme caution with any outdoor burning.",
"effective_local": "2026-06-04T11:25:00",
"effective_utc": "2026-06-04T17:25:00",
"ends_local": "2026-06-06T21:00:00",
"ends_utc": "2026-06-07T03:00:00",
"expires_local": "2026-06-04T19:30:00",
"expires_utc": "2026-06-05T01:30:00",
"onset_local": "2026-06-06T12:00:00",
"onset_utc": "2026-06-06T18:00:00",
"regions": [
"Little Snake",
" White River",
" Eastern Uintah Basin",
" Book Cliffs"
],
"severity": "Watch",
"title": "Fire Weather Watch issued June 4 at 11:25AM MDT until June 6 at 9:00PM MDT by NWS Grand Junction CO",
"uri": "https://api.weather.gov/alerts/urn:oid:2.49.0.1.840.0.043a0ea93889704a197ec63f516bdec1aa2834c2.001.1"
},
{
"description": "The National Weather Service in Grand Junction has issued a Fire\nWeather Watch for gusty winds, low relative humidity and dry\nfuels, which is in effect from Saturday afternoon through\nSaturday evening.\n\n* AFFECTED AREA...In Colorado, Fire Weather Zone 203 Lower\nColorado River, Fire Weather Zone 207 Southwest Colorado Lower\nForecast Area, Fire Weather Zone 290 Paradox Valley Forecast\nArea and Fire Weather Zone 292 North Fork Forecast Area. In\nUtah, Fire Weather Zone 490 Colorado River Basin and Fire Weather Zone 491 Southeast Utah.\n\n* TIMING...From Saturday afternoon through Saturday evening.\n\n* WINDS...Southwest 10 to 20 mph with gusts up to 40 mph.\n\n* RELATIVE HUMIDITY...6 to 11 percent.\n\n* IMPACTS...Fires will catch and spread quickly. Exercise\nextreme caution with any outdoor burning.",
"effective_local": "2026-06-04T11:25:00",
"effective_utc": "2026-06-04T17:25:00",
"ends_local": "2026-06-06T21:00:00",
"ends_utc": "2026-06-07T03:00:00",
"expires_local": "2026-06-04T19:30:00",
"expires_utc": "2026-06-05T01:30:00",
"onset_local": "2026-06-06T12:00:00",
"onset_utc": "2026-06-06T18:00:00",
"regions": [
"Lower Colorado River",
" Southwest Colorado Lower Forecast Area",
" Paradox Valley",
" North Fork",
" Colorado River Basin",
" Southeast Utah"
],
"severity": "Watch",
"title": "Fire Weather Watch issued June 4 at 11:25AM MDT until June 6 at 9:00PM MDT by NWS Grand Junction CO",
"uri": "https://api.weather.gov/alerts/urn:oid:2.49.0.1.840.0.043a0ea93889704a197ec63f516bdec1aa2834c2.002.1"
}
],
"city_name": "Rangely",
"country_code": "US",
"lat": 40.08748,
"lon": -108.80483,
"state_code": "CO",
"timezone": "America/Denver"
}
HTTP Statuses
| Code | Description | Example |
|---|---|---|
| 200 | Weather Alert Object. | - |
| 204 | No Data Found | - |
| 400 | Client Error |
|
| 403 | Unauthorized/No Access for current plan level |
|
| 429 | Daily or Velocity limit exceeded See rate limit guidance. |
|
| 500 | Internal Server Error |
|
Return Fields
| Field | Data Type | Description |
|---|---|---|
city_name
|
string | Nearest city name |
country_code
|
string | Country code |
lat
|
number | Latitude |
lon
|
number | Longitude |
state_code
|
string | State or region code |
timezone
|
string | Timezone for the requested location |
alerts
|
array<WeatherAlertGroup> | |
alerts[].title
|
string | Brief description of weather alert (Typically in local language) |
alerts[].description
|
string | Full description of weather alert (Typically in local language) |
alerts[].severity
|
string | Severity of weather. (Advisory | Watch | Warning) |
alerts[].effective_utc
|
string | Alert issued time UTC |
alerts[].effective_local
|
string | Alert issued time local |
alerts[].expires_utc
|
string | Alert expiration time UTC |
alerts[].expires_local
|
string | Alert expiration time local |
alerts[].onset_utc
|
string | Weather event onset time UTC |
alerts[].onset_local
|
string | Weather event onset time local |
alerts[].ends_utc
|
string | Weather event end time UTC |
alerts[].ends_local
|
string | Weather event end time local |
alerts[].uri
|
string | URI to weather alert |
alerts[].regions
|
array<string> |