---
title: "GET /gridpoints/{wfo}/{x},{y}/forecast/hourly"
method: GET
path: "/gridpoints/{wfo}/{x},{y}/forecast/hourly"
---

# GET /gridpoints/{wfo}/{x},{y}/forecast/hourly

`GET /gridpoints/{wfo}/{x},{y}/forecast/hourly`

## Request

- Base URL: `https://api.weather.gov`
- URL: `https://api.weather.gov/gridpoints/{wfo}/{x},{y}/forecast/hourly`
- Auth: one of:
  - API key in header `User-Agent`
  - API key in header `API-Key`

Returns a textual hourly forecast for a 2.5km grid area

## Query parameters

- `units` 'us' | 'si': Denotes the units used in the textual portions of the forecast.

## Headers

- `Feature-Flags` string[]

## Response `200`

A forecast for a gridpoint.

- GridpointHourlyForecastGeoJson: A GeoJSON feature. Please refer to IETF RFC 7946 for information on the GeoJSON format.
  - `@context` union
    - unknown[]
      - unknown
    - object
  - `id` string, uri
  - `type` 'Feature', required
  - `geometry` union, required: A GeoJSON geometry object. Please refer to IETF RFC 7946 for information on the GeoJSON format.
    - object
      - `type` 'Point', required
      - `coordinates` number[], required: A GeoJSON coordinate. Please refer to IETF RFC 7946 for information on the GeoJSON format.
      - `bbox` number[]: A GeoJSON bounding box. Please refer to IETF RFC 7946 for information on the GeoJSON format.
    - object
      - `type` 'LineString', required
      - `coordinates` GeoJsonCoordinate[], required: A GeoJSON line string. Please refer to IETF RFC 7946 for information on the GeoJSON format.
        - number[]: A GeoJSON coordinate. Please refer to IETF RFC 7946 for information on the GeoJSON format.
      - `bbox` number[]: A GeoJSON bounding box. Please refer to IETF RFC 7946 for information on the GeoJSON format.
    - object
      - `type` 'Polygon', required
      - `coordinates` array[], required: A GeoJSON polygon. Please refer to IETF RFC 7946 for information on the GeoJSON format.
        - GeoJsonCoordinate[]
          - number[]: A GeoJSON coordinate. Please refer to IETF RFC 7946 for information on the GeoJSON format.
      - `bbox` number[]: A GeoJSON bounding box. Please refer to IETF RFC 7946 for information on the GeoJSON format.
    - object
      - `type` 'MultiPoint', required
      - `coordinates` GeoJsonCoordinate[], required
        - number[]: A GeoJSON coordinate. Please refer to IETF RFC 7946 for information on the GeoJSON format.
      - `bbox` number[]: A GeoJSON bounding box. Please refer to IETF RFC 7946 for information on the GeoJSON format.
    - object
      - `type` 'MultiLineString', required
      - `coordinates` GeoJsonLineString[], required
        - GeoJsonCoordinate[]: A GeoJSON line string. Please refer to IETF RFC 7946 for information on the GeoJSON format.
          - number[]: A GeoJSON coordinate. Please refer to IETF RFC 7946 for information on the GeoJSON format.
      - `bbox` number[]: A GeoJSON bounding box. Please refer to IETF RFC 7946 for information on the GeoJSON format.
    - object
      - `type` 'MultiPolygon', required
      - `coordinates` GeoJsonPolygon[], required
        - array[]: A GeoJSON polygon. Please refer to IETF RFC 7946 for information on the GeoJSON format.
          - GeoJsonCoordinate[]
            - number[]: A GeoJSON coordinate. Please refer to IETF RFC 7946 for information on the GeoJSON format.
      - `bbox` number[]: A GeoJSON bounding box. Please refer to IETF RFC 7946 for information on the GeoJSON format.
  - `properties` object, required: An hourly forecast for a 2.5km grid square.
    - `@context` union
      - unknown[]
        - unknown
      - object
    - `geometry` string, wkt, nullable: A geometry represented in Well-Known Text (WKT) format.
    - `units` 'us' | 'si': Denotes the units used in the textual portions of the forecast.
    - `forecastGenerator` string: The internal generator class used to create the forecast text (used for NWS debugging).
    - `generatedAt` string, date-time: The time this forecast data was generated.
    - `updateTime` string, date-time: The last update time of the data this forecast was generated from.
    - `validTimes` union: A time interval in ISO 8601 format. This can be one of: 1. Start and end time 2. Start time and duration 3. Duration and end time The string "NOW" can also be used in place of a start/end time.
      - string
      - string
      - string
    - `elevation` QuantitativeValue: A structured value representing a measurement and its unit of measure. This object is a slightly modified version of the schema.org definition at https://schema.org/QuantitativeValue
      - `value` number, nullable: A measured value
      - `maxValue` number: The maximum value of a range of measured values
      - `minValue` number: The minimum value of a range of measured values
      - `unitCode` string: A string denoting a unit of measure, expressed in the format "{unit}" or "{namespace}:{unit}". Units with the namespace "wmo" or "wmoUnit" are defined in the World Meteorological Organization Codes Registry at http://codes.wmo.int/common/unit and should be canonically resolvable to http://codes.wmo.int/common/unit/{unit}. Units with the namespace "nwsUnit" are currently custom and do not align to any standard. Units with no namespace or the namespace "uc" are compliant with the Unified Code for Units of Measure syntax defined at https://unitsofmeasure.org/. This also aligns with recent versions of the Geographic Markup Language (GML) standard, the IWXXM standard, and OGC Observations and Measurements v2.0 (ISO/DIS 19156). Namespaced units are considered deprecated. We will be aligning API to use the same standards as GML/IWXXM in the future.
      - `qualityControl` 'Z' | 'C' | 'S' | 'V' | 'X' | 'Q' | 'G' | 'B' | 'T': For values in observation records, the quality control flag from the MADIS system. The definitions of these flags can be found at https://madis.ncep.noaa.gov/madis_sfc_qc_notes.shtml
    - `periods` GridpointHourlyForecastPeriod[]: An array of forecast periods.
      - `number` integer: Sequential period number.
      - `name` string: A textual identifier for the period. This value will not be present for hourly forecasts.
      - `startTime` string, date-time: The starting time that this forecast period is valid for.
      - `endTime` string, date-time: The ending time that this forecast period is valid for.
      - `isDaytime` boolean: Indicates whether this period is daytime or nighttime.
      - `temperature` union: High/low temperature for the period, depending on whether the period is day or night. This property as an integer value is deprecated. Future versions will express this value as a quantitative value object. To make use of the future standard format now, set the "forecast_temperature_qv" feature flag on the request.
        - QuantitativeValue: A structured value representing a measurement and its unit of measure. This object is a slightly modified version of the schema.org definition at https://schema.org/QuantitativeValue
          - `value` number, nullable: A measured value
          - `maxValue` number: The maximum value of a range of measured values
          - `minValue` number: The minimum value of a range of measured values
          - `unitCode` string: A string denoting a unit of measure, expressed in the format "{unit}" or "{namespace}:{unit}". Units with the namespace "wmo" or "wmoUnit" are defined in the World Meteorological Organization Codes Registry at http://codes.wmo.int/common/unit and should be canonically resolvable to http://codes.wmo.int/common/unit/{unit}. Units with the namespace "nwsUnit" are currently custom and do not align to any standard. Units with no namespace or the namespace "uc" are compliant with the Unified Code for Units of Measure syntax defined at https://unitsofmeasure.org/. This also aligns with recent versions of the Geographic Markup Language (GML) standard, the IWXXM standard, and OGC Observations and Measurements v2.0 (ISO/DIS 19156). Namespaced units are considered deprecated. We will be aligning API to use the same standards as GML/IWXXM in the future.
          - `qualityControl` 'Z' | 'C' | 'S' | 'V' | 'X' | 'Q' | 'G' | 'B' | 'T': For values in observation records, the quality control flag from the MADIS system. The definitions of these flags can be found at https://madis.ncep.noaa.gov/madis_sfc_qc_notes.shtml
        - integer
      - `temperatureUnit` 'F' | 'C': The unit of the temperature value (Fahrenheit or Celsius). This property is deprecated. Future versions will indicate the unit within the quantitative value object for the temperature property. To make use of the future standard format now, set the "forecast_temperature_qv" feature flag on the request.
      - `temperatureTrend` 'rising' | 'falling', nullable: If not null, indicates a non-diurnal temperature trend for the period (either rising temperature overnight, or falling temperature during the day)
      - `probabilityOfPrecipitation` QuantitativeValue: A structured value representing a measurement and its unit of measure. This object is a slightly modified version of the schema.org definition at https://schema.org/QuantitativeValue
        - `value` number, nullable: A measured value
        - `maxValue` number: The maximum value of a range of measured values
        - `minValue` number: The minimum value of a range of measured values
        - `unitCode` string: A string denoting a unit of measure, expressed in the format "{unit}" or "{namespace}:{unit}". Units with the namespace "wmo" or "wmoUnit" are defined in the World Meteorological Organization Codes Registry at http://codes.wmo.int/common/unit and should be canonically resolvable to http://codes.wmo.int/common/unit/{unit}. Units with the namespace "nwsUnit" are currently custom and do not align to any standard. Units with no namespace or the namespace "uc" are compliant with the Unified Code for Units of Measure syntax defined at https://unitsofmeasure.org/. This also aligns with recent versions of the Geographic Markup Language (GML) standard, the IWXXM standard, and OGC Observations and Measurements v2.0 (ISO/DIS 19156). Namespaced units are considered deprecated. We will be aligning API to use the same standards as GML/IWXXM in the future.
        - `qualityControl` 'Z' | 'C' | 'S' | 'V' | 'X' | 'Q' | 'G' | 'B' | 'T': For values in observation records, the quality control flag from the MADIS system. The definitions of these flags can be found at https://madis.ncep.noaa.gov/madis_sfc_qc_notes.shtml
      - `dewpoint` QuantitativeValue: A structured value representing a measurement and its unit of measure. This object is a slightly modified version of the schema.org definition at https://schema.org/QuantitativeValue
        - `value` number, nullable: A measured value
        - `maxValue` number: The maximum value of a range of measured values
        - `minValue` number: The minimum value of a range of measured values
        - `unitCode` string: A string denoting a unit of measure, expressed in the format "{unit}" or "{namespace}:{unit}". Units with the namespace "wmo" or "wmoUnit" are defined in the World Meteorological Organization Codes Registry at http://codes.wmo.int/common/unit and should be canonically resolvable to http://codes.wmo.int/common/unit/{unit}. Units with the namespace "nwsUnit" are currently custom and do not align to any standard. Units with no namespace or the namespace "uc" are compliant with the Unified Code for Units of Measure syntax defined at https://unitsofmeasure.org/. This also aligns with recent versions of the Geographic Markup Language (GML) standard, the IWXXM standard, and OGC Observations and Measurements v2.0 (ISO/DIS 19156). Namespaced units are considered deprecated. We will be aligning API to use the same standards as GML/IWXXM in the future.
        - `qualityControl` 'Z' | 'C' | 'S' | 'V' | 'X' | 'Q' | 'G' | 'B' | 'T': For values in observation records, the quality control flag from the MADIS system. The definitions of these flags can be found at https://madis.ncep.noaa.gov/madis_sfc_qc_notes.shtml
      - `relativeHumidity` QuantitativeValue: A structured value representing a measurement and its unit of measure. This object is a slightly modified version of the schema.org definition at https://schema.org/QuantitativeValue
        - `value` number, nullable: A measured value
        - `maxValue` number: The maximum value of a range of measured values
        - `minValue` number: The minimum value of a range of measured values
        - `unitCode` string: A string denoting a unit of measure, expressed in the format "{unit}" or "{namespace}:{unit}". Units with the namespace "wmo" or "wmoUnit" are defined in the World Meteorological Organization Codes Registry at http://codes.wmo.int/common/unit and should be canonically resolvable to http://codes.wmo.int/common/unit/{unit}. Units with the namespace "nwsUnit" are currently custom and do not align to any standard. Units with no namespace or the namespace "uc" are compliant with the Unified Code for Units of Measure syntax defined at https://unitsofmeasure.org/. This also aligns with recent versions of the Geographic Markup Language (GML) standard, the IWXXM standard, and OGC Observations and Measurements v2.0 (ISO/DIS 19156). Namespaced units are considered deprecated. We will be aligning API to use the same standards as GML/IWXXM in the future.
        - `qualityControl` 'Z' | 'C' | 'S' | 'V' | 'X' | 'Q' | 'G' | 'B' | 'T': For values in observation records, the quality control flag from the MADIS system. The definitions of these flags can be found at https://madis.ncep.noaa.gov/madis_sfc_qc_notes.shtml
      - `windSpeed` union: Wind speed for the period. This property as an string value is deprecated. Future versions will express this value as a quantitative value object. To make use of the future standard format now, set the "forecast_wind_speed_qv" feature flag on the request.
        - QuantitativeValue: A structured value representing a measurement and its unit of measure. This object is a slightly modified version of the schema.org definition at https://schema.org/QuantitativeValue
          - `value` number, nullable: A measured value
          - `maxValue` number: The maximum value of a range of measured values
          - `minValue` number: The minimum value of a range of measured values
          - `unitCode` string: A string denoting a unit of measure, expressed in the format "{unit}" or "{namespace}:{unit}". Units with the namespace "wmo" or "wmoUnit" are defined in the World Meteorological Organization Codes Registry at http://codes.wmo.int/common/unit and should be canonically resolvable to http://codes.wmo.int/common/unit/{unit}. Units with the namespace "nwsUnit" are currently custom and do not align to any standard. Units with no namespace or the namespace "uc" are compliant with the Unified Code for Units of Measure syntax defined at https://unitsofmeasure.org/. This also aligns with recent versions of the Geographic Markup Language (GML) standard, the IWXXM standard, and OGC Observations and Measurements v2.0 (ISO/DIS 19156). Namespaced units are considered deprecated. We will be aligning API to use the same standards as GML/IWXXM in the future.
          - `qualityControl` 'Z' | 'C' | 'S' | 'V' | 'X' | 'Q' | 'G' | 'B' | 'T': For values in observation records, the quality control flag from the MADIS system. The definitions of these flags can be found at https://madis.ncep.noaa.gov/madis_sfc_qc_notes.shtml
        - string
      - `windGust` union: Peak wind gust for the period. This property as an string value is deprecated. Future versions will express this value as a quantitative value object. To make use of the future standard format now, set the "forecast_wind_speed_qv" feature flag on the request.
        - QuantitativeValue: A structured value representing a measurement and its unit of measure. This object is a slightly modified version of the schema.org definition at https://schema.org/QuantitativeValue
          - `value` number, nullable: A measured value
          - `maxValue` number: The maximum value of a range of measured values
          - `minValue` number: The minimum value of a range of measured values
          - `unitCode` string: A string denoting a unit of measure, expressed in the format "{unit}" or "{namespace}:{unit}". Units with the namespace "wmo" or "wmoUnit" are defined in the World Meteorological Organization Codes Registry at http://codes.wmo.int/common/unit and should be canonically resolvable to http://codes.wmo.int/common/unit/{unit}. Units with the namespace "nwsUnit" are currently custom and do not align to any standard. Units with no namespace or the namespace "uc" are compliant with the Unified Code for Units of Measure syntax defined at https://unitsofmeasure.org/. This also aligns with recent versions of the Geographic Markup Language (GML) standard, the IWXXM standard, and OGC Observations and Measurements v2.0 (ISO/DIS 19156). Namespaced units are considered deprecated. We will be aligning API to use the same standards as GML/IWXXM in the future.
          - `qualityControl` 'Z' | 'C' | 'S' | 'V' | 'X' | 'Q' | 'G' | 'B' | 'T': For values in observation records, the quality control flag from the MADIS system. The definitions of these flags can be found at https://madis.ncep.noaa.gov/madis_sfc_qc_notes.shtml
        - string
      - `windDirection` 'N' | 'NNE' | 'NE' | 'ENE' | 'E' | 'ESE' | 'SE' | 'SSE' | 'S' | 'SSW' | 'SW' | 'WSW' | 'W' | 'WNW' | 'NW' | 'NNW': The prevailing direction of the wind for the period, using a 16-point compass.
      - `icon` string, uri: A link to an icon representing the forecast summary.
      - `shortForecast` string: A brief textual forecast summary for the period.
      - `detailedForecast` string: A detailed textual forecast for the period.

## Other responses

- `default`: An error response.

## Changes

- **2026-07-13** `941dbd15eabe`: 5 breaking, 2 info
  - added `subschema #1, subschema #2, subschema #3` to the `allOf[#/components/schemas/GridpointHourlyForecast]/validTimes` response property `oneOf` list for the response status `200` (media type: application/ld+json)
  - added `subschema #1, subschema #2, subschema #3` to the `allOf[subschema #2]/properties/validTimes` response property `oneOf` list for the response status `200` (media type: application/geo+json)
  - added `subschema #3` to the `allOf[#/components/schemas/GridpointHourlyForecast]/periods/items/windGust` response property `oneOf` list for the response status `200` (media type: application/ld+json)
  - added `subschema #3` to the `allOf[subschema #2]/properties/periods/items/windGust` response property `oneOf` list for the response status `200` (media type: application/geo+json)
  - …3 more
- **2025-06-07** `976fe2474d79`: 2 info
  - added `#/components/schemas/GridpointHourlyForecast` to the response body `allOf` list for the response status `200` (media type: application/ld+json)
  - removed `#/components/schemas/GridpointForecast` from the response body `allOf` list for the response status `200` (media type: application/ld+json)

[Operation history](https://skmtc.dev/weather/apis/weather-gov-api/changes/gridpoints/:wfo/:x,:y/forecast/hourly/get.md)

---

[API](https://skmtc.dev/weather/apis/weather-gov-api.md) - [All operations](https://skmtc.dev/weather/apis/weather-gov-api/llms.txt) - [OpenAPI document](https://skmtc.dev/weather/apis/weather-gov-api/revisions/ed43606f373e?raw)
