# Hong Kong Observatory

> Get Hong Kong weather from the Hong Kong Observatory: current conditions, today's and the 9-day forecast, typhoon signals and other warnings, special weather tips, tides, sunrise and moonrise, the lunar date, lightning, visibility, daily weather reports and earthquakes. No account or API key is required.

App · 15 actions. Web page: https://docs.lodol.com/docs/integrations/hong-kong-observatory

## Actions

### Convert to lunar date

Turn a date into its Chinese lunar calendar date, with the lunar year's name and zodiac animal, and the lunar month and day as numbers.

**Inputs**

- Date (`date`, date): The day to look up. Leave empty for today in Hong Kong.

**Outputs**

- `date` (text)
- `is_leap_month` (true/false)
- `lunar_date` (text)
- `lunar_day` (number)
- `lunar_month` (number)
- `lunar_year` (text)
- `stem_branch_year` (text)
- `zodiac` (text)
- `zodiac_animal` (text)

**Example output**

```json
{
  "date": "2026-10-16",
  "is_leap_month": false,
  "lunar_date": "\u4e5d\u6708\u521d\u4e03",
  "lunar_day": 7,
  "lunar_month": 9,
  "lunar_year": "\u4e19\u5348\u5e74\uff0c\u99ac",
  "stem_branch_year": "\u4e19\u5348",
  "zodiac": "\u99ac",
  "zodiac_animal": "Horse"
}
```

### Get 9-day forecast

Get the forecast for each of the next nine days: the weather, wind, high and low temperature and humidity, and the chance of significant rain. Also gives the sea and soil temperatures.

**Inputs**

- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `day_count` (number)
- `days` (list)
- `general_situation` (text)
- `language` (text)
- `sea_temperature_c` (number)
- `sea_temperature_place` (text)
- `sea_temperature_recorded_at` (text)
- `soil_temperatures` (list)
- `updated_at` (text)
- `url` (text)

**Example output**

```json
{
  "day_count": 1,
  "days": [
    {
      "date": "2026-10-16",
      "day_of_week": "Friday",
      "icon": 51,
      "icon_description": "Sunny Periods",
      "icon_url": "https://www.hko.gov.hk/images/HKOWxIconOutline/pic51.png",
      "max_humidity_percent": 85,
      "max_temp_c": 30,
      "min_humidity_percent": 65,
      "min_temp_c": 26,
      "significant_rain_chance": "Low",
      "weather": "Mainly fine at first. Sunny periods during the day.",
      "wind": "East force 4, occasionally force 5."
    }
  ],
  "general_situation": "Under the influence of a fresh easterly airstream, it will be windier with one or two rain patches over the coast of Guangdong.",
  "language": "en",
  "sea_temperature_c": 28,
  "sea_temperature_place": "North Point",
  "sea_temperature_recorded_at": "2026-10-15T14:00:00+08:00",
  "soil_temperatures": [
    {
      "depth_m": 0.5,
      "place": "Hong Kong Observatory",
      "recorded_at": "2026-10-15T07:00:00+08:00",
      "temperature_c": 29.6
    }
  ],
  "updated_at": "2026-10-16T00:00:00+08:00",
  "url": "https://www.hko.gov.hk/en/wxinfo/currwx/fnd.htm"
}
```

### Get current weather

Get Hong Kong's latest weather report: the temperature and humidity, the weather, the UV index, the past hour's rainfall in every district, and any warning messages. Pick a place for its own temperature and a district for its own rainfall.

**Inputs**

- Temperature at (`place`, text): The weather station whose temperature to give. Leave empty for the Hong Kong Observatory's own reading.
- Rainfall in district (`district`, text): The district whose rainfall to pick out. Every district's rainfall is listed either way. One of: `Central & Western District`, `Eastern District`, `Islands District`, `Kowloon City`, `Kwai Tsing`, `Kwun Tong`, `North District`, `Sai Kung`, `Sha Tin`, `Sham Shui Po`, and 8 more.
- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `district` (text)
- `district_rainfall_mm` (number)
- `humidity_percent` (number)
- `icon` (number)
- `icon_description` (text)
- `icon_url` (text)
- `language` (text)
- `lightning_places` (list)
- `max_rainfall_district` (text)
- `max_rainfall_mm` (number)
- `min_temp_midnight_to_9am_c` (number)
- `observed_at` (text)
- `place` (text)
- `rainfall` (list)
- `rainfall_january_to_last_month_mm` (number)
- `rainfall_last_month_mm` (number)
- `rainfall_midnight_to_noon_mm` (number)
- `rainfall_period_end` (text)
- `rainfall_period_start` (text)
- `rainstorm_reminder` (text)
- `special_weather_tips` (list)
- `temperature_c` (number)
- `temperatures` (list)
- `tropical_cyclone_messages` (list)
- `updated_at` (text)
- `url` (text)
- `uv_index` (number)
- `uv_level` (text)
- `uv_period` (text)
- `uv_place` (text)
- `warning_messages` (list)

**Example output**

```json
{
  "district": "Sha Tin",
  "district_rainfall_mm": 0,
  "humidity_percent": 74,
  "icon": 51,
  "icon_description": "Sunny Periods",
  "icon_url": "https://www.hko.gov.hk/images/HKOWxIconOutline/pic51.png",
  "language": "en",
  "lightning_places": [],
  "max_rainfall_district": "Sai Kung",
  "max_rainfall_mm": 2,
  "min_temp_midnight_to_9am_c": 25.8,
  "observed_at": "2026-10-16T10:00:00+08:00",
  "place": "Hong Kong Observatory",
  "rainfall": [
    {
      "district": "Sai Kung",
      "rainfall_mm": 2,
      "under_maintenance": false
    },
    {
      "district": "Sha Tin",
      "rainfall_mm": 0,
      "under_maintenance": false
    }
  ],
  "rainfall_january_to_last_month_mm": null,
  "rainfall_last_month_mm": null,
  "rainfall_midnight_to_noon_mm": null,
  "rainfall_period_end": "2026-10-16T10:45:00+08:00",
  "rainfall_period_start": "2026-10-16T09:45:00+08:00",
  "rainstorm_reminder": null,
  "special_weather_tips": [],
  "temperature_c": 27,
  "temperatures": [
    {
      "place": "King's Park",
      "temperature_c": 26
    },
    {
      "place": "Hong Kong Observatory",
      "temperature_c": 27
    }
  ],
  "tropical_cyclone_messages": [],
  "updated_at": "2026-10-16T10:02:00+08:00",
  "url": "https://www.hko.gov.hk/en/wxinfo/currwx/current.htm",
  "uv_index": 5,
  "uv_level": "moderate",
  "uv_period": "During the past hour",
  "uv_place": "King's Park",
  "warning_messages": []
}
```

### Get daily weather and radiation report

Get a past day's weather and radiation report: each station's high and low temperature, humidity, rainfall, sunshine, UV and background radiation. Each day's report comes out after 1:30 a.m. the next morning.

**Inputs**

- Date (`date`, date): The day to report on, from 10 September 2019. Leave empty for yesterday.
- Station (`station`, text): Only this station. Leave empty for every station; the Hong Kong Observatory's own readings are also given on their own. One of: `HKO` (Hong Kong Observatory), `KP` (King's Park), `CLK` (Chek Lap Kok), `CCH` (Cheung Chau), `HPV` (Happy Valley), `HKP` (Hong Kong Park), `SE1` (Kai Tak Runway Park), `KAT` (Kat O), `KLT` (Kowloon City), `KTG` (Kwun Tong), and 24 more.
- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `language` (text)
- `notes` (list)
- `published_at` (text)
- `radiation_summary` (text)
- `report_date` (text)
- `station` (object)
- `station_count` (number)
- `stations` (list)

**Example output**

```json
{
  "language": "en",
  "notes": [
    "The data displayed is provisional."
  ],
  "published_at": "2026-10-16T00:15:00+08:00",
  "radiation_summary": "Average ambient gamma radiation dose rate taken outdoors in Hong Kong ranged from 0.08 to 0.15 microsievert per hour.",
  "report_date": "2026-10-15",
  "station": {
    "grass_min_temp_c": 23.7,
    "max_humidity_percent": 77,
    "max_temp_c": 29.7,
    "max_uv_index": null,
    "mean_uv_index": null,
    "min_humidity_percent": 65,
    "min_temp_c": 26.6,
    "name": "Hong Kong Observatory",
    "normal_rainfall_since_jan_1_mm": 2319.4,
    "radiation_microsieverts_per_hour": null,
    "rainfall_mm": 0,
    "rainfall_since_jan_1_mm": 2529.3,
    "rainfall_trace": false,
    "station": "HKO",
    "sunshine_hours": null
  },
  "station_count": 1,
  "stations": [
    {
      "grass_min_temp_c": 23.7,
      "max_humidity_percent": 77,
      "max_temp_c": 29.7,
      "max_uv_index": null,
      "mean_uv_index": null,
      "min_humidity_percent": 65,
      "min_temp_c": 26.6,
      "name": "Hong Kong Observatory",
      "normal_rainfall_since_jan_1_mm": 2319.4,
      "radiation_microsieverts_per_hour": null,
      "rainfall_mm": 0,
      "rainfall_since_jan_1_mm": 2529.3,
      "rainfall_trace": false,
      "station": "HKO",
      "sunshine_hours": null
    }
  ]
}
```

### Get high and low tides

Get the predicted times and heights of high and low tide at a Hong Kong tide station, for one day or up to a month.

**Inputs**

- Tide station (`station`, text): Where to predict the tide. Quarry Bay is Victoria Harbour's reference station. One of: `QUB` (Quarry Bay (Victoria Harbour)), `CCH` (Cheung Chau), `CLK` (Chek Lap Kok), `CMW` (Chi Ma Wan), `KCT` (Kwai Chung), `KLW` (Ko Lau Wan), `LOP` (Lok On Pai), `MWC` (Ma Wan), `SPW` (Shek Pik), `TAO` (Tai O), and 4 more. Default: `QUB`.
- Date (`date`, date): The day to look up. Leave empty for today in Hong Kong.
- Number of days (`days`, number): How many days to cover, starting from the date. Defaults to 1. From 1 to 31. Default: `1`.

**Outputs**

- `end_date` (text)
- `first_high_tide_at` (text)
- `first_low_tide_at` (text)
- `high_tides` (list)
- `highest_m` (number)
- `low_tides` (list)
- `lowest_m` (number)
- `start_date` (text)
- `station` (text)
- `station_name` (text)
- `tide_count` (number)
- `tides` (list)

**Example output**

```json
{
  "end_date": "2026-10-16",
  "first_high_tide_at": "2026-10-16T23:33:00+08:00",
  "first_low_tide_at": "2026-10-16T06:51:00+08:00",
  "high_tides": [
    {
      "date": "2026-10-16",
      "height_m": 2.34,
      "time": "2026-10-16T23:33:00+08:00",
      "type": "high"
    }
  ],
  "highest_m": 2.34,
  "low_tides": [
    {
      "date": "2026-10-16",
      "height_m": 0.96,
      "time": "2026-10-16T06:51:00+08:00",
      "type": "low"
    }
  ],
  "lowest_m": 0.96,
  "start_date": "2026-10-16",
  "station": "QUB",
  "station_name": "Quarry Bay (Victoria Harbour)",
  "tide_count": 2,
  "tides": [
    {
      "date": "2026-10-16",
      "height_m": 0.96,
      "time": "2026-10-16T06:51:00+08:00",
      "type": "low"
    },
    {
      "date": "2026-10-16",
      "height_m": 2.34,
      "time": "2026-10-16T23:33:00+08:00",
      "type": "high"
    }
  ]
}
```

### Get hourly tide heights

Get the predicted tide height at a Hong Kong tide station for every hour of a day, in metres above Chart Datum.

**Inputs**

- Tide station (`station`, text): Where to predict the tide. Quarry Bay is Victoria Harbour's reference station. One of: `QUB` (Quarry Bay (Victoria Harbour)), `CCH` (Cheung Chau), `CLK` (Chek Lap Kok), `CMW` (Chi Ma Wan), `KCT` (Kwai Chung), `KLW` (Ko Lau Wan), `LOP` (Lok On Pai), `MWC` (Ma Wan), `SPW` (Shek Pik), `TAO` (Tai O), and 4 more. Default: `QUB`.
- Date (`date`, date): The day to look up. Leave empty for today in Hong Kong.

**Outputs**

- `date` (text)
- `heights` (list)
- `highest_at` (text)
- `highest_m` (number)
- `lowest_at` (text)
- `lowest_m` (number)
- `station` (text)
- `station_name` (text)

**Example output**

```json
{
  "date": "2026-10-16",
  "heights": [
    {
      "height_m": 2.28,
      "time": "2026-10-16T01:00:00+08:00"
    },
    {
      "height_m": 0.96,
      "time": "2026-10-16T07:00:00+08:00"
    },
    {
      "height_m": 2.34,
      "time": "2026-10-16T23:00:00+08:00"
    }
  ],
  "highest_at": "2026-10-16T23:00:00+08:00",
  "highest_m": 2.34,
  "lowest_at": "2026-10-16T07:00:00+08:00",
  "lowest_m": 0.96,
  "station": "QUB",
  "station_name": "Quarry Bay (Victoria Harbour)"
}
```

### Get latest earthquake

Get the latest significant earthquake the Observatory has reported, anywhere in the world: its magnitude, region, location and time.

**Inputs**

- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `found` (true/false)
- `language` (text)
- `latitude` (number)
- `longitude` (number)
- `magnitude` (number)
- `occurred_at` (text)
- `region` (text)
- `updated_at` (text)

**Example output**

```json
{
  "found": true,
  "language": "en",
  "latitude": -5.45,
  "longitude": 152.07,
  "magnitude": 6,
  "occurred_at": "2026-10-14T02:45:00+08:00",
  "region": "in New Britain Region, Papua New Guinea",
  "updated_at": "2026-10-14T03:03:00+08:00"
}
```

### Get latest felt earthquake

Get the latest earthquake that was felt in Hong Kong: its magnitude, where it struck, how strongly it was felt locally, and the Observatory's report.

**Inputs**

- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `details` (text)
- `found` (true/false)
- `intensity` (text)
- `language` (text)
- `latitude` (number)
- `longitude` (number)
- `magnitude` (number)
- `occurred_at` (text)
- `region` (text)
- `updated_at` (text)

**Example output**

```json
{
  "details": "Felt by some people in Hong Kong.",
  "found": true,
  "intensity": "III",
  "language": "en",
  "latitude": 23.9,
  "longitude": 114.6,
  "magnitude": 4.1,
  "occurred_at": "2026-07-12T03:40:00+08:00",
  "region": "Guangdong Heyuan",
  "updated_at": "2026-07-12T04:05:00+08:00"
}
```

### Get lightning count

Get how many lightning strokes were detected over Hong Kong in the latest hour, cloud-to-ground and cloud-to-cloud, and by region.

**Inputs**

- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `cloud_to_cloud_count` (number)
- `cloud_to_ground_count` (number)
- `language` (text)
- `period_end` (text)
- `period_start` (text)
- `regions` (list)
- `total_count` (number)

**Example output**

```json
{
  "cloud_to_cloud_count": 30,
  "cloud_to_ground_count": 12,
  "language": "en",
  "period_end": "2026-10-16T01:59:00+08:00",
  "period_start": "2026-10-16T01:00:00+08:00",
  "regions": [
    {
      "count": 9,
      "region": "New Territories West",
      "type": "cloud_to_ground",
      "type_name": "Cloud-to-ground"
    },
    {
      "count": 3,
      "region": "Lantau",
      "type": "cloud_to_ground",
      "type_name": "Cloud-to-ground"
    }
  ],
  "total_count": 42
}
```

### Get moonrise and moonset

Get the times of moonrise, moon transit and moonset in Hong Kong for one day or up to a month. A time is empty on a day the moon does not rise or set.

**Inputs**

- Date (`date`, date): The day to look up. Leave empty for today in Hong Kong.
- Number of days (`days`, number): How many days to cover, starting from the date. Defaults to 1. From 1 to 31. Default: `1`.

**Outputs**

- `date` (text)
- `day_count` (number)
- `days` (list)
- `moon_transit` (text)
- `moonrise` (text)
- `moonset` (text)

**Example output**

```json
{
  "date": "2026-10-16",
  "day_count": 1,
  "days": [
    {
      "date": "2026-10-16",
      "moon_transit": "2026-10-16T16:34:00+08:00",
      "moonrise": "2026-10-16T11:14:00+08:00",
      "moonset": "2026-10-16T21:55:00+08:00"
    }
  ],
  "moon_transit": "2026-10-16T16:34:00+08:00",
  "moonrise": "2026-10-16T11:14:00+08:00",
  "moonset": "2026-10-16T21:55:00+08:00"
}
```

### Get special weather tips

Get the Observatory's special weather tips, such as heavy rain announcements or an expected No. 8 signal, newest first.

**Inputs**

- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `has_tips` (true/false)
- `language` (text)
- `latest_tip` (text)
- `tip_count` (number)
- `tips` (list)

**Example output**

```json
{
  "has_tips": true,
  "language": "en",
  "latest_tip": "Announcement on Localised Heavy Rain: More than 70 millimetres of rainfall were recorded in Tuen Mun District in the past hour.",
  "tip_count": 1,
  "tips": [
    {
      "text": "Announcement on Localised Heavy Rain: More than 70 millimetres of rainfall were recorded in Tuen Mun District in the past hour.",
      "updated_at": "2026-09-10T16:40:00+08:00"
    }
  ]
}
```

### Get sunrise and sunset

Get the times of sunrise, solar noon and sunset in Hong Kong, with the hours of daylight, for one day or up to a month.

**Inputs**

- Date (`date`, date): The day to look up. Leave empty for today in Hong Kong.
- Number of days (`days`, number): How many days to cover, starting from the date. Defaults to 1. From 1 to 31. Default: `1`.

**Outputs**

- `date` (text)
- `day_count` (number)
- `daylight_hours` (number)
- `days` (list)
- `solar_noon` (text)
- `sunrise` (text)
- `sunset` (text)

**Example output**

```json
{
  "date": "2026-10-16",
  "day_count": 1,
  "daylight_hours": 11.63,
  "days": [
    {
      "date": "2026-10-16",
      "daylight_hours": 11.63,
      "solar_noon": "2026-10-16T12:09:00+08:00",
      "sunrise": "2026-10-16T06:20:00+08:00",
      "sunset": "2026-10-16T17:58:00+08:00"
    }
  ],
  "solar_noon": "2026-10-16T12:09:00+08:00",
  "sunrise": "2026-10-16T06:20:00+08:00",
  "sunset": "2026-10-16T17:58:00+08:00"
}
```

### Get today's forecast

Get the Observatory's local weather forecast for today (or tonight and tomorrow, later in the day), the general weather situation, the outlook for the next few days, and any tropical cyclone or fire danger notes.

**Inputs**

- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `fire_danger_warning` (text)
- `forecast` (text)
- `forecast_period` (text)
- `general_situation` (text)
- `language` (text)
- `outlook` (text)
- `tropical_cyclone_info` (text)
- `updated_at` (text)
- `url` (text)

**Example output**

```json
{
  "fire_danger_warning": null,
  "forecast": "Mainly fine at first. Sunny periods during the day. Temperatures will range between 26 and 30 degrees. Moderate easterly winds.",
  "forecast_period": "Weather forecast for today",
  "general_situation": "A fresh easterly airstream is affecting the coast of Guangdong.",
  "language": "en",
  "outlook": "One or two rain patches on Saturday. Fine and dry early next week.",
  "tropical_cyclone_info": null,
  "updated_at": "2026-10-16T01:45:00+08:00",
  "url": "https://www.hko.gov.hk/en/wxinfo/currwx/flw.htm"
}
```

### Get visibility

Get the latest 10-minute mean visibility, in kilometres, at each of the Observatory's visibility stations.

**Inputs**

- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `language` (text)
- `lowest_visibility_km` (number)
- `lowest_visibility_station` (text)
- `observed_at` (text)
- `station_count` (number)
- `stations` (list)

**Example output**

```json
{
  "language": "en",
  "lowest_visibility_km": 17,
  "lowest_visibility_station": "Central",
  "observed_at": "2026-10-16T02:00:00+08:00",
  "station_count": 2,
  "stations": [
    {
      "station": "Central",
      "visibility_km": 17
    },
    {
      "station": "Chek Lap Kok",
      "visibility_km": 27
    }
  ]
}
```

### Get weather warnings

Get every warning and signal in force in Hong Kong, such as typhoon signals, rainstorm, thunderstorm, very hot or cold weather and landslip warnings, with the Observatory's full text. The typhoon signal and rainstorm colour are also given on their own, ready to check in a condition.

**Inputs**

- Language (`language`, text): The language the Observatory writes the text in. One of: `en` (English), `tc` (Traditional Chinese), `sc` (Simplified Chinese). Default: `en`.

**Outputs**

- `fire_danger_warning` (text)
- `has_warnings` (true/false)
- `language` (text)
- `names` (list)
- `rainstorm_warning` (text)
- `thunderstorm_warning` (true/false)
- `typhoon_signal` (text)
- `typhoon_signal_number` (number)
- `updated_at` (text)
- `url` (text)
- `warning_count` (number)
- `warnings` (list)

**Example output**

```json
{
  "fire_danger_warning": null,
  "has_warnings": true,
  "language": "en",
  "names": [
    "No. 8 Northeast Gale or Storm Signal"
  ],
  "rainstorm_warning": null,
  "thunderstorm_warning": false,
  "typhoon_signal": "No. 8 Northeast Gale or Storm Signal",
  "typhoon_signal_number": 8,
  "updated_at": "2026-09-24T11:15:00+08:00",
  "url": "https://www.hko.gov.hk/en/wxinfo/dailywx/wxwarntoday.htm",
  "warning_count": 1,
  "warnings": [
    {
      "action": "issued",
      "code": "WTCSGNL",
      "details": [
        "The No. 8 Northeast Gale or Storm Signal was issued at 11:15 a.m."
      ],
      "details_text": "The No. 8 Northeast Gale or Storm Signal was issued at 11:15 a.m.",
      "expires_at": null,
      "in_force": true,
      "issued_at": "2026-09-24T11:15:00+08:00",
      "level": "No. 8 Northeast Gale or Storm Signal",
      "level_code": "TC8NE",
      "name": "Tropical Cyclone Warning Signal",
      "updated_at": "2026-09-24T11:15:00+08:00"
    }
  ]
}
```
