Microburbs
Free sandbox: try any request below on the sample suburbs, no signup. For every suburb, create an API key.
Classic docs
Microburbs Property Data API
Suburb - Environment

Heat and temperature extremes

GET/v1/suburbs/{suburb_name}/environment/heat-and-extremes5¢ per call

How many hot days (30, 35, 40°C), hot nights, longest heatwave run and frosty days each suburb had in every year from 2016 to 2025, with the hottest day and coldest night. Modelled estimates.

Coverage: About 15,300 suburbs and localities; calendar years 2016-2025. Current to 2025-12-31. Full description, field list and method: /v1/datasets/heat-and-extremes.

Exact suburb identifier required. Exact official suburb name (SAL), e.g. Burwood (NSW) — many suburbs carry a state suffix. If starting from free text or an unverified bare name, first call GET /v1/geocode/suburb?q=<text>, then use the exact data[].area_name it returns. Suburb data endpoints do not guess a state or typo-correct names.

Authorization

Request

The only values you send. Fields under Responses below are what comes back — you never pass those.

Path parameters

suburb_namestringrequired

Exact official suburb name (SAL), e.g. `Burwood (NSW)` — many suburbs carry a state suffix. If starting from free text or an unverified bare name, first call `GET /v1/geocode/suburb?q=<text>`, then use the exact `data[].area_name` it returns. Suburb data endpoints do not guess a state or typo-correct names.

Query parameters

fieldsstringoptional

Comma-separated subset of: days_over_30c, days_over_35c, days_over_40c, longest_hot_spell_days, hottest_day_c, hot_day_threshold_p99_c, nights_over_20c, nights_over_25c, frost_days, hard_frost_days, coldest_night_c. Omit for all.

fromstringoptional

First period to include: 2020, 2020-Q3, 2020-07 or 2020-07-01.

tostringoptional

Last period to include, same formats as `from`.

Responses

Successful Response

application/json
DatasetValuesfields returned to you
datasetstringalways returned

Dataset slug; describe it with /v1/datasets/{slug}.

levelstringalways returned

suburb, lga or block.

areastringalways returned

Canonical name (or mesh-block code) of the area answered.

period_typestringalways returned

snapshot, year, financial_year, quarter or month.

as_ofstring · datealways returned

Date the dataset is current to. Values are never withheld for age; check this instead.

modelledbooleanalways returned

True when the figures are estimates from a model rather than counts or measurements.

fieldsarray of DatasetFieldSeriesalways returned
GET/v1/suburbs/{suburb_name}/environment/heat-and-extremes
cURL
curl --request GET \
  --url 'https://api.microburbs.com.au/v1/suburbs/Belmont%20North/environment/heat-and-extremes' \
  --header 'Authorization: Bearer test'
Example Responses
{
  "data": {
    "dataset": "heat-and-extremes",
    "level": "suburb",
    "area": "Bondi",
    "period_type": "year",
    "as_of": "2025-12-31",
    "modelled": true,
    "fields": [
      {
        "field": "days_over_30c",
        "name": "Days over 30°C",
        "unit": "days",
        "values": [
          {
            "period": "2023",
            "period_start": "2023-01-01",
            "value": 24
          },
          {
            "period": "2024",
            "period_start": "2024-01-01",
            "value": 19
          },
          {
            "period": "2025",
            "period_start": "2025-01-01",
            "value": 34
          }
        ]
      },
      {
        "field": "days_over_35c",
        "name": "Days over 35°C",
        "unit": "days",
        "values": [
          {
            "period": "2023",
            "period_start": "2023-01-01",
            "value": 5
          },
          {
            "period": "2024",
            "period_start": "2024-01-01",
            "value": 5
          },
          {
            "period": "2025",
            "period_start": "2025-01-01",
            "value": 8
          }
        ]
      },
      {
        "field": "days_over_40c",
        "name": "Days over 40°C",
        "unit": "days",
        "values": [
          {
            "period": "2023",
            "period_start": "2023-01-01",
            "value": 0
          },
          {
            "period": "2024",
            "period_start": "2024-01-01",
            "value": 0
          },
          {
            "period": "2025",
            "period_start": "2025-01-01",
            "value": 2
          }
        ]
      }
    ]
  }
}
Successful Response200
application/json

About this dataset

About 15,300 suburbs and localities; calendar years 2016-2025. Current to 2025-12-31; refreshed yearly. These figures are modelled estimates.

What it is

A year-by-year record of temperature extremes for every suburb for the ten calendar years 2016 to 2025: how many days topped 30, 35 and 40°C, how long the longest hot run lasted, how many nights stayed above 20 or 25°C, and how many mornings were frosty.

What it shows

For each year: days with a high of 30°C or more, 35°C or more and 40°C or more; the longest run of consecutive days at 35°C or more; the hottest day and the temperature reached on the hottest 1% of days; nights where the low stayed at or above 20°C and 25°C; days with a low under 2°C and under 0°C; and the coldest night.

Why use it

Extreme heat and frost drive health risk, energy demand, insurance, crop and garden choices, outdoor work and school sport decisions. A per-year count shows whether a suburb is getting hotter (compare 2016 with 2024) and how much a place varies between mild and extreme years, which an average hides. Use it for heat-risk scores, relocation guides and property-report climate panels.

How it is built

We take the national 5 km grid of daily maximum and minimum temperature and count the days that cross each threshold in each calendar year. Each suburb gets the 5 km grid cell at a point inside its boundary (the nearest land cell within about 10 km if that cell is open water), so the figures describe the local grid cell and can differ from a nearby weather station, especially on hills and at the coast. A frost day here is a day with a lowest air temperature under 2°C, which is a better guide to ground frost than a 0°C count. Daily values are interpolated from weather-station records, not measured at the suburb. 2025 is the latest complete year.

Fields

FieldUnitDescription
days_over_30c
Days over 30°C
daysNumber of days in the year with a highest temperature of 30°C or more.
days_over_35c
Days over 35°C
daysNumber of days in the year with a highest temperature of 35°C or more.
days_over_40c
Days over 40°C
daysNumber of days in the year with a highest temperature of 40°C or more.
longest_hot_spell_days
Longest run of 35°C+ days
daysMost consecutive days in the year with a highest temperature of 35°C or more.
hottest_day_c
Hottest day
°CHighest daily maximum temperature of the year.
hot_day_threshold_p99_c
Temperature on the hottest 1% of days
°CDaily maximum that only the hottest 1% of days in the year reached or exceeded (the 99th percentile).
nights_over_20c
Nights over 20°C
nightsNumber of nights in the year when the lowest temperature stayed at 20°C or above (a 'tropical night').
nights_over_25c
Nights over 25°C
nightsNumber of nights in the year when the lowest temperature stayed at 25°C or above (very hot nights).
frost_days
Frost days (under 2°C)
daysNumber of days in the year with a lowest temperature under 2°C, the usual measure of frost risk at ground level.
hard_frost_days
Days below 0°C
daysNumber of days in the year with a lowest temperature below 0°C.
coldest_night_c
Coldest night
°CLowest daily minimum temperature of the year.