Response Format

All endpoints return JSON. Responses include data, source attribution, and cache metadata.

Common fields

Every successful response includes a sources array for attribution:

{
  "sources": [
    {
      "name": "NWS",
      "url": "https://www.weather.gov",
      "license": "Public Domain"
    }
  ]
}

See Attribution for display requirements.

Forecast schema

FieldTypeDescription
h3stringH3 cell index
updatedstringISO 8601 timestamp
periodsarrayNWS forecast periods used for hourly views
periods[].startTimestringISO 8601 period start
periods[].endTimestringISO 8601 period end
periods[].temperaturenumberPeriod temperature
periods[].temperatureUnitstringTemperature unit
periods[].precipitationProbabilitynumber | nullPrecipitation probability (0-100)
periods[].windSpeedstringWind speed summary
periods[].windDirectionstringCardinal direction (N, NE, E, etc.)
periods[].shortForecaststringHuman-readable condition
dailyPeriodsarray10 daily forecast objects when available
dailyPeriods[].datestringForecast date
dailyPeriods[].highTemperaturenumberDaily high temperature
dailyPeriods[].lowTemperaturenumberDaily low temperature
dailyPeriods[].shortForecaststringRepresentative condition
dailyPeriods[].precipitationProbabilitynumber | nullDaily precipitation probability (0-100)
dailyPeriods[].windSummarystringDaily dominant wind direction and speed
sourcesarrayAttribution array

Current conditions schema

FieldTypeDescription
h3stringH3 cell index
observedAtstringISO 8601 timestamp
stationstringMETAR station identifier
tempFnumberTemperature in Fahrenheit
feelsLikeFnumberFeels-like temperature
humiditynumberRelative humidity percentage
windSpeedMphnumberWind speed in mph
windDirectionstringCardinal direction
conditionstringHuman-readable condition
iconstringIcon identifier
sourcesarrayAttribution array

Alerts schema

FieldTypeDescription
zonestringNWS forecast zone ID
alertsarrayActive alerts (empty array if none)
alerts[].eventstringAlert event type
alerts[].severitystringminor, moderate, severe, or extreme
alerts[].headlinestringShort description
alerts[].descriptionstringFull alert text
alerts[].onsetstringISO 8601 start time
alerts[].expiresstringISO 8601 expiry time
sourcesarrayAttribution array

Air quality schema

FieldTypeDescription
h3stringH3 cell index
observedAtstringISO 8601 timestamp
aqinumberAir Quality Index (0-500)
categorystringAQI category (Good, Moderate, etc.)
primaryPollutantstringPrimary pollutant (PM2.5, O3, etc.)
sourcesarrayAttribution array

Cache headers

Responses include standard HTTP cache headers:

EndpointCache-Control max-age
Forecast900 (15 minutes)
Current900 (15 minutes)
Alerts60 (1 minute)
Air Quality900 (15 minutes)
Next: Rate Limits & Errors →