---
title: "Get weather forecast for given airport"
method: GET
path: "/airports/{id}/weather/forecast"
tags: ["airports"]
---

# Get weather forecast for given airport

`GET /airports/{id}/weather/forecast`

## Request

- Base URL: `https://aeroapi.flightaware.com/aeroapi`
- URL: `https://aeroapi.flightaware.com/aeroapi/airports/{id}/weather/forecast`
- Auth: API key in header `x-apikey`
- TypeScript: <https://skmtc.dev/flightaware/apis/aeroapi/docs/airports/:id/weather/forecast/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns the weather forecast for an airport in the form of a decoded TAF
(Terminal Area Forecast). Only a single result is returned.

## Path parameters

- `id` string, required

## Query parameters

- `timestamp` string, date-time
- `return_nearby_weather` boolean

## Response `200`

OK

- object
  - `airport_code` string, required: The airport code of the report. LID/IATA will be used if airport lacks an ICAO code.
  - `raw_forecast` string[], required: Array of raw forecast lines from the TAF
  - `time` string, date-time, required: Datetime that the forecast was generated.
  - `decoded_forecast` object, nullable, required
    - `start` string, date-time, required
    - `end` string, date-time, required
    - `lines` object[], required
      - `type` string, required: The type of forecast line (forecast, from, temporary, becoming)
      - `start` string, date-time, required: Start of the effective period for this forecast line
      - `end` string, date-time, nullable, required: End of the effective period for this forecast line
      - `turbulence_layers` string, nullable, required: Turbulence forecast
      - `icing_layers` string, nullable, required: Icing forecast
      - `barometric_pressure` number, nullable, required: Forecast pressure (percent)
      - `significant_weather` string, nullable, required: Significant weather forecast
      - `winds` object, nullable, required
        - `symbol` string, required: Raw TAF wind symbol
        - `direction` string, required: Wind direction (0-360 or "variable")
        - `speed` integer, required: Wind speed
        - `units` string, nullable, required: Wind units
        - `peak_gusts` integer, nullable, required: Peak gusts for forecast
      - `windshear` object, nullable, required
        - `symbol` string, required: Raw TAF windshear symbol
        - `height` string, required: Altitude of low level wind shear occurrence
        - `direction` string, required: Wind direction of windshear (0-360 or "variable")
        - `speed` string, required: Wind speed of windshear
        - `units` string, nullable, required: Wind units of windshear
      - `visibility` object, nullable, required
        - `symbol` string, required: Raw TAF visibility symbol
        - `visibility` string, required: Numeric visibility (or "unlimited")
        - `units` string, nullable, required: Visibility units
      - `clouds` object[], required
        - `symbol` string, required: Raw TAF cloud symbol
        - `coverage` 'null' | 'sky_clear' | 'few' | 'scattered' | 'broken' | 'overcast', nullable, required: Area of sky covered by the cloud layer (few 0-2 octas, scatterd 3-4 octas, broken 5-7 octas, overcast 8 octas)
        - `altitude` string, nullable, required: Height (AGL) of cloud layer base
        - `special` string, nullable, required: Any special modifiers such as CB (cumulonimbus) or TCU (towering cumulonimbus)

## Other responses

- `400`: Incorrect parameter (id). Id must be a valid airport code and cannot be empty. Temperature_units may be invalid. Timestamp may be before user's history limit.
- `404`: No upcoming forecast currently available for this airport.

---

[API](https://skmtc.dev/flightaware/apis/aeroapi.md) - [All operations](https://skmtc.dev/flightaware/apis/aeroapi/llms.txt) - [OpenAPI document](https://skmtc.dev/flightaware/apis/aeroapi/revisions/3023e7a0c54c?raw)
