MaverickWX

NWS Guide

Browse the API

Every endpoint on api.weather.gov — what it returns, who wants it, and a worked example.

Built from the live OpenAPI spec (version 3.11.0) on 2026-09-09. New here? Start with how it thinks.

7 endpoints shown in Observations & Stations

Observations & Stations

What the weather is doing right now, as measured by thousands of ground stations — mostly at airports.

GET https://api.weather.gov/stations

The full directory of observation stations: identifier, name, coordinates, elevation and time zone. It is a long list — thousands of entries — so it is paginated.

Developers building a station picker or map.

4 parameters
Name In Required Notes
id query no Filter by observation station ID array
state query no Filter by state/marine area code array
limit query no Limit integer
cursor query no Pagination cursor string
Worked example

Worked example

https://api.weather.gov/stations?limit=10

cURL

curl "https://api.weather.gov/stations?limit=10" \
  -H "User-Agent: (myweatherapp.example.com, [email protected])"
GET https://api.weather.gov/stations/{stationId}

Metadata for one station: where it is, how high it sits, and what it is called.

Anyone who has a station ID and wants to know what and where it is.

Worked example

Worked example

https://api.weather.gov/stations/KTOP

cURL

curl "https://api.weather.gov/stations/KTOP" \
  -H "User-Agent: (myweatherapp.example.com, [email protected])"
GET https://api.weather.gov/stations/{stationId}/observations

A history of observations from one station over a time range — the raw material for “how did today actually go”.

Researchers, insurance and legal work, and anyone charting recent conditions.

4 parameters
Name In Required Notes
start query no Start time string (date-time)
end query no End time string (date-time)
cursor query no Pagination cursor string
limit query no Limit integer
Worked example

Worked example

https://api.weather.gov/stations/KTOP/observations?limit=5

cURL

curl "https://api.weather.gov/stations/KTOP/observations?limit=5" \
  -H "User-Agent: (myweatherapp.example.com, [email protected])"
GET https://api.weather.gov/stations/{stationId}/observations/{time}

The observation from one station at one exact timestamp.

Anyone reconstructing conditions at a specific moment — an accident, a flight, a game.

1 parameter
Name In Required Notes
time path yes Timestamp of requested observation string (date-time)
GET https://api.weather.gov/stations/{stationId}/observations/latest

The most recent observation from one station: temperature, dewpoint, wind, pressure, visibility and present weather. Most of these stations sit at airports and report automatically about once an hour, sometimes more often when conditions change quickly.

Anyone showing “current conditions”. Also pilots, and anyone verifying whether a forecast actually verified.

1 parameter
Name In Required Notes
require_qc query no Require QC boolean
Worked example

Worked example

https://api.weather.gov/stations/KTOP/observations/latest

Topeka Regional Airport, Kansas.

cURL

curl "https://api.weather.gov/stations/KTOP/observations/latest" \
  -H "User-Agent: (myweatherapp.example.com, [email protected])"
GET https://api.weather.gov/zones/forecast/{zoneId}/observations

Recent observations from all the stations inside one forecast zone.

Local sites that want a picture of conditions across a whole community, not one airport.

3 parameters
Name In Required Notes
start query no Start date/time string (date-time)
end query no End date/time string (date-time)
limit query no Limit integer
Worked example

Worked example

https://api.weather.gov/zones/forecast/KSZ009/observations

cURL

curl "https://api.weather.gov/zones/forecast/KSZ009/observations" \
  -H "User-Agent: (myweatherapp.example.com, [email protected])"
GET https://api.weather.gov/zones/forecast/{zoneId}/stations

Which observation stations fall inside a given forecast zone.

Developers assembling a local observation network view.

Worked example

Worked example

https://api.weather.gov/zones/forecast/KSZ009/stations

cURL

curl "https://api.weather.gov/zones/forecast/KSZ009/stations" \
  -H "User-Agent: (myweatherapp.example.com, [email protected])"

Show all 69 endpoints