# NSW Rent Prices by Postcode (Official Bond Data) (`japan-open-data/nsw-rental-bond-rents`) Actor

Get median weekly rents for any New South Wales postcode or suburb from NSW Fair Trading's official rental bond lodgements: unit, house or townhouse by bedrooms and month, with quartiles and year-over-year change. No API key; JSON via API/MCP, $4 per 1,000 rows.

- **URL**: https://apify.com/japan-open-data/nsw-rental-bond-rents.md
- **Developed by:** [Japan Open Data](https://apify.com/japan-open-data) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.00 / 1,000 rent rows

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## NSW Rent Prices by Postcode (Official Bond Data)

**Get median weekly rents for any New South Wales (Australia) postcode or suburb from the official NSW Fair Trading rental bond data: units, houses and townhouses by number of bedrooms and month, with quartiles, bond counts and year-over-year change.** It reads the monthly rental bond lodgement files NSW Fair Trading publishes (every new residential lease in NSW, about 27,000 a month) and returns flat JSON, one row per postcode x dwelling type x bedrooms x month, for **$4 per 1,000 rows**.

- **Actual agreed rents, not asking prices.** Every row is built from the bonds lodged for new leases, so it shows what tenants signed for, not what was advertised.
- **Any NSW postcode or suburb name**: `2000`, `2010`, `Surry Hills`, `Parramatta`, `Bondi Beach`, or `all` for every postcode in the state (about 530 with new leases each month).
- **Monthly back to January 2022**, with the newest month as soon as NSW Fair Trading publishes it (usually in the first weeks of the following month).
- **Median, lower quartile (25th percentile), upper quartile (75th percentile) and count** per group, plus the median per month, the 3-month rolling median and the % change on the same month a year earlier.
- **Small samples are flagged:** `lowCount: true` when a row is based on fewer than 5 bonds.
- Built for pipelines and AI agents: flat camelCase fields, a `status` on every row, plain-English errors that are never charged. No API key, no login.

### Why use this instead of Rent Check or a paid report?

| | NSW Rent Check (free website) | Paid postcode reports (e.g. SQM Research) | **This Actor** |
|---|---|---|---|
| Data | Official bonds, last 3 months, one range | Asking (advertised) rents and listings | **Official bonds: what tenants actually signed** |
| Many postcodes at once | One postcode and one property type per search | One report per postcode, or a monthly subscription | **Up to 1,000 postcodes, or `all`, in one run** |
| History | Recent quarter only | Yes | **Every month since January 2022** |
| Quartiles, counts, year-over-year | Range only | Varies | **Yes, per month, plus a 3-month median** |
| Format | Web page | Web pages / PDF | **Flat JSON, CSV, Excel; API, schedules and MCP** |
| Price | Free | About A$50 per postcode report, or about A$100 a month | **$4 per 1,000 rows, no subscription** (every NSW postcode for one month is about $16) |

### What can you do with it?

- **Property investors and buyer's agents** - check the real rent for a 2-bedroom unit in a postcode before you buy, and the gross yield it supports.
- **Property managers and landlords** - set or review a rent against what new leases in the same postcode, type and size signed last month.
- **Proptech and data teams** - feed a rent model or dashboard with every NSW postcode, every month, on a schedule.
- **Relocation, corporate housing and HR** - budget housing allowances by suburb.
- **Analysts and journalists** - track rent growth by suburb and dwelling type, year over year.
- **AI agents** - answer "what does a 2-bedroom unit rent for in Surry Hills?" with one tool call and a source link.

### How to use

1. Click **Try for free**. The default input returns the last 3 months for postcode **2000 (Sydney CBD)**: one row per dwelling type and bedroom count, plus one all-properties row per month, in about 10 seconds.
2. Replace `2000` with your postcodes or suburb names (one per line). A suburb is looked up to its postcode, because NSW publishes the data by postcode.
3. Optionally narrow **Dwelling types** (unit, house, townhouse, other) and **Bedrooms** (0 = studio ... 5+), and set **Number of months** (1 to 36).
4. For a past period, set **Last month** to `YYYY-MM` (for example `2025-12`).

#### Run it on a schedule

NSW Fair Trading publishes each month's file in the following month. A monthly Schedule in Apify Console (for example on the 20th, with `"months": 1`) gives you the newest month for your postcodes; add a webhook or an integration (Google Sheets, Slack, your database) to receive the rows.

### Input

| Field | Type | Default | What it does |
|---|---|---|---|
| `postcodes` | list of text (required) | `["2000"]` | NSW postcodes (`"2010"`) or suburb names (`"Surry Hills"`, `"Mt Druitt"`, `"Parramatta NSW 2150"`). `"all"` = every NSW postcode. Up to 1,000 entries. |
| `dwellingTypes` | list | `["unit", "house", "townhouse"]` | `unit` (flat / apartment), `house`, `townhouse` (terrace, townhouse, semi-detached), `other` (rooms, garages, car spaces...). |
| `bedrooms` | list | all | `"0"` (studio / bedsit), `"1"`, `"2"`, `"3"`, `"4"`, `"5+"`. |
| `months` | integer | `3` | Number of monthly periods, counting back from the latest month published (or from `endMonth`). 1 to 36. |
| `endMonth` | `YYYY-MM` | latest | The most recent month to return, from `2022-01`. |
| `includeTotals` | boolean | `true` | Adds one row per postcode and month with `dwellingType: "all"`, `bedrooms: "all"` pooling every bond that matches your filters (skipped when you ask for a single type and bedroom count, since it would repeat that row). |
| `includeYearOverYear` | boolean | `true` | Adds the median a year earlier and the % change. Turn off for slightly faster runs. |
| `includeLodgements` | boolean | `false` | Also returns the individual bonds behind the statistics (lodgement date, postcode, type, bedrooms, weekly rent), one row each with `recordType: "lodgement"`. |
| `maxLodgements` | integer | `1000` | Upper limit on lodgement rows per run (newest first). |

#### Input examples

```json
{ "postcodes": ["Surry Hills", "Newtown", "2026"], "dwellingTypes": ["unit"], "bedrooms": ["1", "2"], "months": 6 }
```

```json
{ "postcodes": ["all"], "months": 1, "includeYearOverYear": true }
```

```json
{ "postcodes": ["2150"], "dwellingTypes": ["house"], "bedrooms": ["3", "4"], "months": 12, "endMonth": "2025-12" }
```

### Output

One row per postcode x dwelling type x bedrooms x month (`recordType: "summary"`):

```json
{
  "status": "ok",
  "recordType": "summary",
  "query": "Surry Hills",
  "suburb": "Surry Hills",
  "postcode": "2010",
  "postcodeShareOfSuburb": 1.0,
  "postcodeSuburbs": "Surry Hills; Darlinghurst",
  "dwellingType": "unit",
  "bedrooms": "2",
  "month": "2026-08",
  "bondsLodged": 66,
  "lowCount": false,
  "medianWeeklyRent": 1025,
  "lowerQuartileWeeklyRent": 952.5,
  "upperQuartileWeeklyRent": 1200,
  "medianMonthlyRent": 4442,
  "medianWeeklyRent3Months": 1077.5,
  "bondsLodged3Months": 168,
  "medianWeeklyRentYearAgo": 1000,
  "bondsLodgedYearAgo": 56,
  "yearOverYearChangePct": 2.5,
  "sourceFileUrl": "https://www.nsw.gov.au/sites/default/files/noindex/2026-09/rentalbond_lodgements_august_2026.xlsx",
  "fetchedAt": "2026-10-02T07:49:01Z",
  "source": "NSW Fair Trading rental bond lodgement data (nsw.gov.au), CC BY 4.0, (c) State of New South Wales; suburb names: ABS ASGS 2021, CC BY 4.0. Not affiliated with the NSW Government."
}
```

A free row tells you what to change when nothing matched or an entry was wrong:

```json
{ "status": "error", "query": "Sury Hills", "error": "\"Sury Hills\" is not a known NSW suburb or postcode (did you mean Surry Hills?), so use a 4-digit NSW postcode such as \"2000\" or an NSW suburb name such as \"Surry Hills\"." }
```

#### Output fields

| Field | Meaning |
|---|---|
| `status` | `ok`, `not_found` (no bond matched; free) or `error` (wrong input or source unavailable; free) |
| `recordType` | `summary` (statistics) or `lodgement` (one bond, only with `includeLodgements`) |
| `query` | The entry from your input that produced the row |
| `suburb` | The suburb you asked for, when you gave a suburb name |
| `postcode` | NSW postcode |
| `postcodeShareOfSuburb` | When a suburb spans several postcodes: the share of the suburb's dwellings in this postcode (2021 Census) |
| `postcodeSuburbs` | The main suburbs in the postcode, largest first |
| `dwellingType` | `unit`, `house`, `townhouse`, `other`, or `all` for the all-properties row |
| `bedrooms` | `0` (studio) to `4`, `5+`, or `all` |
| `month` | Month the bonds were lodged, `YYYY-MM` |
| `bondsLodged` | Number of new bonds (new leases) in the group |
| `lowCount` | `true` when `bondsLodged` is below 5: treat the figures with care |
| `medianWeeklyRent` | Median weekly rent, A$ |
| `lowerQuartileWeeklyRent` / `upperQuartileWeeklyRent` | 25th and 75th percentile weekly rent, A$ |
| `medianMonthlyRent` | `medianWeeklyRent` x 52 / 12, rounded, A$ |
| `medianWeeklyRent3Months` / `bondsLodged3Months` | Median and count over this month and the two before it (null when one of them is not available) |
| `medianWeeklyRentYearAgo` / `bondsLodgedYearAgo` | Same group, same month a year earlier |
| `yearOverYearChangePct` | % change of the median on a year earlier (null when either month has fewer than 5 bonds) |
| `lodgementDate` / `weeklyRent` | Lodgement rows only: the date the bond was lodged and the weekly rent, A$ |
| `sourceFileUrl` | The NSW Fair Trading file the row was computed from |
| `error` | Plain-English reason on free rows |

Quartiles use linear interpolation between ranks (the same as Excel `QUARTILE.INC`). Bonds with an unknown type, bedroom count or rent, and rents under A$20 a week (data-entry errors), are left out.

### How much does it cost?

Pay per event, no subscription:

| Event | Price | When |
|---|---|---|
| Rent row | **$0.004** ($4.00 per 1,000) | Each returned row with `status: "ok"` (a summary row or, if you ask for them, a lodgement row) |
| Actor start | **$0.001** | Once per run |

`not_found` and `error` rows are always free. The **Pricing** tab shows the current price.

| Use | Rows | Cost per run |
|---|---|---|
| Default input (postcode 2000, 3 months) | about 25-30 | about **$0.11** |
| One postcode, one type and bedroom count, 12 months | 12 | about **$0.05** |
| 10 postcodes, units and houses by bedrooms, latest month | about 60-100 | about **$0.25-0.40** |
| Every NSW postcode, latest month, all types and bedrooms | about 4,000 | about **$16** |
| Every NSW postcode, 36 months, all types and bedrooms | about 143,000 | about **$570** - set a cost cap |
| Wrong input or nothing found | 0 (one free row) | **$0.001** |

Big runs add up quickly: `"all"` with many months returns one row per postcode, type, bedroom count and month. Set **Maximum cost per run** in the run options to cap any run; the Actor stops cleanly when the cap is reached. For a monthly feed of every postcode, run `"all"` with `"months": 1` once a month (about $16).

### Use via API & MCP (AI agents)

REST API (synchronous, returns the rows):

```bash
curl -X POST "https://api.apify.com/v2/acts/japan-open-data~nsw-rental-bond-rents/run-sync-get-dataset-items?token=YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"postcodes": ["Surry Hills"], "dwellingTypes": ["unit"], "bedrooms": ["2"], "months": 3}'
```

Python:

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_TOKEN")
run = client.actor("japan-open-data/nsw-rental-bond-rents").call(
    run_input={"postcodes": ["2150", "Newtown"], "dwellingTypes": ["house"], "bedrooms": ["3"], "months": 12})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
    if row["status"] == "ok":
        print(row["postcode"], row["month"], row["medianWeeklyRent"], row["bondsLodged"], row["lowCount"])
```

MCP: add the Apify MCP server (`https://mcp.apify.com`) to Claude, Cursor or any MCP client and enable the tool `japan-open-data/nsw-rental-bond-rents`.

Recommended settings for agents:

- For "what does a 2-bedroom unit rent for in X?", use `{"postcodes": ["X"], "dwellingTypes": ["unit"], "bedrooms": ["2"], "months": 3}` and quote `medianWeeklyRent3Months` (more stable than one month), `bondsLodged3Months` and the lower and upper quartiles.
- Australian rents are quoted per week; `medianMonthlyRent` is provided for readers used to monthly rents.
- If `lowCount` is `true`, say the sample is small, or widen the period with a larger `months`.
- Keep runs small: name the postcodes or suburbs you need and narrow `dwellingTypes` and `bedrooms`. Avoid `"all"` with many `months` unless the user asked for a full dataset (each `ok` row is billed).
- Quote `month` and `sourceFileUrl`, and say the figures are rents agreed in new leases (bond lodgements), not asking rents.

Summary for AI assistants: *This tool returns official New South Wales (Australia) rents from NSW Fair Trading's rental bond lodgements, by postcode or suburb, dwelling type (unit, house, townhouse), number of bedrooms and month since 2022: number of new bonds, median and quartile weekly rent in A$, a 3-month rolling median and the year-over-year change, as flat JSON rows.*

### Privacy

The NSW files contain no names and no street addresses: only the lodgement date, postcode, dwelling type, bedrooms and weekly rent. This Actor returns the same or less: statistics by postcode, and (only if you ask) the individual bonds with those five fields. No personal data is collected or returned.

### FAQ

#### How fresh is the data?

Every run reads the NSW Fair Trading page and uses the newest monthly file published there, so new months appear automatically. NSW usually publishes a month's file during the following month.

#### Is a "bond lodged" the same as a new lease?

Almost: in NSW, when a landlord or agent takes a rental bond for a residential tenancy it must be lodged with NSW Fair Trading, so bond lodgements are the standard official measure of new-lease rents. Tenancies where no bond is taken are not included.

#### Why do some suburbs give several postcodes?

NSW publishes the data by postcode. When a suburb is split between postcodes, you get one set of rows per postcode, with `postcodeShareOfSuburb` (share of the suburb's dwellings in the 2021 Census). The statistics always describe the whole postcode.

#### Why is a month missing for my postcode?

Rows are only returned for groups with at least one bond in the month. Small postcodes, or a narrow type and bedroom filter, can have months with none; widen `months` or remove a filter.

#### Can I get the median rent for every NSW postcode at once?

Yes. Use `{"postcodes": ["all"], "months": 1}` for the latest month: about 4,000 rows (every postcode with new leases, by dwelling type and bedrooms, plus an all-properties row), about $16 per run.

#### Does it cover Victoria, Queensland or other states?

No, only New South Wales. Other states publish rent data in different forms (mostly quarterly medians); open an issue if you need one of them.

#### Is it legal to use this data?

Yes. NSW Government material is licensed under Creative Commons Attribution 4.0 (CC BY 4.0), which allows commercial use with attribution. Each row carries the attribution in `source`.

#### Is this an official NSW Government service?

No. It is an independent tool that reads the NSW Government's open data. It is not affiliated with or endorsed by NSW Fair Trading.

### Troubleshooting

- **`"... is not a known NSW suburb or postcode"`** - check the spelling, or give the 4-digit postcode. The message suggests close matches.
- **`"... matches N NSW suburbs"`** - the name exists in several council areas; use the qualified name shown (for example `Back Creek (Tweed)`) or the postcode.
- **`not_found` for a postcode** - no bond matched your filters in the period, or the postcode is not in NSW.
- **An `error` row saying nsw.gov.au could not be reached** - the NSW website was unavailable. Nothing is charged for that row; run again later.

### Known limitations

- Data is by postcode only (NSW does not publish suburb or street detail). Suburb names are mapped to postcodes with the ABS 2021 suburb and postal area boundaries.
- Monthly files start in January 2022. Earlier years are published only as yearly files and are not included.
- Dwelling type and bedrooms are as reported by the agent or landlord; "other" mixes rooms, garages and car spaces.
- The 3-month median and the year-ago figures need the earlier months; they are null for the first months of 2022.

### Data source and licence

- Rents: NSW Government, NSW Fair Trading, *Rental bond data* - https://www.nsw.gov.au/housing-and-construction/rental-forms-surveys-and-data/rental-bond-data - © State of New South Wales, licensed under CC BY 4.0.
- Suburb names and suburb-to-postcode mapping: Australian Bureau of Statistics, ASGS Edition 3 (2021) allocation files and 2021 Census mesh block counts - © Commonwealth of Australia, CC BY 4.0.

### More from Japan Open Data

- [Argentina Fuel Prices API by Station (Official)](https://apify.com/japan-open-data/argentina-fuel-station-prices) — last reported gasoline (nafta), diesel and CNG prices at every Argentine gas station from the Energy Secretariat's official open data, with the report date of each price, coordinates and distance.
- [England Listed Building & Conservation Area Check](https://apify.com/japan-open-data/england-heritage-constraint-lookup) — official listed buildings, scheduled monuments, conservation areas and Article 4 directions for any postcode or coordinates in England, one row per location.
- [England Protected Site Check: SSSI, AONB & Green Belt](https://apify.com/japan-open-data/england-protected-site-lookup) — SSSI, National Landscape (AONB), National Park, Green Belt, SAC/SPA and Ramsar checks for any English postcode or coordinates, one row per site, from official Natural England and DLUHC data.
- [France Building Permits API: Construction Leads](https://apify.com/japan-open-data/france-building-permits) — official French building permits (Sitadel) filed by companies, by department, commune or date, with SIREN, project type and floor areas.
- [France Property Risk Lookup by Address (Georisques)](https://apify.com/japan-open-data/france-property-risk-lookup) — official Géorisques risks for any French address or coordinates: flood, clay shrink-swell, seismic zone, radon, past natural-disaster declarations and nearby industrial / polluted sites, one row per location.
- [Japan Postal Code & Address in English](https://apify.com/japan-open-data/japan-postal-code-english) — look up Japanese postal codes and addresses in English/romaji, kanji and kana, from Japan Post's official data.
- [Korea E-commerce Company Leads (KFTC Register)](https://apify.com/japan-open-data/korea-online-seller-registry) — new Korean e-commerce companies from the official KFTC online seller register (통신판매업), in English with business registration number and store platform.
- [Mexico Gas Prices API by Station (Official CNE)](https://apify.com/japan-open-data/mexico-fuel-station-prices) — today's regular, premium and diesel prices at every Mexican gas station, from the official CNE feed.
- [Poland Building Permits API: Construction Leads](https://apify.com/japan-open-data/poland-building-permits) — new Polish building permits (pozwolenia na budowę) issued to companies and public bodies, with investor, building category and site, from the official GUNB register.
- [TSA Checkpoint Travel Numbers (Daily, Weekly & YoY)](https://apify.com/japan-open-data/tsa-checkpoint-throughput) — daily U.S. TSA airport checkpoint traveler counts as clean JSON, with weekly averages and year-over-year change.
- [Taiwan Real Estate Sold Prices API in English](https://apify.com/japan-open-data/taiwan-property-sold-prices) — official Taiwan actual-price-registration sales (buildings, land, parking) by city and district, translated into English with price per ping and per m².
- [UK Flood Risk Lookup by Postcode (England)](https://apify.com/japan-open-data/uk-flood-zone-lookup) — Environment Agency flood zone, recorded flood extents and flood defences for any postcode or coordinates in England.
- [UK HGV Operator Licence Lookup (Official DVSA)](https://apify.com/japan-open-data/uk-hgv-operator-licence) — search the official DVSA / Traffic Commissioner register of UK truck and bus operator licences by company name, postcode area or fleet size.
- [UK Importers & Exporters by Product (HMRC Data)](https://apify.com/japan-open-data/uk-importer-exporter-directory) — UK companies that imported or exported a product each month, by HS code or keyword, from official HMRC trade data, with new traders flagged for lead lists.
- [UK NHS Organisation Lookup (Official ODS Codes)](https://apify.com/japan-open-data/uk-nhs-organisation-lookup) — GP practices, pharmacies, dentists, hospitals and NHS trusts from the official ODS register, by postcode, type or ODS code (organisations only).
- [UK Visa Sponsor Register Tracker (Daily Changes)](https://apify.com/japan-open-data/uk-visa-sponsor-register) — new, removed and downgraded UK visa sponsor licences from the official Home Office register, or check whether a company can sponsor workers.
- [UK Waste Carrier Licence Check (Environment Agency)](https://apify.com/japan-open-data/uk-waste-carrier-register) — check whether a company is a registered waste carrier, broker or dealer in England by registration number, company name or postcode radius, from the Environment Agency's public register (companies and organisations only).
- [US Flood Zone Lookup by Address (FEMA NFHL)](https://apify.com/japan-open-data/us-flood-zone-lookup) — official FEMA flood zone (A, AE, VE, X…), base flood elevation and FIRM panel for any U.S. address or coordinates.
- [US Hail History by Location (NOAA NEXRAD Radar)](https://apify.com/japan-open-data/us-hail-history) — every hail day near any U.S. latitude/longitude with max estimated hail size, from NOAA NEXRAD radar.
- [US Storm Reports API: Hail, Wind & Tornado (NWS)](https://apify.com/japan-open-data/us-storm-reports-live) — U.S. hail, wind, tornado and flood reports from official NWS Local Storm Reports within hours (last 7 days), filterable by state or radius.

### Feedback

Found a wrong figure, a suburb that maps to the wrong postcode, or a month that is missing? Open an issue on the **Issues** tab — it will be read.

# Actor input Schema

## `postcodes` (type: `array`):

New South Wales postcodes (e.g. "2000") or suburb names (e.g. "Surry Hills", "Parramatta"), one per line. A suburb is looked up to its postcode(s), because the official data is published by postcode. Use "all" for every NSW postcode. Up to 1,000 entries per run.

## `dwellingTypes` (type: `array`):

Which property types to return: unit (flat / apartment), house, townhouse (terrace, townhouse, semi-detached) and other (rooms, garages, car spaces...). Empty = unit, house and townhouse.

## `bedrooms` (type: `array`):

Which bedroom counts to return: 0 (studio / bedsit), 1, 2, 3, 4 and 5+ (five or more). Empty = all.

## `months` (type: `integer`):

How many monthly periods to return, counting back from the latest month NSW Fair Trading has published (or from endMonth). One row per month. 1 to 36.

## `endMonth` (type: `string`):

The most recent month to return, as YYYY-MM (e.g. "2025-12"). Leave empty for the latest month published. Monthly data starts in 2022-01.

## `includeTotals` (type: `boolean`):

Also return, per postcode and month, one row (dwellingType "all", bedrooms "all") pooling every bond that matches your filters.

## `includeYearOverYear` (type: `boolean`):

Also read the same months one year earlier and return the median a year ago and the % change. Turn off for faster runs.

## `includeLodgements` (type: `boolean`):

Also return the raw lodgements behind the statistics (date, postcode, type, bedrooms, weekly rent; no address and no names), one row each (recordType "lodgement"). Each row is a billed result.

## `maxLodgements` (type: `integer`):

Upper limit on individual lodgement rows per run when "Include individual bond lodgements" is on (newest first per postcode).

## Actor input object example

```json
{
  "postcodes": [
    "2000"
  ],
  "dwellingTypes": [
    "unit",
    "house",
    "townhouse"
  ],
  "bedrooms": [],
  "months": 3,
  "includeTotals": true,
  "includeYearOverYear": true,
  "includeLodgements": false,
  "maxLodgements": 1000
}
```

# Actor output Schema

## `results` (type: `string`):

Median and quartile weekly rents per postcode, dwelling type, bedrooms and month. Table view: overview.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "postcodes": [
        "2000"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("japan-open-data/nsw-rental-bond-rents").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "postcodes": ["2000"] }

# Run the Actor and wait for it to finish
run = client.actor("japan-open-data/nsw-rental-bond-rents").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "postcodes": [
    "2000"
  ]
}' |
apify call japan-open-data/nsw-rental-bond-rents --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,japan-open-data/nsw-rental-bond-rents"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/7u8Rzmbs9xwe4drHi/builds/oZyTuFf8mgujIwjOA/openapi.json
