metar-taf-decoder
METARTAFAirportsGlossaryAPI
Log in
METAR decoderTAF decoderAirportsGlossaryAPI

© 2021–2026 metar-taf-decoder.com. Uses a cookie to remember your language preference.

For training and educational purposes only. Not intended for operational aviation use.

Buy Me a Coffee at ko-fi.comGitHub
← Back to API docs

TAF Endpoints

Two endpoints are available for TAF data.

Endpoints

GET /taf/{icao}POST /tafResponse Fields

Object Types

AirportValidityWindWindShearVisibilityCloudWeatherConditionTAFTemperatureTafTrendTurbulenceIcing
GET/taf/{icao}

Fetches the latest TAF forecast for the given ICAO airport code from live weather data.

Parameters

FieldTypeReqDescription
icaostring✓The 4-letter ICAO code of the airport (e.g. LFPO, EGLL, KJFK).

Example Request

curl -X GET "https://api.metar-taf-decoder.com/taf/LFPO" \
  -H "Accept-Language: en" \
  -H "X-API-Key: your-api-key"

Example Response

{
  "message": "TAF LFPO 010800Z 0109/0215 28010KT 9999 FEW020 BECMG 0112/0114 VRB03KT",
  "airport": {
    "icao": "LFPO",
    "name": "Paris-Orly"
  },
  "day": 1,
  "time": "0800",
  "validity": {
    "startDay": 1,
    "startHour": 9,
    "endDay": 2,
    "endHour": 15
  },
  "wind": {
    "speed": 10,
    "unit": "KT",
    "direction": "W",
    "directionDegrees": 280
  },
  "windShear": null,
  "visibility": {
    "mainVisibility": "9999"
  },
  "clouds": [
    {
      "quantity": "FEW",
      "height": 2000,
      "unit": "FT"
    }
  ],
  "weatherConditions": [],
  "minTemperature": null,
  "maxTemperature": null,
  "becmgs": [
    {
      "type": "BECMG",
      "validity": {
        "startDay": 1,
        "startHour": 12,
        "endDay": 1,
        "endHour": 14
      },
      "wind": {
        "speed": 3,
        "unit": "KT",
        "direction": "VRB",
        "directionDegrees": 0
      },
      "visibility": null,
      "clouds": [],
      "weatherConditions": [],
      "cavok": false
    }
  ],
  "fMs": [],
  "tempos": [],
  "probs": [],
  "inters": [],
  "turbulences": [],
  "icings": [],
  "amendment": false,
  "cancelled": false,
  "nil": false,
  "corrected": false
}
POST/taf

Decodes a raw TAF string that you provide in the request body.

Request Body

FieldTypeReqDescription
bodystring✓The raw TAF string as plain text. Must start with TAF.

Content-Type: text/plain

Example Request

curl -X POST "https://api.metar-taf-decoder.com/taf" \
  -H "Content-Type: text/plain" \
  -H "Accept-Language: en" \
  -H "X-API-Key: your-api-key" \
  -d "TAF LFPO 010800Z 0109/0215 28010KT 9999 FEW020"

Example Response

{
  "message": "TAF LFPO 010800Z 0109/0215 28010KT 9999 FEW020 BECMG 0112/0114 VRB03KT",
  "airport": {
    "icao": "LFPO",
    "name": "Paris-Orly"
  },
  "day": 1,
  "time": "0800",
  "validity": {
    "startDay": 1,
    "startHour": 9,
    "endDay": 2,
    "endHour": 15
  },
  "wind": {
    "speed": 10,
    "unit": "KT",
    "direction": "W",
    "directionDegrees": 280
  },
  "windShear": null,
  "visibility": {
    "mainVisibility": "9999"
  },
  "clouds": [
    {
      "quantity": "FEW",
      "height": 2000,
      "unit": "FT"
    }
  ],
  "weatherConditions": [],
  "minTemperature": null,
  "maxTemperature": null,
  "becmgs": [
    {
      "type": "BECMG",
      "validity": {
        "startDay": 1,
        "startHour": 12,
        "endDay": 1,
        "endHour": 14
      },
      "wind": {
        "speed": 3,
        "unit": "KT",
        "direction": "VRB",
        "directionDegrees": 0
      },
      "visibility": null,
      "clouds": [],
      "weatherConditions": [],
      "cavok": false
    }
  ],
  "fMs": [],
  "tempos": [],
  "probs": [],
  "inters": [],
  "turbulences": [],
  "icings": [],
  "amendment": false,
  "cancelled": false,
  "nil": false,
  "corrected": false
}

Response Fields

FieldTypeReqDescription
messagestring✓The original raw TAF string.
airportAirport✓Airport information (ICAO code and name).
daynumber✓Day of the month the report was issued.
timestring✓Time the report was issued (HHmm format).
validityValidity✓Validity period of the forecast (start day/hour and end day/hour).
windWind | null–Wind information at time of issue.
windShearWindShear | null–Wind shear information if present.
visibilityVisibility | null–Visibility at time of issue.
cloudsCloud[]–Cloud layers at time of issue.
weatherConditionsWeatherCondition[]–Weather phenomena at time of issue.
minTemperatureTAFTemperature | null–Minimum forecast temperature (value, day, hour).
maxTemperatureTAFTemperature | null–Maximum forecast temperature (value, day, hour).
becmgsTafTrend[]–Array of BECMG (becoming) trend groups.
fMsTafTrend[]–Array of FM (from) trend groups.
temposTafTrend[]–Array of TEMPO (temporary) trend groups.
probsTafTrend[]–Array of PROB (probability) trend groups.
intersTafTrend[]–Array of INTER (intermittent) trend groups.
turbulencesTurbulence[]–Turbulence forecast information.
icingsIcing[]–Icing forecast information.
amendmentboolean–True if this is an amended TAF.
cancelledboolean–True if the TAF was cancelled.
nilboolean–True if the TAF is NIL.
correctedboolean–True if this is a corrected TAF.

Object Types

Airport object

FieldTypeReqDescription
icaostring✓The 4-letter ICAO code of the airport.
namestring✓The full name of the airport.

Validity object

FieldTypeReqDescription
startDaynumber✓Day of month when the period starts.
startHournumber✓UTC hour when the period starts.
startMinutesnumber | null–UTC minutes when the period starts, if applicable.
endDaynumber | null–Day of month when the period ends.
endHournumber | null–UTC hour when the period ends.

Wind object

FieldTypeReqDescription
speednumber✓Wind speed value.
unitstring✓Speed unit. KT (knots) or MPS (meters per second).
directionstring✓Cardinal or compass direction (e.g. N, NE, W, VRB).
directionDegreesnumber✓Direction in degrees (0–360). 0 when variable.
gustnumber | null–Gust speed, if present.
minVariationnumber | null–Minimum wind direction variation in degrees (variable winds).
maxVariationnumber | null–Maximum wind direction variation in degrees (variable winds).

WindShear object (extends Wind)

FieldTypeReqDescription
(all Wind fields)—✓Inherits all fields from the Wind object.
heightnumber✓Height at which wind shear occurs.
heightUnitstring | null–Unit of height: FT (feet) or M (meters).

Visibility object

FieldTypeReqDescription
mainVisibilitystring✓Main visibility value as a string (e.g. 9999, 6000, 1SM).
minVisibilitynumber | null–Minimum directional visibility value, if present.
minDirectionstring | null–Cardinal direction of the minimum visibility, if present.
unitstring | null–Visibility unit when not in meters (e.g. SM for statute miles).

Cloud object

FieldTypeReqDescription
quantitystring✓Sky coverage code: FEW, SCT, BKN, OVC, NSC, NCD, SKC, CAVOK.
typestring | null–Cloud type when specified (e.g. CB for cumulonimbus, TCU for towering cumulus).
heightnumber | null–Cloud base height in the specified unit.
unitstring | null–Height unit: FT (feet) or M (meters).

WeatherCondition object

FieldTypeReqDescription
intensitystring | null–Intensity qualifier: + (heavy), - (light), or absent for moderate.
descriptivestring | null–Descriptive code (e.g. SH for showers, TS for thunderstorm, FZ for freezing).
phenomenonsstring[]–Array of phenomenon codes (e.g. RA for rain, SN for snow, FG for fog).

TAFTemperature object

FieldTypeReqDescription
temperaturenumber✓Temperature value in degrees Celsius.
daynumber✓Day of month when the temperature is forecast.
hournumber✓UTC hour when the temperature is forecast.

TafTrend object

FieldTypeReqDescription
typestring✓Trend type: BECMG, TEMPO, FM, PROB, or INTER.
probabilitynumber | null–Probability percentage for PROB groups (30 or 40).
validityValidity✓Validity period of this trend group.
windWind | null–Forecast wind during this trend.
windShearWindShear | null–Wind shear information during this trend.
visibilityVisibility | null–Forecast visibility during this trend.
verticalVisibilitynumber | null–Vertical visibility value if sky is obscured.
verticalVisibilityUnitstring | null–Unit of vertical visibility: FT or M.
cloudsCloud[]–Forecast cloud layers during this trend.
weatherConditionsWeatherCondition[]–Forecast weather phenomena during this trend.
remarkstring | null–Remark text associated with this trend group.
cavokboolean–True if CAVOK applies during this trend.
turbulencesTurbulence[]–Array of turbulence forecasts for this trend.
icingsIcing[]–Array of icing forecasts for this trend.

Turbulence object

FieldTypeReqDescription
intensitystring✓Turbulence intensity code.
baseHeightnumber✓Base height of the turbulence layer.
depthnumber✓Depth (thickness) of the turbulence layer.
unitstring | null–Height unit: FT (feet) or M (meters).

Icing object

FieldTypeReqDescription
intensitystring✓Icing intensity code.
baseHeightnumber✓Base height of the icing layer.
depthnumber✓Depth (thickness) of the icing layer.
unitstring | null–Height unit: FT (feet) or M (meters).