# NWS API: Get hourly forecast

> Looks up a US city, street address or ZIP code and returns up to 156 hourly National Weather Service forecasts for it.

Unofficial. Not affiliated with or endorsed by NWS.

- Page: https://fous.com/methods/weather.gov/get-hourly-forecast
- Method: `weather.gov/get_hourly_forecast`, version 1
- Website: weather.gov
- Returns: matched place, coordinates, forecast office, hourly temperature, precipitation, humidity, dew point, wind and conditions
- Effect: read (it gets data and changes nothing)
- Sign-in: none needed
- Cost: 1 credit per completed run (1¢ with pay as you go); failed runs are free
- Verified: Nov 2, 2026

## Inputs

| Field | Type | Required | In the run below | Description |
|---|---|---|---|---|
| `hours` | integer | no | `48` | Number of hourly forecasts, e.g. 48. Default 48. |
| `units` | string | no | `"fahrenheit"` | Temperature scale, e.g. fahrenheit. One of "fahrenheit", "celsius". Default "fahrenheit". |
| `location` | string | yes | `"Miami, FL"` | US city and state, street address, or ZIP code, e.g. Miami, FL. |

## Output

From a run on Oct 23, 2026, shortened. Its input:

```json
{
  "hours": 48,
  "units": "fahrenheit",
  "location": "Miami, FL"
}
```

Its output:

```json
{
  "hours": [
    {
      "dew_point": 68,
      "page_link": "https://forecast.weather.gov/MapClick.php?lat=25.77427&lon=-80.19366&FcstType=digital",
      "start_time": "2026-10-23T03:00:00-04:00",
      "wind_speed": "13 mph",
      "temperature": 75,
      "dew_point_unit": "fahrenheit",
      "short_forecast": "Partly Cloudy",
      "wind_direction": "N",
      "temperature_unit": "fahrenheit",
      "relative_humidity_percent": 79,
      "chance_of_precipitation_percent": 10
    },
    {
      "dew_point": 67,
      "page_link": "https://forecast.weather.gov/MapClick.php?lat=25.77427&lon=-80.19366&FcstType=digital",
      "start_time": "2026-10-23T04:00:00-04:00",
      "wind_speed": "13 mph",
      "temperature": 75,
      "dew_point_unit": "fahrenheit",
      "short_forecast": "Partly Cloudy",
      "wind_direction": "N",
      "temperature_unit": "fahrenheit",
      "relative_humidity_percent": 76,
      "chance_of_precipitation_percent": 7
    },
    {
      "dew_point": 67,
      "page_link": "https://forecast.weather.gov/MapClick.php?lat=25.77427&lon=-80.19366&FcstType=digital",
      "start_time": "2026-10-23T05:00:00-04:00",
      "wind_speed": "14 mph",
      "temperature": 74,
      "dew_point_unit": "fahrenheit",
      "short_forecast": "Partly Cloudy",
      "wind_direction": "N",
      "temperature_unit": "fahrenheit",
      "relative_humidity_percent": 79,
      "chance_of_precipitation_percent": 9
    }
  ],
  "grid_x": 110,
  "grid_y": 51,
  "latitude": 25.77427,
  "longitude": -80.19366,
  "updated_at": "2026-10-23T07:51:45+00:00",
  "matched_place": "Miami, Florida, United States",
  "forecast_office": "MFL"
}
```

## Run it

From code, with a Fous API key in `FOUS_API_KEY`; the answer's `data` holds the output:

```bash
curl https://api.fous.com/v1/runs \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"method":"weather.gov/get_hourly_forecast","input":{"hours":48,"units":"fahrenheit","location":"Miami, FL"}}'
```

From an AI agent connected to the Fous MCP server: its `run` with the same method and input. To connect one, give it `set up https://fous.com/SKILL.md`.

## Ask your agent

- What's the hour-by-hour forecast for Austin, TX over the next 3 days in Fahrenheit?
- I need hourly temperature, wind and rain chances for 90210 for the next 60 hours.
- Give me the next 24 hours of weather conditions in Celsius for 1600 Pennsylvania Ave NW, Washington DC.
- Can you pull up an hourly forecast on weather.gov for Portland, OR covering the next 12 hours?
- Show me humidity, dew point and hourly conditions for Denver, CO for the next 156 hours.

## Input schema

```json
{
  "type": "object",
  "required": [
    "location"
  ],
  "properties": {
    "hours": {
      "type": "integer",
      "default": 48,
      "maximum": 156,
      "minimum": 1,
      "description": "Number of hourly forecasts, e.g. 48."
    },
    "units": {
      "enum": [
        "fahrenheit",
        "celsius"
      ],
      "type": "string",
      "default": "fahrenheit",
      "description": "Temperature scale, e.g. fahrenheit."
    },
    "location": {
      "type": "string",
      "minLength": 2,
      "description": "US city and state, street address, or ZIP code, e.g. Miami, FL."
    }
  },
  "additionalProperties": false
}
```

## Output schema

```json
{
  "type": "object",
  "required": [
    "matched_place",
    "updated_at",
    "latitude",
    "longitude",
    "forecast_office",
    "grid_x",
    "grid_y",
    "hours"
  ],
  "properties": {
    "hours": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "start_time",
          "temperature",
          "temperature_unit",
          "chance_of_precipitation_percent",
          "relative_humidity_percent",
          "dew_point",
          "dew_point_unit",
          "wind_speed",
          "wind_direction",
          "short_forecast",
          "page_link"
        ],
        "properties": {
          "dew_point": {
            "type": [
              "number",
              "null"
            ],
            "description": "Dew point in the same scale as the temperature."
          },
          "page_link": {
            "type": "string",
            "description": "Official hourly forecast page for this place."
          },
          "start_time": {
            "type": "string",
            "description": "Local hourly start time in ISO 8601 with offset."
          },
          "wind_speed": {
            "type": [
              "string",
              "null"
            ],
            "description": "Wind speed as forecast text with units."
          },
          "temperature": {
            "type": [
              "number",
              "null"
            ],
            "description": "Forecast temperature."
          },
          "dew_point_unit": {
            "type": "string",
            "description": "Dew point scale."
          },
          "short_forecast": {
            "type": [
              "string",
              "null"
            ],
            "description": "Short forecast in words."
          },
          "wind_direction": {
            "type": [
              "string",
              "null"
            ],
            "description": "Wind direction as text."
          },
          "temperature_unit": {
            "type": "string",
            "description": "Temperature scale."
          },
          "relative_humidity_percent": {
            "type": [
              "number",
              "null"
            ],
            "description": "Relative humidity in percent."
          },
          "chance_of_precipitation_percent": {
            "type": [
              "number",
              "null"
            ],
            "description": "Chance of precipitation in percent."
          }
        },
        "additionalProperties": false
      },
      "description": "One row for each available forecast hour, in time order."
    },
    "grid_x": {
      "type": "integer",
      "description": "Forecast office horizontal grid coordinate."
    },
    "grid_y": {
      "type": "integer",
      "description": "Forecast office vertical grid coordinate."
    },
    "latitude": {
      "type": "number",
      "description": "Latitude of the mapped location."
    },
    "longitude": {
      "type": "number",
      "description": "Longitude of the mapped location."
    },
    "updated_at": {
      "type": [
        "string",
        "null"
      ],
      "description": "Last forecast update in ISO 8601 with offset."
    },
    "matched_place": {
      "type": "string",
      "description": "Place matched to the location."
    },
    "forecast_office": {
      "type": "string",
      "description": "Forecast office code."
    }
  },
  "additionalProperties": false
}
```

## See more

- [NWS API: Get National Weather Service forecast](https://fous.com/methods/weather.gov/get-forecast.md): Looks up the National Weather Service seven-day day and night forecast for a U.S. city, address, or ZIP code. Forecast availability depends on NWS land-grid coverage.
- [NWS API: Get current conditions](https://fous.com/methods/weather.gov/get-current-conditions.md): Gets the latest observed weather from a nearby National Weather Service station for a US city, address, or ZIP code. Measurements the station does not report are null.
- [NWS API: List weather alerts](https://fous.com/methods/weather.gov/list-weather-alerts.md): Lists active US weather watches, warnings and advisories for a city, address, ZIP code or state, most severe first, then newest.
- [The Weather Channel API: Get hourly forecast](https://fous.com/methods/weather.com/get-hourly-forecast.md): Gets the next 1 to 48 hourly forecasts for a city, address, ZIP code or postcode from The Weather Channel, with times local to the matched place.
- [The Weather Channel API: Get daily forecast](https://fous.com/methods/weather.com/get-daily-forecast.md): Gets The Weather Channel's daily forecast for a city, address, ZIP code or postcode: up to 15 upcoming days with highs, lows, conditions, rain chance, wind, humidity, UV and sun times.
- [MSN API: Get forecast](https://fous.com/methods/msn.com/get-forecast.md): Gets up to 10 days of MSN Weather forecasts for a city, address, or ZIP code, with optional hourly forecasts for the next 24 hours.
- [The Weather Channel API: Get current weather](https://fous.com/methods/weather.com/get-current-weather.md): Gets current conditions and today's high and low from The Weather Channel for a city, postcode, ZIP code or street address worldwide. Street addresses are geocoded exactly first; some observations omit gusts or other measurements.
- [AccuWeather API: Get current weather](https://fous.com/methods/accuweather.com/get-current-weather.md): Gets current conditions and RealFeel for a city or postal code on AccuWeather. The UV level follows standard UV-index ranges. Air quality is null unless it is shown with the current conditions.
- [All NWS methods](https://fous.com/methods/weather.gov.md)
