Microburbs
Live sandbox. Send any request below against one sample suburb and property — no signup needed. For full coverage, create an API key.
Classic docs
Microburbs Property Data API
Suburb - Profile

List suburbs

GET/v1/suburbs/listFree

List Australian suburbs (SALs). Always returns {suburb, state} per row so SAL-name collisions across states are unambiguous.

With no filter you get the first 1000 suburbs alphabetically (browser-renderable preview). Pass any of the filters to narrow: state / lga / sa4 / sa3 / postcode / q (name search). Filters combine (AND). Flat cost regardless of how many rows come back.

Name search (q) is typo-tolerant. It tries an exact match, then substring, then a fuzzy near-miss, and returns match (exact / contains / fuzzy) and score on every row so you can see which happened.

Always tell the user which suburb you resolved to, and its state, before quoting numbers for it. A fuzzy match is a suggestion, not a confirmation — rokeby is one letter from Kokeby in Western Australia and Rokeby exists in both Tasmania and Victoria. If more than one candidate is plausible, ask rather than pick.

When q is combined with state, the state is a preference, not a filter: in-state candidates rank first, but a suburb of that name in another state is still returned rather than hidden, so a near-miss becomes "Seaview is in Victoria, not Tasmania" instead of "no data". Every other filter stays a strict AND.

Free.

Authorization

Request

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

Query parameters

statestringoptional

Filter by state / territory (e.g. NSW, VIC, 'New South Wales').

lgastringoptional

Filter by Local Government Area name.

sa4stringoptional

Filter by SA4 name.

sa3stringoptional

Filter by SA3 name.

postcodestringoptional

Filter by 4-digit postcode (POA).

qstringoptional

Suburb-name search. Matches exactly, then by substring, then by fuzzy near-miss so a typo still resolves ('devenport' -> Devonport). Each row comes back with `match` and `score` saying how it was found.

Responses

Successful Response

application/json
list[SuburbListItem]fields returned to you
Array of:
suburbstringalways returned

Suburb (SAL) name.

statestringalways returned

State / Territory.

matchstringmay be null

How this row matched the `q` you sent — `exact`, `contains`, or `fuzzy` (a near-miss recovered from a likely typo). Only present when `q` was supplied. **Anything other than `exact` is a suggestion, not a confirmation: tell the user which suburb and state you used before you quote numbers for it.** A `fuzzy` row in a different state from the one the user named is very often the wrong place.

scorenumbermay be null

Match confidence 0-1 (1.0 = exact). Only present when `q` was supplied. Use it to decide between asking the user and proceeding — not as a licence to pick silently.

GET/v1/suburbs/list
cURL
curl --request GET \
  --url 'https://api.microburbs.com.au/v1/suburbs/list' \
  --header 'Authorization: Bearer test'
Example Responses
{
  "data": [
    {
      "state": "New South Wales",
      "suburb": "Belmont North"
    }
  ]
}
Successful Response200
application/json