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 - Amenities

Health services nearby

GET/v1/suburbs/{suburb_name}/amenities/health-services5¢ per call

GPs and medical centres, pharmacies, dentists, hospitals and vets: counts in the suburb, rates per 1,000 residents and distance from the suburb centre to the nearest of each.

Coverage: All Australian suburbs and localities. Current to 2026-10-01. Full description, field list and method: /v1/datasets/health-services.

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: count_gps, per_1000_gps, nearest_km_gps, count_pharmacies, per_1000_pharmacies, nearest_km_pharmacies, count_dentists, per_1000_dentists, nearest_km_dentists, count_hospitals, per_1000_hospitals, nearest_km_hospitals, count_vets, per_1000_vets, nearest_km_vets, count_total, per_1000_total, per_km2_total. 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}/amenities/health-services
cURL
curl --request GET \
  --url 'https://api.microburbs.com.au/v1/suburbs/Belmont%20North/amenities/health-services' \
  --header 'Authorization: Bearer test'
Example Responses
{
  "data": {
    "dataset": "health-services",
    "level": "suburb",
    "area": "Subiaco",
    "period_type": "snapshot",
    "as_of": "2026-10-01",
    "modelled": false,
    "fields": [
      {
        "field": "count_gps",
        "name": "GPs and medical centres: count",
        "unit": "count",
        "values": [
          {
            "period": "2026-10-01",
            "period_start": "2026-10-01",
            "value": 24
          }
        ]
      },
      {
        "field": "per_1000_gps",
        "name": "GPs and medical centres: per 1,000 residents",
        "unit": "per 1,000",
        "values": [
          {
            "period": "2026-10-01",
            "period_start": "2026-10-01",
            "value": 2.416918
          }
        ]
      },
      {
        "field": "nearest_km_gps",
        "name": "GPs and medical centres: nearest",
        "unit": "km",
        "values": [
          {
            "period": "2026-10-01",
            "period_start": "2026-10-01",
            "value": 0.109
          }
        ]
      }
    ]
  }
}
Successful Response200
application/json

About this dataset

All Australian suburbs and localities. Current to 2026-10-01; refreshed quarterly.

What it is

GPs and medical centres, pharmacies, dentists, hospitals and vets, summarised for every suburb in one call.

What it shows

For each category: the number inside the suburb boundary, the number per 1,000 residents, and the distance in kilometres from the suburb centre to the nearest one. Plus a total count, a total per 1,000 residents and a total per square kilometre for the whole group.

Why use it

Access to a doctor, a pharmacy and a hospital matters most to families, older buyers and retirees, and is a standard test of whether an area is under-served. Distances show rural and outer-suburban gaps that counts miss.

How it is built

We combine open map data with a second places database, drop duplicates, closed and unnamed places, and place each one in its suburb by location. Rates use the suburb's latest resident count and are left blank under 200 residents. Distances are straight-line from the suburb's central point, not walking or driving distance, and are blank beyond 50 km. Counts reflect what is mapped, so very small or remote suburbs can be under-counted.

Fields

FieldUnitDescription
count_gps
GPs and medical centres: count
countNumber of gps and medical centres inside the suburb boundary.
per_1000_gps
GPs and medical centres: per 1,000 residents
per 1,000GPs and medical centres per 1,000 residents. Left blank for suburbs with fewer than 200 residents.
nearest_km_gps
GPs and medical centres: nearest
kmStraight-line distance from the suburb centre to the nearest of these, in kilometres; blank when none is within 50 km.
count_pharmacies
Pharmacies: count
countNumber of pharmacies inside the suburb boundary.
per_1000_pharmacies
Pharmacies: per 1,000 residents
per 1,000Pharmacies per 1,000 residents. Left blank for suburbs with fewer than 200 residents.
nearest_km_pharmacies
Pharmacies: nearest
kmStraight-line distance from the suburb centre to the nearest of these, in kilometres; blank when none is within 50 km.
count_dentists
Dentists: count
countNumber of dentists inside the suburb boundary.
per_1000_dentists
Dentists: per 1,000 residents
per 1,000Dentists per 1,000 residents. Left blank for suburbs with fewer than 200 residents.
nearest_km_dentists
Dentists: nearest
kmStraight-line distance from the suburb centre to the nearest of these, in kilometres; blank when none is within 50 km.
count_hospitals
Hospitals: count
countNumber of hospitals inside the suburb boundary.
per_1000_hospitals
Hospitals: per 1,000 residents
per 1,000Hospitals per 1,000 residents. Left blank for suburbs with fewer than 200 residents.
nearest_km_hospitals
Hospitals: nearest
kmStraight-line distance from the suburb centre to the nearest of these, in kilometres; blank when none is within 50 km.
count_vets
Vets: count
countNumber of vets inside the suburb boundary.
per_1000_vets
Vets: per 1,000 residents
per 1,000Vets per 1,000 residents. Left blank for suburbs with fewer than 200 residents.
nearest_km_vets
Vets: nearest
kmStraight-line distance from the suburb centre to the nearest of these, in kilometres; blank when none is within 50 km.
count_total
All health services nearby: count
countTotal of all categories in this group inside the suburb.
per_1000_total
All health services nearby: per 1,000 residents
per 1,000Total per 1,000 residents; blank for suburbs with fewer than 200 residents.
per_km2_total
All health services nearby: per km2
per km2Total per square kilometre of suburb area.