# Enhanced Historical Cyclone Sample

This page provides a complete sample response for an enhanced historical cyclone from the IBTrACS backfill pipeline. Unlike active cyclones tracked through the V2 API, historical cyclones are ingested from NOAA's International Best Track Archive for Climate Stewardship (IBTrACS) and include the full observed track with wind radii data at each point.

Enhanced historical cyclones include two additional data blocks not present in standard hazard responses: `cycloneAssessment` (storm summary statistics) and `cycloneDetails` (complete track with meteorological observations at each point).

{% hint style="warning" %}
This response uses the **legacy DAE hazard schema**, not the V2 API response shape. The top-level structure uses fields like `hazard_ID`, `type_ID`, `create_Date`, etc., rather than the V2 format with `incident.properties` and GeoJSON `features`. The `cycloneAssessment` and `cycloneDetails` blocks are specific to the IBTrACS enhancement pipeline and are not present in real-time V2 API cyclone responses.
{% endhint %}

## Cyclone Assessment

The `cycloneAssessment` block provides summary statistics for the entire storm lifecycle. This is computed from the full IBTrACS best-track record after the storm has concluded.

| Property                   | Type    | Description                                      |
| -------------------------- | ------- | ------------------------------------------------ |
| `ibtracs_sid`              | string  | IBTrACS storm identifier (season + sequence)     |
| `storm_name`               | string  | Official storm name (uppercase)                  |
| `season`                   | integer | Year of the cyclone season                       |
| `basin`                    | string  | Basin code (e.g., SI, WP, NA, EP, SP)            |
| `basin_name`               | string  | Human-readable basin name                        |
| `max_wind_kts`             | number  | Peak sustained wind speed in knots               |
| `max_wind_kmh`             | integer | Peak sustained wind speed in km/h                |
| `min_pressure_mb`          | number  | Minimum central pressure in millibars            |
| `max_category`             | integer | Peak Saffir-Simpson category (0-5)               |
| `max_category_name`        | string  | Human-readable category label                    |
| `duration_hours`           | integer | Total storm duration in hours                    |
| `track_points_count`       | integer | Number of track observations                     |
| `track_length_km`          | integer | Total track distance in kilometers               |
| `landfalls`                | integer | Number of landfall events                        |
| `hours_at_hurricane_force` | integer | Hours with winds at or above 64 kt               |
| `hours_at_major_hurricane` | integer | Hours with winds at or above 96 kt (Category 3+) |
| `source`                   | string  | IBTrACS dataset version                          |

## Cyclone Details

The `cycloneDetails` block contains the complete storm track as an array of chronological observation points. Each point includes position, intensity, wind structure, and proximity-to-land data.

### Track Point Fields

| Property       | Type           | Description                                        |
| -------------- | -------------- | -------------------------------------------------- |
| `time`         | string         | Observation timestamp (UTC, `YYYY-MM-DD HH:MM:SS`) |
| `lat`          | number         | Latitude in decimal degrees (negative = south)     |
| `lon`          | number         | Longitude in decimal degrees                       |
| `wind_kts`     | number or null | Maximum sustained wind speed in knots              |
| `pressure_mb`  | number or null | Central pressure in millibars                      |
| `wind_radii`   | object         | Wind radii by threshold (see below)                |
| `nature`       | string         | Storm nature code                                  |
| `usa_status`   | string         | USA agency classification code                     |
| `dist2land_km` | number         | Distance to nearest land in kilometers             |
| `landfall_km`  | number or null | Distance to landfall point in kilometers           |

### Wind Radii Structure

The `wind_radii` object is keyed by wind speed threshold in knots (34, 50, or 64). Each threshold contains the maximum radial extent of that wind speed in each quadrant, measured in nautical miles.

```json
"wind_radii": {
  "34": { "NE": 60, "SE": 75, "SW": 70, "NW": 60 },
  "50": { "NE": 35, "SE": 40, "SW": 50, "NW": 40 },
  "64": { "NE": 25, "SE": 20, "SW": 30, "NW": 25 }
}
```

* **34 kt** -- Tropical storm force winds
* **50 kt** -- Strong tropical storm / damaging winds
* **64 kt** -- Hurricane / typhoon force winds

Wind radii are only present when the storm reaches the corresponding intensity threshold. Early track points (disturbances, depressions) will have an empty `wind_radii` object.

### Nature Codes

| Code | Description                                           |
| ---- | ----------------------------------------------------- |
| DS   | Disturbance                                           |
| TS   | Tropical Storm (includes hurricane/typhoon intensity) |
| ET   | Extratropical Transition                              |
| SS   | Subtropical Storm                                     |
| NR   | Not Reported                                          |

### USA Status Codes

| Code | Description         |
| ---- | ------------------- |
| DB   | Disturbance         |
| TD   | Tropical Depression |
| TS   | Tropical Storm      |
| TY   | Typhoon             |
| HU   | Hurricane           |
| ST   | Super Typhoon       |
| EX   | Extratropical       |

## Legacy Hazard Fields

The top-level hazard object uses the legacy DAE schema. Key fields include:

| Property                 | Type    | Description                                       |
| ------------------------ | ------- | ------------------------------------------------- |
| `hazard_ID`              | integer | Internal hazard identifier                        |
| `uuid`                   | string  | Unique hazard identifier                          |
| `hazard_Name`            | string  | Display name of the hazard                        |
| `type_ID`                | string  | Hazard type (e.g., `CYCLONE`)                     |
| `category_ID`            | string  | Hazard category (e.g., `EVENT`)                   |
| `severity_ID`            | string  | Severity level (e.g., `WATCH`, `WARNING`)         |
| `status`                 | string  | Hazard status (`A` = active, `E` = expired)       |
| `create_Date`            | string  | Creation timestamp (epoch milliseconds as string) |
| `start_Date`             | string  | Storm start timestamp (epoch milliseconds)        |
| `end_Date`               | string  | Storm end timestamp (epoch milliseconds)          |
| `latitude` / `longitude` | number  | Reference coordinates                             |
| `source`                 | string  | Data source description                           |
| `creator`                | string  | Pipeline or user that created the record          |
| `tier`                   | string  | Access tier (`Enterprise`, `Premium`, etc.)       |

{% hint style="info" %}
The `comment_Text` field contains the IBTrACS storm identifier (e.g., `IBTrACS-2025329N10124`), which can be used to cross-reference with the original IBTrACS dataset.
{% endhint %}

## Sample Response

```json
{
  "app_ID": 0,
  "app_IDs": "",
  "autoexpire": "Y",
  "category_ID": "EVENT",
  "charter_Uri": "",
  "comment_Text": "IBTrACS-2025329N10124",
  "create_Date": "1764007200000",
  "creator": "DataFeeds Enhancement Pipeline",
  "end_Date": "1764720000000",
  "glide_Uri": "",
  "hazard_ID": 842589,
  "hazard_Name": "Tropical Cyclone - Anggrek",
  "last_Update": "1764720000000",
  "latitude": 13.2,
  "longitude": 113.9,
  "master_Incident_ID": "",
  "message_ID": "",
  "org_ID": -1,
  "severity_ID": "WATCH",
  "snc_url": "",
  "source": "IBTrACS Backfill \u2014 cyclone not tracked in DisasterAWARE",
  "start_Date": "1764007200000",
  "status": "E",
  "type_ID": "CYCLONE",
  "update_Date": "1764720000000",
  "update_User": null,
  "product_total": 0,
  "uuid": "0fe8702d-15c5-4047-9a8a-776f7ed17cde",
  "in_Dashboard": "",
  "areabrief_url": null,
  "description": "A tropical cyclone forecast has been issued by Joint Typhoon Warning Center (JTWC) on January 31, 2024, 09:00:00 UTC. Tropical Cyclone - Anggrek, currently equivalent to a Category 1 hurricane (on the Saffir-Simpson scale), is located in the S Indian Ocean with maximum sustained winds of 120 km/h (75 mph), and wind gusts up to 148 km/h (92 mph).\n\nAccording to this forecast (#33), the cyclone is headed East-southeast at about 65 km/h (40 mph), and is expected to weaken over the next 24 hours...",
  "roles": [],
  "updatedGeography": false,
  "tier": "Enterprise",
  "tier_tag": "ent",
  "activeGeography": {
    "magId": 603039,
    "uuid": "0995faf3-5a20-4e8e-a4ae-3819bc2b37d7",
    "title": "Automated Cyclone SmartAlert Area [ 2024-01-31 07:41:15 GMT ]",
    "createDate": 1706686875411,
    "magType": "Calculated",
    "creator": "d2p2",
    "isActive": true,
    "updateDate": 1706686875411,
    "wkt": {
      "text": "POLYGON((...truncated...))"
    }
  },
  "locationDetails": {
    "version": 2,
    "location_type": "ocean"
  },
  "exposureAssessment": {
    "capital": { "total": { "value": 0 }, "school": { "value": 0 }, "hospital": { "value": 0 } },
    "population": { "total": { "value": 0 }, "vulnerable": { "value": null }, "households": { "value": null } },
    "foodNeeds": { "value": 0 },
    "waterNeeds": { "value": 0 },
    "shelterNeeds": { "value": 0 },
    "wasteNeeds": { "value": 0 },
    "foodNeedsUnit": "MRE",
    "waterNeedsUnit": "gal",
    "shelterNeedsUnit": "sq feet",
    "wasteNeedsUnit": "25 gal",
    "exposureLevels": [
      {
        "level": "1",
        "exposureDescription": "Minor Damage; power out",
        "data": {
          "capital": { "total": { "value": 0 }, "school": { "value": 0 }, "hospital": { "value": 0 } },
          "population": { "total": { "value": 0 }, "vulnerable": { "value": null }, "households": { "value": null } },
          "foodNeeds": { "value": 0 },
          "waterNeeds": { "value": 0 },
          "shelterNeeds": { "value": 0 },
          "wasteNeeds": { "value": 0 },
          "foodNeedsUnit": "MRE",
          "waterNeedsUnit": "gal",
          "shelterNeedsUnit": "sq feet",
          "wasteNeedsUnit": "25 gal"
        }
      },
      {
        "level": "2",
        "exposureDescription": "Moderate Damage; 5% of value",
        "data": {
          "capital": { "total": { "value": 0 }, "school": { "value": 0 }, "hospital": { "value": 0 } },
          "population": { "total": { "value": 0 }, "vulnerable": { "value": null }, "households": { "value": null } },
          "foodNeeds": { "value": 0 },
          "waterNeeds": { "value": 0 },
          "shelterNeeds": { "value": 0 },
          "wasteNeeds": { "value": 0 },
          "foodNeedsUnit": "MRE",
          "waterNeedsUnit": "gal",
          "shelterNeedsUnit": "sq feet",
          "wasteNeedsUnit": "25 gal"
        }
      }
    ],
    "hazardUuid": "0fe8702d-15c5-4047-9a8a-776f7ed17cde",
    "hazardType": "CYCLONE",
    "version": "1",
    "timestamp": "1706688881.2667491",
    "exposureDescription": "TAOS Wind Impact (Minor Damage and above)"
  },
  "cycloneAssessment": {
    "ibtracs_sid": "2024012S09093",
    "storm_name": "ANGGREK",
    "season": 2024,
    "basin": "SI",
    "basin_name": "South Indian",
    "max_wind_kts": 115.0,
    "max_wind_kmh": 213,
    "min_pressure_mb": 948.0,
    "max_category": 4,
    "max_category_name": "Category 4",
    "duration_hours": 504,
    "track_points_count": 169,
    "track_length_km": 8438,
    "landfalls": 0,
    "hours_at_hurricane_force": 420,
    "hours_at_major_hurricane": 156,
    "source": "IBTrACS v04r01 (NOAA/NCEI)"
  },
  "cycloneDetails": {
    "ibtracs_sid": "2024012S09093",
    "track": [
      {
        "time": "2024-01-11 12:00:00",
        "lat": -8.6,
        "lon": 93.1,
        "wind_kts": 20.0,
        "pressure_mb": 1009.0,
        "wind_radii": {},
        "nature": "DS",
        "usa_status": "DB",
        "dist2land_km": 1005.0,
        "landfall_km": 1005.0
      },
      {
        "time": "2024-01-15 06:00:00",
        "lat": -9.3,
        "lon": 93.3,
        "wind_kts": 35.0,
        "pressure_mb": 1001.0,
        "wind_radii": {
          "34": {
            "NE": 20,
            "SE": 45,
            "SW": 45,
            "NW": 20
          }
        },
        "nature": "TS",
        "usa_status": "TS",
        "dist2land_km": 1053.0,
        "landfall_km": 1043.0
      },
      // ... 165 additional track points omitted ...
      {
        "time": "2024-01-28 18:00:00",
        "lat": -21.7,
        "lon": 73.1,
        "wind_kts": 115.0,
        "pressure_mb": 950.0,
        "wind_radii": {
          "34": {
            "NE": 60,
            "SE": 75,
            "SW": 70,
            "NW": 60
          },
          "50": {
            "NE": 35,
            "SE": 40,
            "SW": 50,
            "NW": 40
          },
          "64": {
            "NE": 25,
            "SE": 20,
            "SW": 30,
            "NW": 25
          }
        },
        "nature": "TS",
        "usa_status": "TY",
        "dist2land_km": 1604.0,
        "landfall_km": 1545.0
      },
      {
        "time": "2024-02-01 12:00:00",
        "lat": -46.5,
        "lon": 106.6,
        "wind_kts": null,
        "pressure_mb": null,
        "wind_radii": {},
        "nature": "ET",
        "usa_status": "",
        "dist2land_km": 1518.0,
        "landfall_km": null
      }
    ]
  }
}
```

{% hint style="info" %}
In this sample, the `activeGeography` WKT polygon has been truncated for brevity. In actual responses, this contains the full polygon geometry. The `cycloneDetails.track` array has been reduced to four representative points (storm origin, tropical storm onset, peak intensity, and extratropical transition) -- the full track contains 169 points at roughly 3-hour intervals.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://api-v2-docs.disasteraware.com/hazards/hazard-samples/enhanced-historical-cyclone-sample.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
