# Anjuke 安居客 Rent Scraper - 100+ Fields, 677 Cities (`zen-studio/anjuke-rent-scraper`) Actor

Extract rental listings (租房) from Anjuke across 677 Chinese cities. Get rent, photos, video tours, broker profiles, community price trends, nearby metro & schools. Filter by district, rent range, rooms, whole vs shared, broker vs private owner. 100+ fields per listing.

- **URL**: https://apify.com/zen-studio/anjuke-rent-scraper.md
- **Developed by:** [Zen Studio](https://apify.com/zen-studio) (community)
- **Categories:** Real estate, Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $7.99 / 1,000 listings

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Anjuke 安居客 Rent Scraper | 租房 Listings & Broker Data Across 677 Chinese Cities (2026)

![Anjuke Rent Scraper](https://iili.io/BgfVSkl.png)

<blockquote style="border-left:4px solid #4C945E;background:#F0FDF4;padding:12px 16px">
<span style="font-size:16px;font-weight:700;color:#1C1917">100+ data points per listing across 677 cities</span> <span style="font-size:15px;color:#57534E"> — rent per month, photos, video walkthroughs, broker or private-owner info, appliances, community price trends, nearby metro & schools.</span>
</blockquote>

<table>
<tr>
<td colspan="2" style="padding:10px 14px;background:#4C945E;border:none;border-radius:4px 4px 0 0">
<span style="color:#FAFAF9;font-size:14px;font-weight:700;letter-spacing:0.5px">Zen Studio Real Estate</span>
<span style="color:#E8F5E9;font-size:13px">&nbsp;&nbsp;&bull;&nbsp;&nbsp;Listings, prices, and broker data from major housing markets</span>
</td>
</tr>
<tr>
<td style="padding:12px 16px;border:1px solid #E7E5E4;border-radius:0 0 4px 4px;border-top:none;vertical-align:top">
<img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/NWYsOG96fMDy8ycdf-actor-1tAzNSf8Kz0v7Q2Lr-AINJ7FsZVU-anjuke-scraper-logo.jpg" width="24" height="24" style="vertical-align:middle"> &nbsp;<a href="https://apify.com/zen-studio/anjuke-real-estate-scraper" style="color:#1C1917;text-decoration:none;font-weight:700;font-size:14px">Anjuke Sale Listings</a><br>
<span style="color:#78716C;font-size:12px">二手房 for-sale from 677 Chinese cities — same pipeline, same community enrichment</span>
</td>
</tr>
</table>

### Key Features

- **100+ data points per listing** — rent, floor plan, photos, video tours, broker or owner info, full community price history, nearby schools and metro with walking distances
- **677 Chinese cities** — tier-1 (北京 / 上海 / 广州 / 深圳) through county-level
- **Filter by rental type** — 整租 (whole), 合租 (shared), 长租公寓 (branded apartments), 保租房 (subsidized), plus broker vs private owner
- **Bilingual output** — Chinese fields preserved alongside normalized English structure

### How to Scrape Anjuke Rent Listings

#### Basic — 50 Beijing listings
```json
{
  "city": "beijing",
  "maxResults": 50
}
````

#### Filtered — Haidian 2BR, ¥5-8k, with elevator

```json
{
  "city": "beijing",
  "location": "海淀",
  "rooms": ["2BR"],
  "rentMinRmb": 5000,
  "rentMaxRmb": 8000,
  "features": ["elevator"],
  "rentalType": "whole",
  "maxResults": 100
}
```

#### Private-owner listings only

```json
{
  "city": "shanghai",
  "listedBy": "private",
  "maxResults": 50
}
```

#### Branded long-term apartments (Ziroom / Danke / Vanke Port)

```json
{
  "city": "shenzhen",
  "rentalType": "brandedApartment",
  "maxResults": 100
}
```

### Input Parameters

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `city` | string | *required* | City pinyin or Chinese name. 677 supported cities. |
| `maxResults` | integer | `50` | Number of listings. 10-5000. |
| `location` | string | — | District / community / metro line / metro station. |
| `rentMinRmb` | integer | — | Lower rent bound in ¥/month. |
| `rentMaxRmb` | integer | — | Upper rent bound in ¥/month. |
| `rooms` | array | — | `1BR`, `2BR`, `3BR`, `4BR_PLUS`. Multi-select. |
| `rentalType` | string | `any` | `whole`, `shared`, `brandedApartment`, `subsidized`. |
| `listedBy` | string | `any` | `broker`, `private`. |
| `propertyType` | string | `any` | `residential`, `apartment`, `villa`, etc. |
| `orientation` | array | — | `south`, `north`, `southEast`, ... |
| `fitment` | array | — | `rough`, `simple`, `good`, `luxury`. |
| `features` | array | — | 14 options: `elevator`, `nearSubway`, `vrTour`, `deposit1Rent1`, ... |
| `keyword` | string | — | Free-text search across title and description. |

### What Data Can You Extract from Anjuke Rent Listings?

Every result includes:

- **Core listing** — house ID, URL, title, rent per month, layout, area (m²), category tags, rental type
- **Media** — 1-20 photos, video walkthrough URL (when available)
- **Appliances** — 13-category boolean grid (bed, fridge, AC, washer, TV, broadband, sofa, kitchen access, wardrobe, balcony, heating, water heater, bathroom)
- **Basic info** — payment schedule (付3押1 / 押一付一), published date, orientation, floor & total floors, building age, fitment level
- **Broker OR owner** — either full broker profile (name, agency, store, rating, service tags, seniority) OR private-owner display name + tags + verification status
- **Community** — canonical ID, name, lat/lng, total households, developer, avg ¥/m², 6-month price trend, live rent/sale/new-build counts, nearby metro with walking distance, nearby schools with distance and type, market sentiment
- **Description** — full marketing copy from the broker / owner
- **Timestamps** — scrape time in ISO 8601 UTC

#### Output Example

```json
{
  "houseId": "4503423129639944",
  "url": "https://beijing.zu.anjuke.com/fangyuan/4503423129639944x.html",
  "title": "近地铁 天通苑800至3000不等 无中介 包物业取暖随时看",
  "rentPerMonthRmb": 1550,
  "priceUnit": "",
  "model": "3室1厅2卫",
  "areaSqm": 10.0,
  "houseType": "合租",
  "categoryTags": ["合租", "近地铁", "精装修"],
  "searchTags": ["独立单间", "押一付一", "独卫", "近地铁", "南北通透", "配套齐全", "精装修"],
  "isAnjukeGuaranteed": true,
  "photos": [
    "https://pic1.ajkimg.com/display/anjuke/de52a8c696b640c8b3fc9b92c9aa73c2/420x315.jpg",
    "https://pic1.ajkimg.com/display/anjuke/38bb123699085ded589510117b7475e2/420x315.jpg",
    "// ... 7 more photos"
  ],
  "video": null,
  "appliances": {
    "床": true, "冰箱": true, "空调": true, "洗衣机": true, "电视": false,
    "宽带": true, "沙发": true, "可做饭": true, "衣柜": true, "阳台": true,
    "暖气": true, "热水器": true, "卫生间": true
  },
  "basicInfo": {
    "paymentSchedule": "付1押1",
    "publishedAt": "2026-03-23",
    "orientation": "南北",
    "floor": {"type": "mid", "total": 11, "raw": "中层（共11层）"},
    "ageOfBuilding": "2008年",
    "fitment": "精装修"
  },
  "description": "天通苑是北京以家庭的需要为核心从项目硬件到生活软件，配合全新物业形态统一规划的全功能亲人社区……",
  "broker": {
    "id": "200402229",
    "name": "段晓雪",
    "photo": "https://spic1.ajkimg.com/COfbhB-Cua1WA9jhR-6BQgnlLRcliAfbFVn5SRTGO7pzziQI2B1TriIGITFxfd09uBYH780oUg828R4PVt9lZKWE...",
    "companyName": "天成安居",
    "storeName": "天成安居租赁中心店",
    "rating": 4.9,
    "seniorityYears": null,
    "serviceTags": []
  },
  "owner": null,
  "source": "broker",
  "community": {
    "id": "916668",
    "name": "天通中苑(52-65号楼)",
    "address": "立水桥东二路",
    "lat": 40.069238,
    "lng": 116.423267,
    "areaName": "昌平",
    "blockName": "",
    "yearBuilt": 2008,
    "totalHouseHoldNum": 1926,
    "parking": "1350(1:0.7)",
    "developer": "北京顺天通房地产开发有限公司",
    "averageUnitPriceRmb": 35023,
    "monthChangePercent": 4.77,
    "marketSentiment": "观望",
    "rentNumNow": 128,
    "saleNumNow": 14,
    "newBuildNumNow": 0,
    "metro": [
      {"line": "18号线", "station": "太平庄", "walkingDistanceMeters": 781},
      {"line": "18号线", "station": "天通苑", "walkingDistanceMeters": 1095},
      {"line": "5号线", "station": "天通苑南", "walkingDistanceMeters": 1343},
      {"line": "17/18号线", "station": "天通苑东", "walkingDistanceMeters": 1869}
    ],
    "schools": [],
    "priceTrend6mo": [
      {"date": "26/4", "pricePerM2Rmb": 35023},
      {"date": "26/3", "pricePerM2Rmb": 33428},
      {"date": "26/2", "pricePerM2Rmb": 32086},
      {"date": "26/1", "pricePerM2Rmb": 32776},
      {"date": "25/12", "pricePerM2Rmb": 33548},
      {"date": "25/11", "pricePerM2Rmb": 32867}
    ]
  },
  "cityId": "14",
  "cityName": "北京",
  "scrapedAt": "2026-04-18T05:03:11Z"
}
```

#### Private-owner listing shape (个人房源)

For listings posted by individual landlords, `broker` is `null` and `owner` is populated instead:

```json
{
  "broker": null,
  "owner": {
    "displayName": "先先生",
    "tags": ["实名认证"],
    "isVerified": true
  },
  "source": "private"
}
```

### Advanced Usage

#### Rent range with multiple rooms and features

```json
{
  "city": "shanghai",
  "rooms": ["1BR", "2BR"],
  "rentMinRmb": 4000,
  "rentMaxRmb": 12000,
  "features": ["elevator", "nearSubway", "vrTour"],
  "orientation": ["south"],
  "maxResults": 200
}
```

#### Metro station search

```json
{
  "city": "beijing",
  "location": "中关村",
  "rentalType": "whole",
  "maxResults": 50
}
```

#### First-time rentals with owner recommendations

```json
{
  "city": "hangzhou",
  "features": ["firstRental", "ownerRecommended"],
  "maxResults": 100
}
```

#### Shared-rental (合租) with independent-room filter

```json
{
  "city": "beijing",
  "rentalType": "shared",
  "features": ["independentRoom"],
  "rentMaxRmb": 4000,
  "maxResults": 50
}
```

### Pricing

**From $7.99 / 1,000 listings** — pay-per-event on the `listing-scraped` event. Only fully enriched listings delivered to your dataset are charged. Your Apify subscription tier applies a volume discount automatically.

| Plan | Per 1,000 | Per listing |
|---|---|---|
| Free | $9.99 | $0.00999 |
| Bronze | $8.99 | $0.00899 |
| Silver | $8.49 | $0.00849 |
| Gold | $7.99 | $0.00799 |

**Cut cost:** narrow with `location` + `rooms` + `rentMinRmb`/`rentMaxRmb` + `rentalType` before enrichment, set `maxResults` to your real need (actor stops at cap), and split wide surveys by district or rent band.

### FAQ

**How many listings can I extract?**
Up to 5,000 per run. Beyond that, split into narrower queries (by district, rent band, or room count).

**How fresh is the data?**
Every run scrapes live listings directly from Anjuke. Rent listings turn over faster than sale, so results reflect current availability.

**What currency are prices in?**
Rent is in RMB per month (¥/month). Community average prices are in RMB per square meter.

**Does it work for all 677 Anjuke cities?**
Yes. City dropdown covers every city Anjuke supports. Tier-1 cities have the most filter options (保租房 subsidized, 长租公寓 branded apartments, metro lines). Smaller cities silently return empty for those categories — just broaden the filter.

**Do private-owner listings include contact info?**
Display name is shown surname-only (Anjuke privacy policy — e.g. "先先生"). Real-name verification status (`实名认证`) is included when present. Phone numbers are not exposed by Anjuke for either brokers or private owners.

**What's the difference between `rentalType` and `listedBy`?**
`rentalType` is what kind of rental (整租 whole flat, 合租 shared, brandedApartment, subsidized). `listedBy` is who's listing it (broker vs private owner). Use them together — e.g. `rentalType=whole` + `listedBy=private` for whole-flat private-owner listings.

**Can I filter by metro line?**
Yes. Set `location` to the line name (e.g. `10号线`) or station name (e.g. `中关村`). Location autocomplete resolves it automatically.

**Why is broker `rating` sometimes `null`?**
New brokers haven't accumulated ratings yet. The field is populated as soon as the broker gets reviews.

**What's the free tier?**
Contact support for free-tier details.

### Support

- **Bugs**: Issues tab
- **Features**: Issues tab

### Legal Compliance

Extracts publicly available data. Users must comply with Anjuke terms and data protection regulations (GDPR, CCPA).

***

*Scrape rental listings from Anjuke (安居客) across 677 Chinese cities with full broker or owner info, community price trends, and nearby facilities.*

# Actor input Schema

## `city` (type: `string`):

City to search (城市).<br><br>Start typing to filter — every city shows both its Chinese name (e.g. <code>北京</code>) and pinyin (e.g. <code>beijing</code>). All <b>677 Anjuke-supported cities</b> are available, from tier-1 (北京 / 上海 / 广州 / 深圳) down to county-level cities (县级市).

## `maxResults` (type: `integer`):

How many listings (房源) to return.<br><br>Prefilled at <b>50</b> for a quick, low-cost first run. Increase after you like the output.<br><br>Need more than 5,000? Split into multiple narrower queries (by district 区, rent band 价格段, or room count 户型) — Anjuke's ranking gets noisy deep into the feed.

## `location` (type: `string`):

Narrow to a specific area (区域).<br><br>Accepts:<br>• <b>District / 区</b> — e.g. <code>海淀</code> (Haidian)<br>• <b>Community / 小区</b> — e.g. <code>万科城</code><br>• <b>Metro line / 地铁线</b> — e.g. <code>10号线</code><br>• <b>Metro station / 地铁站</b> — e.g. <code>中关村</code><br><br>Leave empty for a citywide search.

## `rentMinRmb` (type: `integer`):

Lower rent bound / 月租下限 in <b>¥/month</b>.<br><br>Example: <code>3000</code> = ¥3,000/month. Leave empty for no minimum.

## `rentMaxRmb` (type: `integer`):

Upper rent bound / 月租上限 in <b>¥/month</b>.<br><br>Example: <code>8000</code> = ¥8,000/month. Leave empty for unbounded.

## `rooms` (type: `array`):

Number of bedrooms (卧室数). Select one or more — OR'd together.

## `rentalType` (type: `string`):

What kind of rental to search for (租房类型).<br><br>• <b>Whole flat (整租)</b> — rent the entire unit to yourself<br>• <b>Shared (合租)</b> — rent one room in a multi-bedroom unit<br>• <b>Branded apartment (长租公寓)</b> — professionally-managed chain listings. Inventory concentrated in tier-1 and larger tier-2 cities (北京, 上海, 广州, 深圳, 成都, 杭州, 南京 …); smaller cities typically return no results.<br>• <b>Subsidized (保租房)</b> — government-subsidized. <b>Tier-1 cities only</b> (北京, 上海, 广州, 深圳).

## `listedBy` (type: `string`):

Filter by who's listing the property (房源来源).<br><br>• <b>Broker (经纪人)</b> — agency-listed, full broker profile in output<br>• <b>Private owner (个人房源)</b> — individual landlord, owner info in output instead of broker<br><br>Ignored when <b>Rental type</b> is set to Branded apartment or Subsidized (those have an implicit source).

## `propertyType` (type: `string`):

Filter by property classification (房屋类型). Leave as <b>Any / 不限</b> to include all types.

## `keyword` (type: `string`):

Free-text search across title and description (关键词搜索).<br><br>Examples:<br>• <code>地铁</code> — near subway<br>• <code>押一付一</code> — 1 month deposit + 1 month rent<br>• <code>首次出租</code> — first-time listing<br>• <code>精装修</code> — premium finish

## `orientation` (type: `array`):

Building orientation (朝向) — south-facing (南向) units get the best light in the northern hemisphere. Select one or more.

## `fitment` (type: `array`):

Interior finish level (装修状况). Most rent listings are <b>精装修</b>.

## `features` (type: `array`):

Amenity and listing flags (特色标签). Combine for multi-filter matches. Some features (近地铁, 保租房) are only meaningful in tier-1 cities.

## Actor input object example

```json
{
  "city": "beijing",
  "maxResults": 50,
  "rentalType": "any",
  "listedBy": "any",
  "propertyType": "any"
}
```

# Actor output Schema

## `listings` (type: `string`):

Link to the dataset containing all scraped Anjuke rent listings.

# 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 = {
    "city": "beijing",
    "maxResults": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("zen-studio/anjuke-rent-scraper").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 = {
    "city": "beijing",
    "maxResults": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("zen-studio/anjuke-rent-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "city": "beijing",
  "maxResults": 50
}' |
apify call zen-studio/anjuke-rent-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=zen-studio/anjuke-rent-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Anjuke 安居客 Rent Scraper - 100+ Fields, 677 Cities",
        "description": "Extract rental listings (租房) from Anjuke across 677 Chinese cities. Get rent, photos, video tours, broker profiles, community price trends, nearby metro & schools. Filter by district, rent range, rooms, whole vs shared, broker vs private owner. 100+ fields per listing.",
        "version": "0.0",
        "x-build-id": "Z02qemBTL2HaJjfbw"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/zen-studio~anjuke-rent-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-zen-studio-anjuke-rent-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/zen-studio~anjuke-rent-scraper/runs": {
            "post": {
                "operationId": "runs-sync-zen-studio-anjuke-rent-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/zen-studio~anjuke-rent-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-zen-studio-anjuke-rent-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "city",
                    "maxResults"
                ],
                "properties": {
                    "city": {
                        "title": "City",
                        "enum": [
                            "shanghai",
                            "guangzhou",
                            "shenzhen",
                            "beijing",
                            "chengdu",
                            "nanjing",
                            "tianjin",
                            "hangzhou",
                            "suzhou",
                            "chongqing",
                            "dalian",
                            "wuhan",
                            "jinan",
                            "foshan",
                            "wuxi",
                            "zhengzhou",
                            "changsha",
                            "shijiazhuang",
                            "zghk",
                            "qingdao",
                            "xian",
                            "ningbo",
                            "hefei",
                            "dongguan",
                            "fuzhou",
                            "kunming",
                            "guiyang",
                            "taiyuan",
                            "shenyang",
                            "kunshan",
                            "nanchang",
                            "zhuhai",
                            "changzhou",
                            "zhongshan",
                            "jiaxing",
                            "xiamen",
                            "yantai",
                            "haerbin",
                            "haikou",
                            "changchun",
                            "sanya",
                            "huizhou",
                            "baoding",
                            "guilin",
                            "handan",
                            "huhehaote",
                            "jilin",
                            "lanzhou",
                            "langfang",
                            "luoyang",
                            "mianyang",
                            "nanning",
                            "nantong",
                            "qinhuangdao",
                            "quanzhou",
                            "shaoxing",
                            "taizhou",
                            "tangshan",
                            "weihai",
                            "weifang",
                            "xuzhou",
                            "yangzhou",
                            "yichang",
                            "yinchuan",
                            "zhenjiang",
                            "zibo",
                            "liuzhou",
                            "jiangmen",
                            "yangjiang",
                            "laiwu",
                            "jingmen",
                            "huanggang",
                            "yongzhou",
                            "huainan",
                            "huangshan",
                            "fuyang",
                            "luan",
                            "yulinshi",
                            "kaifeng",
                            "hebi",
                            "jinzhou",
                            "jingdezhen",
                            "ganzhou",
                            "jian",
                            "panzhihua",
                            "luzhou",
                            "deyang",
                            "nanchong",
                            "guangan",
                            "qujing",
                            "lijiang",
                            "dali",
                            "wulumuqi",
                            "zhangjiakou",
                            "shantou",
                            "wenzhou",
                            "anshan",
                            "jining",
                            "zhuzhou",
                            "hengyang",
                            "dezhou",
                            "jinhua",
                            "baotou",
                            "cangzhou",
                            "nanyang",
                            "binzhou",
                            "rizhao",
                            "dongying",
                            "taian",
                            "linyi",
                            "anyang",
                            "taiz",
                            "zhangzhou",
                            "jieyang",
                            "liaocheng",
                            "pingdingsha",
                            "baoji",
                            "daqing",
                            "maoming",
                            "lianyungang",
                            "huzhou",
                            "xiangtan",
                            "zhanjiang",
                            "zhaoqing",
                            "xiangyang",
                            "zaozhuang",
                            "yancheng",
                            "shiyan",
                            "yueyang",
                            "hengshui",
                            "xinxiang",
                            "lishui",
                            "ningde",
                            "zhoushan",
                            "changji",
                            "xinyang",
                            "jinzhong",
                            "sanmenxia",
                            "loudi",
                            "xianyang",
                            "zunyi",
                            "wuhu",
                            "xingtai",
                            "jiujiang",
                            "xiaogan",
                            "xining",
                            "sanming",
                            "shaoguan",
                            "jiaozuo",
                            "chifeng",
                            "changde",
                            "leshan",
                            "hanzhong",
                            "eerduosi",
                            "xuchang",
                            "shangqiu",
                            "jincheng",
                            "anqing",
                            "huaian",
                            "liaoyang",
                            "wuzhou",
                            "zhumadian",
                            "maanshan",
                            "huangshi",
                            "panjin",
                            "pingxiang",
                            "dandong",
                            "lasa",
                            "xinzhou",
                            "bengbu",
                            "jingzhou",
                            "mudanjiang",
                            "heze",
                            "yuncheng",
                            "linfen",
                            "chenzhou",
                            "yichun",
                            "fushun",
                            "huaihua",
                            "benxi",
                            "qiqihaer",
                            "yingkou",
                            "neijiang",
                            "yulin",
                            "suqian",
                            "suihua",
                            "tieling",
                            "zigong",
                            "longyan",
                            "chengde",
                            "guigang",
                            "jiamusi",
                            "quzhou",
                            "changzhi",
                            "datong",
                            "shaoyang",
                            "yibin",
                            "luohe",
                            "puyang",
                            "qingyuan",
                            "putian",
                            "huaibei",
                            "dazhou",
                            "tongliao",
                            "suining",
                            "huludao",
                            "fuxin",
                            "shangrao",
                            "fuzhoushi",
                            "siping",
                            "yiyang",
                            "chizhou",
                            "chuzhou",
                            "tongling",
                            "nanping",
                            "heyuan",
                            "beihai",
                            "yiwu",
                            "chaoyang",
                            "ankang",
                            "yuxi",
                            "qinzhou",
                            "shihezi",
                            "ziyang",
                            "yili",
                            "liangshan",
                            "bayinguoleng",
                            "meishan",
                            "qingyang",
                            "chaozhou",
                            "xuancheng",
                            "bazhong",
                            "honghe",
                            "shunde",
                            "zhoukou",
                            "suzhoushi",
                            "zhangqiu",
                            "songyuan",
                            "yangquan",
                            "kashi",
                            "tianshui",
                            "enshi",
                            "shuyang",
                            "yanan",
                            "guangyuan",
                            "liupanshui",
                            "meizhou",
                            "anshun",
                            "jiuquan",
                            "bayannaoer",
                            "weinan",
                            "shizuishan",
                            "zhangjiajie",
                            "suizhou",
                            "ezhou",
                            "bozhou",
                            "hami",
                            "xianning",
                            "wuhai",
                            "yingtan",
                            "wenshan",
                            "chuxiong",
                            "chaohu",
                            "kelamayi",
                            "xinganmeng",
                            "wuwei",
                            "yanbian",
                            "jixi",
                            "jiyuan",
                            "tonghua",
                            "xinyu",
                            "shuozhou",
                            "wulanchabu",
                            "baiyin",
                            "shanwei",
                            "baicheng",
                            "hegang",
                            "liaoyuan",
                            "zhucheng",
                            "puer",
                            "hulunbeier",
                            "yufu",
                            "aba",
                            "akesu",
                            "ali",
                            "alaer",
                            "alashanm",
                            "baise",
                            "baishan",
                            "boertala",
                            "bijie",
                            "xishuangbanna",
                            "baoshan",
                            "changdu",
                            "changge",
                            "chongzuo",
                            "dafeng",
                            "dehong",
                            "dingzhou",
                            "diqing",
                            "dingxi",
                            "dxanling",
                            "fangchenggang",
                            "ganzi",
                            "gannan",
                            "guantao",
                            "guoluo",
                            "guyuan",
                            "haibei",
                            "haidong",
                            "hainan",
                            "hechi",
                            "heihe",
                            "hexian",
                            "hezhou",
                            "hailaer",
                            "huoqiu",
                            "hetian",
                            "huangnan",
                            "hexi",
                            "jinchang",
                            "jiayuguan",
                            "kenli",
                            "lezilesu",
                            "laibin",
                            "lingcang",
                            "linxia",
                            "linyishi",
                            "linzhi",
                            "longnan",
                            "lvliang",
                            "minggang",
                            "naqu",
                            "nujiang",
                            "pingliang",
                            "zhuanghe",
                            "qiandongnan",
                            "qianjiang",
                            "qingxu",
                            "qiannan",
                            "qitaihe",
                            "qianxinan",
                            "rikeze",
                            "ruian",
                            "sansha",
                            "shangluo",
                            "shannan",
                            "shennongjia",
                            "shuangyashan",
                            "taishan",
                            "tongchuan",
                            "tulufan",
                            "tianmen",
                            "tumushuke",
                            "tongcheng",
                            "tongren",
                            "wafangdian",
                            "wujiaqu",
                            "wuyishan",
                            "wuzhong",
                            "wuzhishan",
                            "xiangxi",
                            "xiantao",
                            "xilinguole",
                            "yaan",
                            "yangchun",
                            "yanling",
                            "yichunshi",
                            "yushu",
                            "yueqing",
                            "yuzhou",
                            "yongxin",
                            "zhengding",
                            "zhangbei",
                            "zhangye",
                            "zhaotong",
                            "weizhong",
                            "zhaoxian",
                            "taicang",
                            "qidong",
                            "longkou",
                            "nananshi",
                            "shishi",
                            "jinjiangshi",
                            "zhuji",
                            "shouguang",
                            "rugao",
                            "haimen",
                            "haianxian",
                            "rudongxian",
                            "wnelingshi",
                            "liyang",
                            "pizhou",
                            "xinyishi",
                            "haining",
                            "tongxiang",
                            "dongyang",
                            "dongtai",
                            "jianhuxian",
                            "danyang",
                            "yangzhong",
                            "taixing",
                            "jingjiang",
                            "xinghuashi",
                            "huidongxian",
                            "boluoxian",
                            "changxingxian",
                            "deqingxian",
                            "yidou",
                            "donghaixian",
                            "yuyao",
                            "cixi",
                            "ningguo",
                            "xiangshanxian",
                            "rituxian",
                            "gaizexian",
                            "wenchang",
                            "wanning",
                            "tunchang",
                            "qh",
                            "lingshui",
                            "dongfang",
                            "tianchang",
                            "da",
                            "cm",
                            "danzhou",
                            "xzpeixian",
                            "jiashanxian",
                            "changshushi",
                            "aletai",
                            "tuscaloosa",
                            "yanjiao",
                            "rongchengshi",
                            "tengzhoushi",
                            "qiananshi",
                            "zoupingxian",
                            "zouchengshi",
                            "shenmuxian",
                            "xintaishi",
                            "guangraoxian",
                            "laizhoushi",
                            "feichengshi",
                            "qingzhoushi",
                            "jintan",
                            "jiangyan",
                            "yongkangshi",
                            "linhaishi",
                            "lingbaoshi",
                            "baoyingxian",
                            "gongzhulingshi",
                            "yuhuanxian",
                            "cangnanxian",
                            "hanchuanshi",
                            "jianyangshi",
                            "ruzhoushi",
                            "siyangxian",
                            "sihongxian",
                            "juxian",
                            "caoxian",
                            "renshouxian",
                            "guanghanshi",
                            "anjixian",
                            "guanyunxian",
                            "danxian",
                            "guannanxian",
                            "changyuanxian",
                            "qixian-584",
                            "lepingshi",
                            "anyuexian",
                            "haifengxian",
                            "zhuozhoushi",
                            "xiangchengshi",
                            "zhaoyuanshi",
                            "gaomishi",
                            "wuanshi",
                            "renqiushi",
                            "huantaixian",
                            "zaoyangshi",
                            "rushanshi",
                            "sanheshi",
                            "renhuaishi",
                            "penglaishi",
                            "lilingshi",
                            "jiangyin",
                            "anxi",
                            "anqiu",
                            "anning",
                            "anda",
                            "bazh",
                            "changning-620",
                            "changyi",
                            "changleshi",
                            "dengzhou",
                            "dangyang",
                            "emeishan",
                            "funing",
                            "fuqing",
                            "fuan",
                            "fengcheng",
                            "fengxian",
                            "fengchengshi",
                            "guan",
                            "huadian",
                            "haiyan",
                            "jurong",
                            "jingshan",
                            "jinxian",
                            "jinhu",
                            "kaili",
                            "kaiping",
                            "luannan",
                            "longmen",
                            "linqu",
                            "linqing",
                            "laohekou",
                            "lankao",
                            "laiyang",
                            "mengjin",
                            "puning",
                            "pingtan",
                            "pinghu",
                            "qingzhen",
                            "qianxi",
                            "qixia",
                            "suiningx",
                            "wugang",
                            "youxian",
                            "xinan",
                            "xianghe",
                            "yutian",
                            "yongchun",
                            "yongcheng",
                            "yongan",
                            "yiyangx",
                            "yixing",
                            "yicheng",
                            "yichuan",
                            "zunhua",
                            "zhongxiang",
                            "zhijiang",
                            "zhaozhou",
                            "zhaodong",
                            "zhangjiagang",
                            "guangshui",
                            "shengzhou",
                            "meihekou",
                            "dengta",
                            "beipiao",
                            "shahe",
                            "huanghua",
                            "hejian",
                            "dunhuang",
                            "geermu",
                            "hancheng",
                            "linzhou",
                            "qinyang",
                            "mengzhou",
                            "anlu",
                            "wuxue",
                            "chibi",
                            "yuanjiang",
                            "zixing",
                            "lengshuijiang",
                            "lianyuan",
                            "jishou",
                            "duyun",
                            "xuanwei",
                            "cengxi",
                            "guiping",
                            "beiliu",
                            "zhangshu",
                            "gaoan",
                            "lufeng",
                            "fuding",
                            "kaiyuan",
                            "xiaoyi",
                            "jiangshan",
                            "songzi",
                            "laoling",
                            "yucheng",
                            "pingyang",
                            "xiangyin",
                            "lixian",
                            "fuliang",
                            "huaxian",
                            "shangshui",
                            "cangxian",
                            "wudi",
                            "pingyi",
                            "gucheng",
                            "xinchang",
                            "xuyuxian",
                            "dazhu",
                            "zhangpu",
                            "changning-961",
                            "boxingxian",
                            "cixian",
                            "dingbianxian",
                            "dongmingxian",
                            "dongpingxian",
                            "fuguxian",
                            "gaotangxian",
                            "guanxian",
                            "hengdongxian",
                            "huarongxian",
                            "jingbianxian",
                            "juyexian",
                            "juanchengxian",
                            "liangshanxian",
                            "linyixian",
                            "luyixian",
                            "nanzhangxian",
                            "ningjinxian",
                            "ningyangxian",
                            "panshishi",
                            "qihexian",
                            "qidongxian",
                            "sheyangxian",
                            "shexian",
                            "xinxian",
                            "shenqiuxian",
                            "taikangxian",
                            "tanchengxian",
                            "weishanxian",
                            "wenshangxian",
                            "wuyi",
                            "xiangshuixian",
                            "xinyexian",
                            "yangguxian",
                            "yinanxian",
                            "yiyuanxian",
                            "yunchengxian",
                            "dawuxian",
                            "fanxian",
                            "gushixian",
                            "guiyangxian",
                            "huaibinxian",
                            "xunxian",
                            "lishuxian",
                            "lijingxian",
                            "liulinxian",
                            "nanchengxian",
                            "qixian-1009",
                            "shagnhangxian",
                            "suixian-1011",
                            "tongxuxian",
                            "weishixian",
                            "wuweixian",
                            "xiangyuanxian",
                            "xiaochangxian",
                            "yongxingxian",
                            "yunmengxian",
                            "bobaixian",
                            "cilixian",
                            "dongzhixian",
                            "fenyixian",
                            "fuyushi",
                            "gaopingshi",
                            "jiayuxian",
                            "mileshi",
                            "mianchixian",
                            "nanxian",
                            "qiyangxian",
                            "quxian",
                            "shayangxian",
                            "shaodongxian",
                            "shehongxian",
                            "shuangfengxian",
                            "suixian-1035",
                            "wenxian",
                            "xuanhanxian",
                            "zezhouxian",
                            "changlingxian",
                            "shaoyangxian",
                            "yujiang",
                            "chiping",
                            "dayawana"
                        ],
                        "type": "string",
                        "description": "City to search (城市).<br><br>Start typing to filter — every city shows both its Chinese name (e.g. <code>北京</code>) and pinyin (e.g. <code>beijing</code>). All <b>677 Anjuke-supported cities</b> are available, from tier-1 (北京 / 上海 / 广州 / 深圳) down to county-level cities (县级市)."
                    },
                    "maxResults": {
                        "title": "Max results",
                        "minimum": 10,
                        "maximum": 5000,
                        "type": "integer",
                        "description": "How many listings (房源) to return.<br><br>Prefilled at <b>50</b> for a quick, low-cost first run. Increase after you like the output.<br><br>Need more than 5,000? Split into multiple narrower queries (by district 区, rent band 价格段, or room count 户型) — Anjuke's ranking gets noisy deep into the feed.",
                        "default": 100
                    },
                    "location": {
                        "title": "Location / 区域",
                        "type": "string",
                        "description": "Narrow to a specific area (区域).<br><br>Accepts:<br>• <b>District / 区</b> — e.g. <code>海淀</code> (Haidian)<br>• <b>Community / 小区</b> — e.g. <code>万科城</code><br>• <b>Metro line / 地铁线</b> — e.g. <code>10号线</code><br>• <b>Metro station / 地铁站</b> — e.g. <code>中关村</code><br><br>Leave empty for a citywide search."
                    },
                    "rentMinRmb": {
                        "title": "Min rent / 最低月租 (¥)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Lower rent bound / 月租下限 in <b>¥/month</b>.<br><br>Example: <code>3000</code> = ¥3,000/month. Leave empty for no minimum."
                    },
                    "rentMaxRmb": {
                        "title": "Max rent / 最高月租 (¥)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Upper rent bound / 月租上限 in <b>¥/month</b>.<br><br>Example: <code>8000</code> = ¥8,000/month. Leave empty for unbounded."
                    },
                    "rooms": {
                        "title": "Rooms / 户型",
                        "type": "array",
                        "description": "Number of bedrooms (卧室数). Select one or more — OR'd together.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "1BR",
                                "2BR",
                                "3BR",
                                "4BR_PLUS"
                            ],
                            "enumTitles": [
                                "1 bedroom (一室)",
                                "2 bedrooms (两室)",
                                "3 bedrooms (三室)",
                                "4+ bedrooms (四室以上)"
                            ]
                        }
                    },
                    "rentalType": {
                        "title": "Rental type / 租房类型",
                        "enum": [
                            "any",
                            "whole",
                            "shared",
                            "brandedApartment",
                            "subsidized"
                        ],
                        "type": "string",
                        "description": "What kind of rental to search for (租房类型).<br><br>• <b>Whole flat (整租)</b> — rent the entire unit to yourself<br>• <b>Shared (合租)</b> — rent one room in a multi-bedroom unit<br>• <b>Branded apartment (长租公寓)</b> — professionally-managed chain listings. Inventory concentrated in tier-1 and larger tier-2 cities (北京, 上海, 广州, 深圳, 成都, 杭州, 南京 …); smaller cities typically return no results.<br>• <b>Subsidized (保租房)</b> — government-subsidized. <b>Tier-1 cities only</b> (北京, 上海, 广州, 深圳).",
                        "default": "any"
                    },
                    "listedBy": {
                        "title": "Listed by / 房源来源",
                        "enum": [
                            "any",
                            "broker",
                            "private"
                        ],
                        "type": "string",
                        "description": "Filter by who's listing the property (房源来源).<br><br>• <b>Broker (经纪人)</b> — agency-listed, full broker profile in output<br>• <b>Private owner (个人房源)</b> — individual landlord, owner info in output instead of broker<br><br>Ignored when <b>Rental type</b> is set to Branded apartment or Subsidized (those have an implicit source).",
                        "default": "any"
                    },
                    "propertyType": {
                        "title": "Property type / 房屋类型",
                        "enum": [
                            "any",
                            "residential",
                            "apartment",
                            "villa",
                            "mixedUse",
                            "singleStory",
                            "oldPublic",
                            "siheyuan",
                            "xinli",
                            "other"
                        ],
                        "type": "string",
                        "description": "Filter by property classification (房屋类型). Leave as <b>Any / 不限</b> to include all types.",
                        "default": "any"
                    },
                    "keyword": {
                        "title": "Keyword / 关键词",
                        "type": "string",
                        "description": "Free-text search across title and description (关键词搜索).<br><br>Examples:<br>• <code>地铁</code> — near subway<br>• <code>押一付一</code> — 1 month deposit + 1 month rent<br>• <code>首次出租</code> — first-time listing<br>• <code>精装修</code> — premium finish"
                    },
                    "orientation": {
                        "title": "Orientation / 朝向",
                        "type": "array",
                        "description": "Building orientation (朝向) — south-facing (南向) units get the best light in the northern hemisphere. Select one or more.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "south",
                                "north",
                                "east",
                                "west",
                                "southEast",
                                "southWest",
                                "northEast",
                                "northWest"
                            ],
                            "enumTitles": [
                                "South (南)",
                                "North (北)",
                                "East (东)",
                                "West (西)",
                                "Southeast (东南)",
                                "Southwest (西南)",
                                "Northeast (东北)",
                                "Northwest (西北)"
                            ]
                        }
                    },
                    "fitment": {
                        "title": "Fitment / 装修",
                        "type": "array",
                        "description": "Interior finish level (装修状况). Most rent listings are <b>精装修</b>.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "rough",
                                "simple",
                                "good",
                                "luxury"
                            ],
                            "enumTitles": [
                                "Rough / unfinished (毛坯)",
                                "Simple decoration (简单装修)",
                                "Good decoration (精装修)",
                                "Luxury (豪华装修)"
                            ]
                        }
                    },
                    "features": {
                        "title": "Features / 特色",
                        "type": "array",
                        "description": "Amenity and listing flags (特色标签). Combine for multi-filter matches. Some features (近地铁, 保租房) are only meaningful in tier-1 cities.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "elevator",
                                "nearSubway",
                                "vrTour",
                                "videoListing",
                                "liveStreamTour",
                                "deposit1Rent1",
                                "firstRental",
                                "ownerRecommended",
                                "anjukeManaged",
                                "onlineSigning",
                                "independentRoom",
                                "discount",
                                "curatedApartment",
                                "verifiedListing"
                            ],
                            "enumTitles": [
                                "Has elevator (有电梯)",
                                "Near subway (近地铁)",
                                "VR tour (VR看房)",
                                "Video listing (视频房源)",
                                "Live stream tour (直播看房)",
                                "1-month deposit + 1-month rent (押一付一)",
                                "First-time rental (首次出租)",
                                "Owner-recommended (业主自荐)",
                                "Anjuke-managed (省心租)",
                                "Online signing (在线签约)",
                                "Independent room (独立单间, 合租 only)",
                                "Has discount (有优惠)",
                                "Curated apartment (严选公寓)",
                                "Verified listing (核验真房)"
                            ]
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
