# Realtor.com Scraper (`solidcode/realtorcom-scraper`) Actor

\[💰 $0.8 / 1K] Extract property listings from Realtor.com. Get prices, addresses, photos, schools, tax history, value estimates, agent contact info, and more for sale, rent, or sold properties.

- **URL**: https://apify.com/solidcode/realtorcom-scraper.md
- **Developed by:** [SolidCode](https://apify.com/solidcode) (community)
- **Categories:** Real estate, Developer tools, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.80 / 1,000 results

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

## Realtor.com Scraper

Extract property listings from Realtor.com at scale. Get prices, addresses, property details, photos, school ratings, value estimates, agent contact info, environmental risk scores, and **60+ data fields** for sale, rent, or recently sold properties across the United States.

### Why This Scraper?

- **60+ data fields per property** - Prices, addresses, beds/baths/sqft, photos, schools, value estimates, mortgage estimates, HOA fees, environmental risks, agent contact info, and more
- **Search by location or URL** - Just type "Austin, TX" or paste any Realtor.com URL - no need to manually build search links
- **For sale, for rent, and recently sold** - One scraper covers all three listing types with a simple dropdown
- **Property type filters** - Narrow results to single family, condos, townhomes, multi-family, land, mobile homes, or farms
- **Full detail enrichment** - Toggle between fast search-only results or rich detail data with schools, price history, and value estimates
- **Automatic deduplication** - No duplicate properties, even when searching overlapping areas
- **Works with datacenter proxies** - Keeps costs low compared to scrapers that require residential proxies

### Use Cases

**Real Estate Investment & Analysis**
- Compare asking prices to estimated values across neighborhoods
- Track recently sold properties to identify market trends
- Analyze price per square foot across ZIP codes
- Monitor days on market to gauge demand

**Market Research**
- Map property inventory by city, state, or ZIP code
- Compare property types (single family vs. condos) across markets
- Track new construction activity in growth areas
- Identify foreclosure and price-reduced opportunities

**Lead Generation**
- Build lists of property listings with agent names, emails, and phone numbers
- Find listing offices in target markets
- Target properties by status (coming soon, pending, contingent)
- Identify new listings within the past 14 days

**Data Enrichment & Integration**
- Enrich existing property databases with current pricing and status
- Feed property data into analytics dashboards
- Power real estate comparison tools and market reports
- Build alerting systems for price changes and new listings

### Getting Started

#### Search by Location

The simplest way to start - just type a city and state:

```json
{
    "searchLocations": ["Austin, TX"],
    "maxItems": 50
}
````

#### Search by ZIP Code

```json
{
    "searchLocations": ["78701", "78702", "78703"],
    "listingStatus": "for_sale",
    "maxItems": 100
}
```

#### Recently Sold Properties

```json
{
    "searchLocations": ["Denver, CO"],
    "listingStatus": "recently_sold",
    "propertyType": "single_family",
    "maxItems": 200
}
```

#### Rental Listings

```json
{
    "searchLocations": ["Miami, FL"],
    "listingStatus": "for_rent",
    "maxItems": 100
}
```

#### Using Realtor.com URLs

Paste any Realtor.com search or property detail URL directly:

```json
{
    "startUrls": [
        { "url": "https://www.realtor.com/realestateandhomes-search/Austin_TX" },
        { "url": "https://www.realtor.com/realestateandhomes-detail/2401-Thornton-Rd_Austin_TX_78704_M71466-07795" }
    ],
    "maxItems": 100
}
```

#### Full-Featured Example

```json
{
    "searchLocations": ["San Francisco, CA", "94102"],
    "startUrls": [
        { "url": "https://www.realtor.com/realestateandhomes-search/Oakland_CA" }
    ],
    "listingStatus": "for_sale",
    "propertyType": "condos",
    "maxItems": 500,
    "includePropertyDetails": true
}
```

### Input Reference

#### What to Scrape

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `startUrls` | URL\[] | `[]` | Realtor.com URLs to scrape. Supports search pages and individual property listings. The scraper auto-detects the URL type. |
| `searchLocations` | string\[] | `[]` | Search by city and state (e.g. "Austin, TX") or ZIP code (e.g. "78701"). No need to build URLs manually. |

#### Search Filters

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `listingStatus` | select | `For Sale` | Type of listings: For Sale, For Rent, or Recently Sold. Applies to location-based searches. |
| `propertyType` | select | `All Types` | Filter by property type: Single Family, Condos, Townhomes, Multi-Family, Land, Mobile Homes, or Farms & Ranches. |

#### Options

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `maxItems` | integer | `100` | Maximum number of results to return. Set to 0 for unlimited. Start with 10-50 to test, then increase. |
| `includePropertyDetails` | boolean | `true` | Fetch full details for each property (schools, price history, estimates, description, environmental risks). Slower but much richer data. When off, only basic search result fields are returned. |

### Output

Each result contains up to 60+ structured fields. Here's an example with full details enabled:

```json
{
    "property_id": "9797030113",
    "listing_id": "2960741997",
    "status": "for_sale",
    "href": "https://www.realtor.com/realestateandhomes-detail/2401-Thornton-Rd_Austin_TX_78704_M97970-30113",
    "list_price": 575000,
    "price_per_sqft": 345,
    "last_sold_price": 420000,
    "last_sold_date": "2019-06-15",
    "days_on_market": 12,
    "list_date": "2026-04-01T00:00:00Z",
    "photo_count": 28,
    "address_line": "2401 Thornton Rd",
    "address_city": "Austin",
    "address_state": "Texas",
    "address_state_code": "TX",
    "address_postal_code": "78704",
    "address_country": "US",
    "address_lat": 30.2432,
    "address_lon": -97.7654,
    "county_name": "Travis",
    "neighborhoods": "Zilker",
    "beds": 3,
    "baths_full": 2,
    "baths_half": 1,
    "baths_consolidated": "2.5",
    "sqft": 1665,
    "lot_sqft": 6500,
    "stories": 2,
    "garage": 1,
    "year_built": 1972,
    "property_type": "single_family",
    "description_text": "Charming updated home in the heart of Zilker with open floor plan...",
    "tags": ["central_air", "central_heat", "hardwood_floors", "updated_kitchen"],
    "source_name": "Austin Board of REALTORS",
    "source_listing_id": "ACT-123456",
    "primary_agent_name": "Jane Smith",
    "primary_agent_email": "jane@realestate.com",
    "primary_agent_phone": "5125551234",
    "primary_office_name": "Austin Premier Realty",
    "hoa_fee": 150,
    "mortgage_monthly_payment": 3450,
    "assigned_schools": [
        {
            "name": "Zilker Elementary School",
            "distance_in_miles": 0.4,
            "rating": 8,
            "funding_type": "public",
            "grades": ["K", "1", "2", "3", "4", "5"]
        }
    ],
    "property_history": [
        {
            "date": "2019-06-15",
            "event_name": "Sold",
            "price": 420000,
            "source_name": "Austin Board of REALTORS"
        }
    ],
    "local_flood_score": 2,
    "local_flood_severity": "Minor",
    "local_fire_score": 1,
    "local_fire_severity": "Minimal",
    "estimates_current": [
        {
            "source": { "name": "Quantarium", "type": "quantarium" },
            "estimate": 589000,
            "estimate_high": 618000,
            "estimate_low": 560000
        }
    ],
    "photo_urls": [
        "https://ap.rdcpix.com/example1.jpg",
        "https://ap.rdcpix.com/example2.jpg"
    ],
    "is_new_construction": false,
    "is_foreclosure": false,
    "scraped_at": "2026-04-16T14:30:00Z"
}
```

#### All Available Fields

| Field | Type | Description |
|-------|------|-------------|
| `property_id` | string | Unique property identifier |
| `listing_id` | string | Listing instance ID |
| `status` | string | Listing status (for\_sale, for\_rent, sold, etc.) |
| `href` | string | Direct Realtor.com listing URL |
| `list_price` | number | Current asking price in USD |
| `list_price_min` | number | Minimum price (for price ranges) |
| `list_price_max` | number | Maximum price (for price ranges) |
| `price_per_sqft` | number | Price per square foot |
| `last_sold_price` | number | Previous sale price |
| `last_sold_date` | string | Previous sale date |
| `last_price_change_amount` | number | Amount of last price change |
| `days_on_market` | number | Days actively listed |
| `list_date` | string | Date listed |
| `photo_count` | number | Number of listing photos |
| `address_line` | string | Full street address |
| `address_unit` | string | Unit or apartment number |
| `address_city` | string | City |
| `address_state` | string | Full state name |
| `address_state_code` | string | Two-letter state code |
| `address_postal_code` | string | ZIP code |
| `address_country` | string | Country |
| `address_lat` | number | Latitude |
| `address_lon` | number | Longitude |
| `county_name` | string | County name |
| `county_fips` | string | County FIPS code |
| `neighborhoods` | string | Neighborhood names |
| `beds` | number | Number of bedrooms |
| `baths_full` | number | Full bathrooms |
| `baths_half` | number | Half bathrooms |
| `baths_consolidated` | string | Formatted bathroom count (e.g. "2.5") |
| `sqft` | number | Living area in square feet |
| `lot_sqft` | number | Lot size in square feet |
| `stories` | number | Number of stories |
| `garage` | number | Garage spaces |
| `pool` | string | Pool indicator |
| `year_built` | number | Year constructed |
| `property_type` | string | Property type (single\_family, condos, townhomes, etc.) |
| `property_sub_type` | string | Sub-type classification |
| `description_text` | string | Full listing description |
| `tags` | string\[] | Amenity and feature tags |
| `details` | object | Detailed MLS feature categories |
| `source_name` | string | MLS name |
| `source_type` | string | Source type |
| `source_listing_id` | string | MLS listing ID |
| `primary_agent_name` | string | Listing agent name |
| `primary_agent_email` | string | Listing agent email |
| `primary_agent_phone` | string | Listing agent phone number |
| `primary_office_name` | string | Listing office name |
| `advertisers` | object\[] | All agents with contact details |
| `hoa_fee` | number | Monthly HOA fee |
| `mortgage_monthly_payment` | number | Estimated monthly mortgage payment |
| `assigned_schools` | object\[] | Nearby schools with ratings and distance |
| `property_history` | object\[] | Price and listing history events |
| `local_flood_score` | number | Flood risk score (1-10) |
| `local_flood_severity` | string | Flood risk description |
| `local_fire_score` | number | Wildfire risk score (1-10) |
| `local_fire_severity` | string | Wildfire risk description |
| `local_heat_score` | number | Heat risk score (1-10) |
| `local_heat_severity` | string | Heat risk description |
| `local_wind_score` | number | Wind risk score (1-10) |
| `local_wind_severity` | string | Wind risk description |
| `local_air_score` | number | Air quality risk score (1-10) |
| `local_air_severity` | string | Air quality risk description |
| `estimates_current` | object\[] | Current automated property value estimates |
| `photo_urls` | string\[] | All listing photo URLs |
| `is_new_construction` | boolean | New construction flag |
| `is_foreclosure` | boolean | Foreclosure flag |
| `is_pending` | boolean | Pending sale flag |
| `is_contingent` | boolean | Contingent sale flag |
| `scraped_at` | string | ISO timestamp of data extraction |

### Tips for Best Results

- **Start small** - Set `maxItems` to 10-50 for your first run to verify the data matches your needs, then scale up
- **Use location search over URLs** - Typing "Austin, TX" or "78701" is easier and more reliable than constructing search URLs
- **Toggle details for speed vs. depth** - Turn off "Include Full Property Details" for faster runs when you only need basic listing data (price, address, beds/baths). Turn it on for schools, value estimates, price history, and environmental risks
- **Combine inputs** - You can mix location searches, ZIP codes, and URLs in a single run
- **Filter by property type** - Narrow results to the property type you need to avoid processing irrelevant listings

### Pricing

**~$3.50 per 1,000 results** (search-only) or **~$5.00 per 1,000 results** (with full details) - competitive with other Realtor.com data tools on Apify.

| Results | Search Only | With Full Details |
|---------|-------------|-------------------|
| 100 | ~$0.35 | ~$0.50 |
| 1,000 | ~$3.50 | ~$5.00 |
| 10,000 | ~$35.00 | ~$50.00 |

Platform fees (compute, proxy, storage) are additional and depend on your Apify plan. This scraper works with datacenter proxies, keeping costs lower than scrapers that require residential proxies.

### Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

- **Zapier** / **Make** / **n8n** - Workflow automation
- **Google Sheets** - Direct spreadsheet export
- **Slack** / **Email** - Notifications on new results
- **Webhooks** - Custom API integrations
- **Apify API** - Full programmatic access

### Legal & Ethical Use

This actor is designed for legitimate real estate research, market analysis, and lead generation. Users are responsible for complying with applicable laws and Realtor.com's Terms of Service. Do not use extracted data for spam, harassment, or any illegal purpose. Be mindful of fair housing regulations when using property and demographic data.

# Actor input Schema

## `startUrls` (type: `array`):

Paste Realtor.com URLs directly. The scraper auto-detects the listing type from the URL: /realestateandhomes-search/ = For Sale, /apartments/ or /rentals/ = For Rent, /show-recently-sold = Recently Sold. Any filters in the URL (price, beds, type, keywords) are applied automatically. The Listing Status and Property Type settings below do NOT apply to URLs — everything comes from the URL itself.

## `searchLocations` (type: `array`):

Search for properties by typing a city and state (e.g. 'Austin, TX') or a ZIP code (e.g. '78701'). No need to build URLs manually.

## `listingStatus` (type: `string`):

What type of listings to find. Only applies to Search Locations below — ignored when using URLs (URLs determine their own status: /realestateandhomes-search/ = For Sale, /apartments/ = For Rent).

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

Filter by property type. Only applies to Search Locations — ignored when using URLs (use /type-townhome, /type-condo etc. in the URL instead).

## `maxItems` (type: `integer`):

Maximum number of results to return across all URLs and searches. Set to 0 for unlimited. Tip: start with 10-50 to test, then increase.

## `includePropertyDetails` (type: `boolean`):

Fetch the full detail page for each property (schools, history, estimates, full description, environmental risks). Slower but much richer data. When off, only basic search result data is returned.

## `expandRadius` (type: `integer`):

Expand each search to include properties within this many miles of the location. Realtor.com's website automatically shows nearby properties when there are few exact matches in a city — set this (e.g. 25) to match that behavior. Leave at 0 to return only properties strictly inside the city/ZIP.

## Actor input object example

```json
{
  "startUrls": [
    "https://www.realtor.com/realestateandhomes-search/Austin_TX"
  ],
  "searchLocations": [],
  "listingStatus": "for_sale",
  "propertyType": "all",
  "maxItems": 100,
  "includePropertyDetails": true,
  "expandRadius": 0
}
```

# Actor output Schema

## `overview` (type: `string`):

Table of scraped property listings with key fields.

# 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 = {
    "startUrls": [
        "https://www.realtor.com/realestateandhomes-search/Austin_TX"
    ],
    "searchLocations": [],
    "listingStatus": "for_sale",
    "propertyType": "all",
    "maxItems": 100,
    "includePropertyDetails": true,
    "expandRadius": 0
};

// Run the Actor and wait for it to finish
const run = await client.actor("solidcode/realtorcom-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 = {
    "startUrls": ["https://www.realtor.com/realestateandhomes-search/Austin_TX"],
    "searchLocations": [],
    "listingStatus": "for_sale",
    "propertyType": "all",
    "maxItems": 100,
    "includePropertyDetails": True,
    "expandRadius": 0,
}

# Run the Actor and wait for it to finish
run = client.actor("solidcode/realtorcom-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 '{
  "startUrls": [
    "https://www.realtor.com/realestateandhomes-search/Austin_TX"
  ],
  "searchLocations": [],
  "listingStatus": "for_sale",
  "propertyType": "all",
  "maxItems": 100,
  "includePropertyDetails": true,
  "expandRadius": 0
}' |
apify call solidcode/realtorcom-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Realtor.com Scraper",
        "description": "[💰 $0.8 / 1K] Extract property listings from Realtor.com. Get prices, addresses, photos, schools, tax history, value estimates, agent contact info, and more for sale, rent, or sold properties.",
        "version": "1.0",
        "x-build-id": "HwppZmAMmAIGU6mr8"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/solidcode~realtorcom-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-solidcode-realtorcom-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/solidcode~realtorcom-scraper/runs": {
            "post": {
                "operationId": "runs-sync-solidcode-realtorcom-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/solidcode~realtorcom-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-solidcode-realtorcom-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",
                "properties": {
                    "startUrls": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "Paste Realtor.com URLs directly. The scraper auto-detects the listing type from the URL: /realestateandhomes-search/ = For Sale, /apartments/ or /rentals/ = For Rent, /show-recently-sold = Recently Sold. Any filters in the URL (price, beds, type, keywords) are applied automatically. The Listing Status and Property Type settings below do NOT apply to URLs — everything comes from the URL itself.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "searchLocations": {
                        "title": "Search Locations",
                        "type": "array",
                        "description": "Search for properties by typing a city and state (e.g. 'Austin, TX') or a ZIP code (e.g. '78701'). No need to build URLs manually.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "listingStatus": {
                        "title": "Listing Status",
                        "enum": [
                            "for_sale",
                            "for_rent",
                            "recently_sold"
                        ],
                        "type": "string",
                        "description": "What type of listings to find. Only applies to Search Locations below — ignored when using URLs (URLs determine their own status: /realestateandhomes-search/ = For Sale, /apartments/ = For Rent).",
                        "default": "for_sale"
                    },
                    "propertyType": {
                        "title": "Property Type",
                        "enum": [
                            "all",
                            "single_family",
                            "condos",
                            "townhomes",
                            "multi_family",
                            "land",
                            "mobile",
                            "farm"
                        ],
                        "type": "string",
                        "description": "Filter by property type. Only applies to Search Locations — ignored when using URLs (use /type-townhome, /type-condo etc. in the URL instead).",
                        "default": "all"
                    },
                    "maxItems": {
                        "title": "Max Results",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum number of results to return across all URLs and searches. Set to 0 for unlimited. Tip: start with 10-50 to test, then increase.",
                        "default": 100
                    },
                    "includePropertyDetails": {
                        "title": "Include Full Property Details",
                        "type": "boolean",
                        "description": "Fetch the full detail page for each property (schools, history, estimates, full description, environmental risks). Slower but much richer data. When off, only basic search result data is returned.",
                        "default": true
                    },
                    "expandRadius": {
                        "title": "Include Nearby Areas (miles)",
                        "minimum": 0,
                        "maximum": 50,
                        "type": "integer",
                        "description": "Expand each search to include properties within this many miles of the location. Realtor.com's website automatically shows nearby properties when there are few exact matches in a city — set this (e.g. 25) to match that behavior. Leave at 0 to return only properties strictly inside the city/ZIP.",
                        "default": 0
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
