TC Advisory (ICAO)
Required roles:
AIS PIB API— Roles
Base endpoint:https://ais-pib-api.ibosoft.net.tr:2087/opmet-decoder-tc-icao
Reference documents: ICAO Doc 10157 PANS-MET, Ed. 1 (27/11/25) · ICAO Doc 8400 PANS-ABC, Ed. 9, Amend. 33 (8/11/18)
Attribution: showibonav.aeroor "Decoded by Ibosoft" wherever decoded output is displayed
Data sources: none — decodes the message supplied in the request.
Last updated: 17 OCT 2026About the reference documents: Related Documents and Resources
Decodes a tropical cyclone advisory into readable fields, following the PANS-MET template. Optionally returns the centre position and the CB cloud extent in decimal degrees (parsed), ready for a map.
The format is that of PANS-MET Table A7-3. To get advisories to decode, see TC Advisory.
Endpoints
POST /opmet-decoder-tc-icao/decode?parsed=false
Content-Type: application/json
{ "raw": "<TC advisory text>" }
Parameters
| Parameter | In | Default | Description |
|---|---|---|---|
raw |
body | — | Advisory text, at least 10 characters. A WMO bulletin heading is accepted and removed. |
parsed |
query | false |
true: add the parsed object |
How the template is processed
- The advisory is line based: each element starts with its heading and a colon (
DTG:,TCAC:,OBS PSN:,CB:…); the value runs to the next heading. - Field names and wording come from PANS-MET Table A7-3: output keys are the template element names; positions, movements, intensity changes and winds are written out. Abbreviations are expanded as defined in PANS-MET and PANS-ABC (Doc 8400).
- M (mandatory) elements are always present (
nullwhen missing); C (conditional) elements only when present. - Forecast positions and winds (+6, +12, +18, +24 hours) are separate elements.
- Values that do not follow the template are listed under
Undecodable elements(neighbouring groups form one entry).
For the full list of elements, see PANS-MET Table A7-3.
Response
Example — PANS-MET Example A7-3 (shortened):
TC ADVISORY
DTG: 20040925/120000Z
TCAC: YUFO
TC: GLORIA
ADVISORY NR: 2004/13
OBS PSN: 25/1200Z N2706 W07306
CB: WI 250NM OF TC CENTRE TOP FL500
MOV: NW 20KMH
…
{
"Identification of the type of message": "Tropical cyclone advisory",
"Name of TCAC": "YUFO",
"Name of tropical cyclone": "GLORIA",
"Advisory number": "2004/13",
"Observed position of the centre": "Day 25 12:00 UTC N27°06' W73°06'",
"Direction and speed of movement": "North-west 20 km/h",
"Changes in intensity": "Intensifying",
"Forecast centre position +6 HR": "Day 25 18:00 UTC N27°48' W73°50'",
"…": "…",
"positions": [{"start": 0, "end": 11}, "…"],
"corrected_raw": "TC ADVISORY\nDTG: …",
"raw": "…",
"parsed": {
"tcac": "YUFO", "advisory_number": "2004/13",
"position": {"lat": 27.1, "lon": -73.1},
"extent": {"radius": 250, "radius_unit": "NM", "top_fl": 500, "points": []},
"utc_day": null, "utc_time": null
}
}
| Key | Description |
|---|---|
| element keys | Decoded elements, in template order |
Undecodable elements |
Values that do not follow the template (only when there are any) |
corrected_raw |
The message after normalization; positions refer to this text |
positions |
Character spans {start, end} in corrected_raw, one per decoded value in output order |
parsed |
With parsed=true: time of origin (utc_day, utc_time; null if the time group does not follow the template), tcac, advisory_number, centre position (lat/lon, signed decimal degrees), and extent of the CB cloud — points of its boundary, or radius/radius_unit around the centre, with top_fl |
Errors
| Code | Meaning |
|---|---|
400 |
The message could not be parsed at all; detail explains why |
422 |
raw is missing or shorter than 10 characters |