# Redfin Scraper - Homes for Sale & Sold Listings (`abotapi/redfin-scraper`) Actor

Scrape redfin.com home listings: price, beds, baths, sqft, lot, year built, coordinates, address, MLS, status, days on market, photos, schools, amenities, tax records, agent and brokerage plus 90+ fields. Search any city, ZIP, neighborhood, or county with sort and filters, or paste Redfin URLs.

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

## Pricing

from $1.20 / 1,000 listing results

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

## Redfin Scraper - Homes for Sale & Sold Listings

Pull structured home listings from redfin.com at scale. Search any city, ZIP code,
neighborhood, or county, narrow with sort and filters, and get a clean JSON record
per home with price, beds, baths, square footage, lot size, year built, exact
coordinates, address, MLS number, status, days on market, photo data, key facts,
listing remarks, the listing agent, and the brokerage. Or paste Redfin region and
listing URLs and let the scraper walk them for you.

### Why This Scraper?

- **90+ fields per listing** - price, price per sq ft, beds, full and partial baths,
  sqft, lot size, stories, year built, HOA, coordinates, MLS, status, days on
  market, photos, key facts, tags, full listing remarks, agent and brokerage. With
  detail enrichment, also nearby schools with ratings, full structured amenities,
  home highlights, public records (APN, tax rate, county), and the Redfin Estimate.
- **Search or URL** - find homes by location with filters, or paste exact region and
  listing URLs and pull them verbatim.
- **For sale or recently sold** - switch between active listings and homes sold in
  the last three years.
- **Seven sort orders** - recommended, newest, price low to high, price high to low,
  square feet, lot size, and price per sq ft.
- **Rich filters** - property type, min and max price, min beds, min baths, and min
  square feet.
- **Optional detail enrichment** - add the listing agent, brokerage, valuation label,
  nearby schools with ratings, structured amenities, home highlights, public/tax
  records, and the Redfin Estimate per home.
- **Predictable output cap** - one clear "Max listings" limit controls exactly how many records you get.
- **MCP export** - optionally pipe results straight into Notion, Linear, Airtable, or
  Apify.

### Data You Get

> Sample shape - values are illustrative placeholders, not from a live listing.

| Field | Example |
| --- | --- |
| id | 12345678 |
| url | https://www.redfin.com/IL/Chicago/123-Example-St-60601/home/12345678 |
| price | 575000 |
| priceType | Listed at Price |
| beds | 3 |
| baths | 2.5 |
| bathFull | 2 |
| bathPartial | 1 |
| sqft | 1850 |
| lotSize | 4200 |
| yearBuilt | 1998 |
| pricePerSqFt | 311 |
| hoaDues | 250 |
| propertyTypeLabel | Condo/Co-op |
| status | Active |
| daysOnMarket | 12 |
| streetLine | 123 Example St |
| city | Chicago |
| state | IL |
| zip | 60601 |
| latitude | 41.8781 |
| longitude | -87.6298 |
| mlsId | mred00000000 |
| listingAgent | Jane Doe |
| brokerName | Example Realty Group |

### How to Use

**1. Search a city for homes for sale (default):**

```json
{
  "mode": "search",
  "locations": ["Chicago, IL"],
  "listingType": "for_sale",
  "maxItems": 50
}
````

**2. Filtered search, cheapest first, condos only:**

```json
{
  "mode": "search",
  "locations": ["Austin, TX", "78701"],
  "propertyTypes": ["Condo"],
  "sortBy": "price_low",
  "minPrice": 300000,
  "maxPrice": 700000,
  "minBeds": 2,
  "maxItems": 100
}
```

**3. Recently sold homes with full detail:**

```json
{
  "mode": "search",
  "locations": ["Brooklyn, NY"],
  "listingType": "sold",
  "fetchDetails": true,
  "maxItems": 40
}
```

**4. Paste region and listing URLs:**

```json
{
  "mode": "url",
  "urls": [
    "https://www.redfin.com/city/29470/IL/Chicago",
    "https://www.redfin.com/IL/Chicago/123-Example-St-60601/home/12345678"
  ]
}
```

### Input Parameters

| Parameter | Type | Description |
| --- | --- | --- |
| mode | select | `search` (by location + filters) or `url` (paste URLs). |
| locations | array | Search mode. Cities, ZIPs, neighborhoods, or counties, e.g. "Chicago, IL". |
| listingType | select | `for_sale` or `sold` (last 3 years). |
| sortBy | select | recommended, newest, price\_low, price\_high, sqft, lot\_size, price\_per\_sqft. |
| propertyTypes | array | Keep only these types (House, Condo, Townhouse, Multi-Family, Land, Manufactured). |
| minPrice | integer | Only listings at or above this price. |
| maxPrice | integer | Only listings at or below this price. |
| minBeds | integer | Only listings with at least this many bedrooms. |
| minBaths | integer | Only listings with at least this many bathrooms. |
| minSqft | integer | Only listings with at least this many square feet. |
| urls | array | URL mode. Region or listing URLs to fetch verbatim (filters ignored). |
| fetchDetails | boolean | Add agent, brokerage, and address valuation label per home. Default true. |
| maxItems | integer | The only default cap (20). Set 0 for unlimited. |
| maxPages | integer | Optional safety stop on result pages per location. Does NOT cap totals. Empty/0 = unlimited. |
| proxy | object | Connection settings. The default works on every plan. |
| maxResidentialMB | integer | Cap residential traffic in MB; auto-downgrades after the cap. 0 = unlimited. |
| mcpConnectors | array | Optional. Pipe results into Notion, Linear, Airtable, or Apify via MCP. |
| notionParentPageUrl | string | Optional. Parent page for a selected Notion connector. |
| maxNotifyListings | integer | Optional. Cap how many listings are pushed to the connectors. |

### Output Example

> Sample shape - values are illustrative placeholders, not from a live listing.

```json
{
  "id": 12345678,
  "propertyId": 12345678,
  "listingId": 200000000,
  "url": "https://www.redfin.com/IL/Chicago/123-Example-St-60601/home/12345678",
  "mlsId": "mred00000000",
  "mlsStatus": "Active",
  "price": 575000,
  "priceType": "Listed at Price",
  "pricePerSqFt": 311,
  "hoaDues": 250,
  "beds": 3,
  "baths": 2.5,
  "bathFull": 2,
  "bathPartial": 1,
  "sqft": 1850,
  "lotSize": 4200,
  "stories": 2,
  "yearBuilt": 1998,
  "streetLine": "123 Example St",
  "unitNumber": "",
  "city": "Chicago",
  "state": "IL",
  "zip": "60601",
  "countryCode": "US",
  "location": "Near North Side",
  "latitude": 41.8781,
  "longitude": -87.6298,
  "propertyTypeLabel": "Condo/Co-op",
  "status": "Active",
  "daysOnMarket": 12,
  "photos": "0-24:0",
  "hasVirtualTour": false,
  "keyFacts": [{ "description": "Large windows", "rank": 0 }],
  "listingTags": ["Hardwood flooring"],
  "listingRemarks": "Bright corner unit with lake views and updated kitchen.",
  "listingAgent": "Jane Doe",
  "brokerName": "Example Realty Group",
  "mainHouseInfo": {
    "fullStreetAddress": "123 Example St, Chicago, IL 60601",
    "url": "https://www.redfin.com/IL/Chicago/123-Example-St-60601/home/12345678"
  },
  "scrapedAt": "2025-01-01T00:00:00+00:00"
}
```

### Send results into your apps (MCP connectors)

Optionally pipe each run's results into the apps you already use through Model
Context Protocol (MCP) connectors. Authorize a connector once under Apify,
Settings, Integrations, then select it in the `mcpConnectors` field. Each connector
receives a condensed, human-readable summary per item (title plus key fields); the
complete record always stays in the dataset. Supported connectors: Notion, Linear,
Airtable, and Apify. For Notion, also set `notionParentPageUrl`. Leave
`mcpConnectors` empty to skip export entirely.

### Plan Requirement

Runs on any Apify plan, including the free tier. Every mode and option works out of
the box with no extra setup.

# Actor input Schema

## `mode` (type: `string`):

How to find listings. "Search" finds listings by location with filters. "URL" fetches the exact region or listing URLs you paste (filters are ignored).

## `locations` (type: `array`):

Places to search, e.g. "Chicago, IL", "Austin, TX", "60611", or "Brooklyn, NY". Each location is resolved and searched independently.

## `listingType` (type: `string`):

Which listings to return: homes currently for sale, or homes sold in the last 3 years.

## `sortBy` (type: `string`):

Order results are returned in.

## `propertyTypes` (type: `array`):

Keep only listings matching these property types (e.g. House, Condo, Townhouse, Multi-Family, Land, Manufactured). Leave empty for all types.

## `minPrice` (type: `integer`):

Only listings priced at or above this amount.

## `maxPrice` (type: `integer`):

Only listings priced at or below this amount.

## `minBeds` (type: `integer`):

Only listings with at least this many bedrooms.

## `minBaths` (type: `integer`):

Only listings with at least this many bathrooms.

## `minSqft` (type: `integer`):

Only listings with at least this much interior area (sq ft).

## `urls` (type: `array`):

Redfin region URLs (e.g. .../city/29470/IL/Chicago) or listing URLs (.../home/12345678). Used only when Mode is "URL". Filter fields are ignored.

## `fetchDetails` (type: `boolean`):

Open each listing's detail panels for the address section, valuation label, and the listing agent and brokerage. Disable for a faster, lower-cost run with the summary fields only.

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

The cap on how many listings to return in total. This is THE cap and the only finite limit applied by default (20). Set 0 for unlimited.

## `maxPages` (type: `integer`):

Optional safety stop on the number of result pages per location (350 listings per page). This does NOT cap your total results and defers to "Max listings". Defaults to unlimited (empty or 0): paging is uncapped and "Max listings" decides when to stop. Only set a value if you specifically want to limit paging depth.

## `proxy` (type: `object`):

Connection settings. The default works on every plan. Switch to a residential group only if you see connection errors.

## `maxResidentialMB` (type: `integer`):

When using a residential proxy group, cap residential traffic at this many MB; after the cap the run auto-downgrades to the lower-cost tier (identical results). 0 = unlimited.

## `mcpConnectors` (type: `array`):

Optionally send the scraped results into the apps you already use, via Model Context Protocol (MCP) connectors. Authorize a connector once under Apify, Settings, Integrations, then select it here. The connector receives a condensed, human-readable summary per item (title plus key fields), not the full JSON; the complete record stays in the dataset. Leave empty to skip. Supported: Notion (https://mcp.notion.com/mcp), Linear (https://mcp.linear.app/sse), Airtable (https://mcp.airtable.com/mcp), Apify (https://mcp.apify.com).

## `notionParentPageUrl` (type: `string`):

Optional. Parent page ID/URL for a selected Notion connector.

## `maxNotifyListings` (type: `integer`):

Optional. Cap how many listings are pushed to the connectors.

## Actor input object example

```json
{
  "mode": "search",
  "locations": [
    "Chicago, IL"
  ],
  "listingType": "for_sale",
  "sortBy": "recommended",
  "propertyTypes": [],
  "urls": [
    "https://www.redfin.com/city/29470/IL/Chicago"
  ],
  "fetchDetails": true,
  "maxItems": 20,
  "maxPages": 0,
  "proxy": {
    "useApifyProxy": true
  },
  "maxResidentialMB": 0,
  "maxNotifyListings": 50
}
```

# Actor output Schema

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

No description

# 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 = {
    "locations": [
        "Chicago, IL"
    ],
    "urls": [
        "https://www.redfin.com/city/29470/IL/Chicago"
    ],
    "proxy": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("abotapi/redfin-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 = {
    "locations": ["Chicago, IL"],
    "urls": ["https://www.redfin.com/city/29470/IL/Chicago"],
    "proxy": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("abotapi/redfin-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 '{
  "locations": [
    "Chicago, IL"
  ],
  "urls": [
    "https://www.redfin.com/city/29470/IL/Chicago"
  ],
  "proxy": {
    "useApifyProxy": true
  }
}' |
apify call abotapi/redfin-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Redfin Scraper - Homes for Sale & Sold Listings",
        "description": "Scrape redfin.com home listings: price, beds, baths, sqft, lot, year built, coordinates, address, MLS, status, days on market, photos, schools, amenities, tax records, agent and brokerage plus 90+ fields. Search any city, ZIP, neighborhood, or county with sort and filters, or paste Redfin URLs.",
        "version": "1.0",
        "x-build-id": "OUTNQVCUKS8YZ6FoD"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/abotapi~redfin-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-abotapi-redfin-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/abotapi~redfin-scraper/runs": {
            "post": {
                "operationId": "runs-sync-abotapi-redfin-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/abotapi~redfin-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-abotapi-redfin-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": [
                    "mode"
                ],
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "search",
                            "url"
                        ],
                        "type": "string",
                        "description": "How to find listings. \"Search\" finds listings by location with filters. \"URL\" fetches the exact region or listing URLs you paste (filters are ignored).",
                        "default": "search"
                    },
                    "locations": {
                        "title": "Locations",
                        "type": "array",
                        "description": "Places to search, e.g. \"Chicago, IL\", \"Austin, TX\", \"60611\", or \"Brooklyn, NY\". Each location is resolved and searched independently.",
                        "default": [
                            "Chicago, IL"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "listingType": {
                        "title": "Listing type",
                        "enum": [
                            "for_sale",
                            "sold"
                        ],
                        "type": "string",
                        "description": "Which listings to return: homes currently for sale, or homes sold in the last 3 years.",
                        "default": "for_sale"
                    },
                    "sortBy": {
                        "title": "Sort by",
                        "enum": [
                            "recommended",
                            "newest",
                            "price_low",
                            "price_high",
                            "sqft",
                            "lot_size",
                            "price_per_sqft"
                        ],
                        "type": "string",
                        "description": "Order results are returned in.",
                        "default": "recommended"
                    },
                    "propertyTypes": {
                        "title": "Property types",
                        "type": "array",
                        "description": "Keep only listings matching these property types (e.g. House, Condo, Townhouse, Multi-Family, Land, Manufactured). Leave empty for all types.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "minPrice": {
                        "title": "Min price (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only listings priced at or above this amount."
                    },
                    "maxPrice": {
                        "title": "Max price (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only listings priced at or below this amount."
                    },
                    "minBeds": {
                        "title": "Min bedrooms",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only listings with at least this many bedrooms."
                    },
                    "minBaths": {
                        "title": "Min bathrooms",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only listings with at least this many bathrooms."
                    },
                    "minSqft": {
                        "title": "Min square feet",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only listings with at least this much interior area (sq ft)."
                    },
                    "urls": {
                        "title": "URLs",
                        "type": "array",
                        "description": "Redfin region URLs (e.g. .../city/29470/IL/Chicago) or listing URLs (.../home/12345678). Used only when Mode is \"URL\". Filter fields are ignored.",
                        "default": [
                            "https://www.redfin.com/city/29470/IL/Chicago"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "fetchDetails": {
                        "title": "Fetch full listing details",
                        "type": "boolean",
                        "description": "Open each listing's detail panels for the address section, valuation label, and the listing agent and brokerage. Disable for a faster, lower-cost run with the summary fields only.",
                        "default": true
                    },
                    "maxItems": {
                        "title": "Max listings",
                        "minimum": 0,
                        "type": "integer",
                        "description": "The cap on how many listings to return in total. This is THE cap and the only finite limit applied by default (20). Set 0 for unlimited.",
                        "default": 20
                    },
                    "maxPages": {
                        "title": "Max pages per search",
                        "minimum": 0,
                        "maximum": 500,
                        "type": "integer",
                        "description": "Optional safety stop on the number of result pages per location (350 listings per page). This does NOT cap your total results and defers to \"Max listings\". Defaults to unlimited (empty or 0): paging is uncapped and \"Max listings\" decides when to stop. Only set a value if you specifically want to limit paging depth.",
                        "default": 0
                    },
                    "proxy": {
                        "title": "Proxy",
                        "type": "object",
                        "description": "Connection settings. The default works on every plan. Switch to a residential group only if you see connection errors.",
                        "default": {
                            "useApifyProxy": true
                        }
                    },
                    "maxResidentialMB": {
                        "title": "Residential traffic budget (MB)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "When using a residential proxy group, cap residential traffic at this many MB; after the cap the run auto-downgrades to the lower-cost tier (identical results). 0 = unlimited.",
                        "default": 0
                    },
                    "mcpConnectors": {
                        "title": "Pipe results into your apps (optional)",
                        "type": "array",
                        "description": "Optionally send the scraped results into the apps you already use, via Model Context Protocol (MCP) connectors. Authorize a connector once under Apify, Settings, Integrations, then select it here. The connector receives a condensed, human-readable summary per item (title plus key fields), not the full JSON; the complete record stays in the dataset. Leave empty to skip. Supported: Notion (https://mcp.notion.com/mcp), Linear (https://mcp.linear.app/sse), Airtable (https://mcp.airtable.com/mcp), Apify (https://mcp.apify.com)."
                    },
                    "notionParentPageUrl": {
                        "title": "Notion parent page",
                        "type": "string",
                        "description": "Optional. Parent page ID/URL for a selected Notion connector."
                    },
                    "maxNotifyListings": {
                        "title": "Max items to export",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Optional. Cap how many listings are pushed to the connectors.",
                        "default": 50
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
