{
  "openapi": "3.0.1",
  "info": {
    "title": "Zillow [Only $1.9💰] | Bypass Zillow limit of 500 | All-In-One",
    "description": "💰 $1.9 per 1,000 listings – No limits, no quotas, unlimited extraction. Unleash the full power of Zillow data - no limits, no restrictions. Comprehensive scraping for any search URL, delivering complete property insights at scale.",
    "version": "0.0",
    "x-build-id": "mIfPnkTU02kAZNUfn"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/memo23~zillow-scraper-ppe/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-memo23-zillow-scraper-ppe",
        "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/memo23~zillow-scraper-ppe/runs": {
      "post": {
        "operationId": "runs-sync-memo23-zillow-scraper-ppe",
        "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/memo23~zillow-scraper-ppe/run-sync": {
      "post": {
        "operationId": "run-sync-memo23-zillow-scraper-ppe",
        "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": "URLs to start with. Accepts any Zillow URL type — search results, /homedetails/ property, /community/, /b/ building, or /profile/ agent (auto-detected). Example: https://www.zillow.com/austin-tx/",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "addresses": {
            "title": "Addresses to search",
            "type": "array",
            "description": "Addresses to scrape - should be in format 123 Main St, City, State",
            "items": {
              "type": "string"
            }
          },
          "searchLocation": {
            "title": "Search location(s)",
            "type": "array",
            "description": "City, neighborhood, or ZIP code — e.g. \"Austin, TX\", \"Brooklyn, NY\", or \"78704\". One per line; each becomes its own search.",
            "items": {
              "type": "string"
            }
          },
          "status": {
            "title": "Listing status",
            "enum": [
              "forSale",
              "forRent",
              "sold"
            ],
            "type": "string",
            "description": "Which listings to return for the search location(s).",
            "default": "forSale"
          },
          "priceMin": {
            "title": "Price / rent: minimum ($)",
            "type": "integer",
            "description": "Minimum sale price, or minimum monthly rent when status is For rent. Leave blank for no minimum."
          },
          "priceMax": {
            "title": "Price / rent: maximum ($)",
            "type": "integer",
            "description": "Maximum sale price, or maximum monthly rent when status is For rent. Leave blank for no maximum."
          },
          "bedsMin": {
            "title": "Bedrooms: minimum",
            "type": "integer",
            "description": "Minimum bedrooms."
          },
          "bedsMax": {
            "title": "Bedrooms: maximum",
            "type": "integer",
            "description": "Maximum bedrooms."
          },
          "bathsMin": {
            "title": "Bathrooms: minimum",
            "type": "integer",
            "description": "Minimum bathrooms."
          },
          "bathsMax": {
            "title": "Bathrooms: maximum",
            "type": "integer",
            "description": "Maximum bathrooms."
          },
          "sqftMin": {
            "title": "Square feet: minimum",
            "type": "integer",
            "description": "Minimum living area (sqft)."
          },
          "sqftMax": {
            "title": "Square feet: maximum",
            "type": "integer",
            "description": "Maximum living area (sqft)."
          },
          "yearBuiltMin": {
            "title": "Year built: from",
            "type": "integer",
            "description": "Earliest construction year."
          },
          "yearBuiltMax": {
            "title": "Year built: to",
            "type": "integer",
            "description": "Latest construction year."
          },
          "lotSizeMin": {
            "title": "Lot size: minimum",
            "enum": [
              "",
              "1000",
              "2000",
              "5000",
              "10890",
              "21780",
              "43560",
              "87120",
              "217800",
              "435600",
              "871200",
              "2178000"
            ],
            "type": "string",
            "description": "Minimum lot size. Useful for land / acreage searches.",
            "default": ""
          },
          "lotSizeMax": {
            "title": "Lot size: maximum",
            "enum": [
              "",
              "2000",
              "5000",
              "10890",
              "21780",
              "43560",
              "87120",
              "217800",
              "435600",
              "871200",
              "2178000"
            ],
            "type": "string",
            "description": "Maximum lot size.",
            "default": ""
          },
          "homeTypes": {
            "title": "Home types",
            "type": "array",
            "description": "Limit to specific property types. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "house",
                "townhouse",
                "condo",
                "apartment",
                "manufactured",
                "lotLand",
                "multiFamily"
              ],
              "enumTitles": [
                "Houses",
                "Townhomes",
                "Condos/Co-ops",
                "Apartments",
                "Manufactured",
                "Lots/Land",
                "Multi-family"
              ]
            }
          },
          "sort": {
            "title": "Sort results by",
            "enum": [
              "relevant",
              "newest",
              "priceLow",
              "priceHigh",
              "bedrooms",
              "lotSize",
              "sqft"
            ],
            "type": "string",
            "description": "Order of the search results.",
            "default": "relevant"
          },
          "daysOnZillow": {
            "title": "Days on Zillow / sold in last",
            "enum": [
              "any",
              "1",
              "7",
              "14",
              "30",
              "90",
              "6m",
              "12m"
            ],
            "type": "string",
            "description": "Only listings posted (or sold) within this window.",
            "default": "any"
          },
          "fsbo": {
            "title": "Include For-Sale-By-Owner (FSBO)",
            "type": "boolean",
            "description": "Include owner-posted listings alongside agent listings.",
            "default": true
          },
          "foreclosure": {
            "title": "Foreclosures",
            "enum": [
              "any",
              "only",
              "exclude"
            ],
            "type": "string",
            "description": "Show all, only foreclosures, or hide foreclosures.",
            "default": "any"
          },
          "auction": {
            "title": "Auctions",
            "enum": [
              "any",
              "only",
              "exclude"
            ],
            "type": "string",
            "description": "Show all, only auctions, or hide auctions.",
            "default": "any"
          },
          "preForeclosure": {
            "title": "Pre-foreclosures (potential listings)",
            "enum": [
              "exclude",
              "include",
              "only"
            ],
            "type": "string",
            "description": "Off-market homes whose owner has defaulted but the auction hasn't happened yet (Zillow's \"Potential listings → Pre-foreclosure\"). Zillow hides these by default. \"Include\" adds them alongside normal listings; \"Only\" returns nothing else. Best with \"Include full property details\" on — the filing dates and auction info live on the detail page.",
            "default": "exclude"
          },
          "foreclosed": {
            "title": "Foreclosed / bank-owned pre-market (potential listings)",
            "enum": [
              "exclude",
              "include",
              "only"
            ],
            "type": "string",
            "description": "Homes the bank has repossessed but not yet listed for sale — pre-market REO (Zillow's \"Potential listings → Foreclosed\"). Zillow hides these by default. \"Include\" adds them alongside normal listings; \"Only\" returns nothing else.",
            "default": "exclude"
          },
          "distressedOnly": {
            "title": "Distressed properties only",
            "type": "boolean",
            "description": "One switch for the whole distressed market: only foreclosures, auctions, pre-foreclosures, and bank-owned pre-market homes — every regular listing category off. Works with Search location(s) and with Zillow search URLs in Start URLs. Overrides the individual Foreclosures/Auctions/Pre-foreclosures settings above.",
            "default": false
          },
          "newConstruction": {
            "title": "New construction",
            "enum": [
              "any",
              "only",
              "exclude"
            ],
            "type": "string",
            "description": "Show all, only new construction, or hide new construction.",
            "default": "any"
          },
          "includePendingUnderContract": {
            "title": "Include pending & under-contract",
            "type": "boolean",
            "description": "Zillow hides pending / under-contract listings by default. Turn this on to include them (also covers \"accepting backup offers\"). For-sale searches only.",
            "default": false
          },
          "openHousesOnly": {
            "title": "Must have open house",
            "type": "boolean",
            "description": "Only return listings with an upcoming open house event. Works with Search location(s) and with Zillow search URLs in Start URLs. Each result includes the open-house dates and times (openHouseSchedules; in flattened output the \"Open House Times\" and \"Open House Count\" columns).",
            "default": false
          },
          "keywords": {
            "title": "Keywords",
            "type": "string",
            "description": "Free-text keywords Zillow matches against listings — e.g. \"pool, ocean view, casita\"."
          },
          "zpids": {
            "title": "ZPID list (scrape specific properties)",
            "type": "array",
            "description": "Scrape individual properties directly by their Zillow Property ID (ZPID), one per line — no URL needed. Found in any property URL as the number before \"_zpid\".",
            "items": {
              "type": "string"
            }
          },
          "storeName": {
            "title": "Storage name (cross-run dedup + long-term retention)",
            "pattern": "^[a-z0-9]+(-[a-z0-9]+)*$",
            "type": "string",
            "description": "Name a persistent Key-Value Store and keep it constant across runs: listings already seen in earlier runs are skipped, so each run returns only never-seen-before listings. Pair with \"Monitoring Mode\" below to get status-change tracking instead of plain dedup."
          },
          "monitoringMode": {
            "title": "Monitoring Mode (status-change feed)",
            "type": "boolean",
            "description": "Requires a Storage name above. Each run then returns listings that are NEW or whose STATUS CHANGED since your last run (with Change Type and Previous Status columns) — e.g. FOR_SALE → PENDING flips. A run that could not check part of the map FAILS instead of reporting a false \"no changes\". Leave off for plain dedup.",
            "default": false
          },
          "includePropertyDetails": {
            "title": "Include Property Details",
            "type": "boolean",
            "description": "Include property details in the output.",
            "default": false
          },
          "includeAgentDetails": {
            "title": "Include additional agent details",
            "type": "boolean",
            "description": "Include additional agent details (full profile) in the output. Only relevant when includePropertyDetails is true. Note: Zillow protects agent profile pages aggressively, so enabling this can produce 403s for some agents and slow the run down. Basic agent info (brokerName) is already included from the search results without this flag.",
            "default": false
          },
          "includeSaleDetails": {
            "title": "Include additional sale details",
            "type": "boolean",
            "description": "Include additional sale details in the output.",
            "default": false
          },
          "flatOutput": {
            "title": "Flattened output",
            "type": "boolean",
            "description": "When enabled, each dataset row is a simple flat object (no nested `details` GraphQL blob) containing just the most commonly requested columns: Address, Price, Listing Date, Days on Zillow, Year Built, Status, Beds, Baths, Sq Ft, Agent/Broker name + phone + email, Description, New Roof flag, Permit History, Zoning, etc. Leaves output much smaller and easier to import into spreadsheets. When disabled, the full detailed GraphQL response is attached under `details` for each row.",
            "default": false
          },
          "includeNearbyHomes": {
            "title": "Include nearby / similar homes blob",
            "type": "boolean",
            "description": "When enabled, keeps Zillow's `Collections` / `nearbyHomes` / `relatedHomes` / `homeRecommendations` payloads (full listings for ~10–20 nearby properties) on each row. When disabled (default), these are stripped — saves ~25% of dataset bytes / residential-proxy data transfer with no loss of per-row property data. The `submitFlow` form template is always stripped.",
            "default": false
          },
          "moreResults": {
            "title": "Scrape beyond 500 results limit (for searches with more than 500 results)",
            "type": "boolean",
            "description": "Zillow limits search results to 500 properties per query. Enable this option if your search has more than 500 results. The scraper will automatically split the search area to exhaust all possible listings. Note: This process may take longer and consume more resources. (Ignored when Search method = mobile, which bypasses the 500 cap natively.)",
            "default": false
          },
          "communityHomeTypes": {
            "title": "Community: home types to scrape",
            "type": "array",
            "description": "For community URLs, choose which kinds of homes to return. Leave empty for all. Select only \"Floorplans\" to scrape just the floor plans and skip quick move-in (spec) homes and lots.",
            "items": {
              "type": "string",
              "enum": [
                "PLAN",
                "SPEC",
                "LOT"
              ],
              "enumTitles": [
                "Floorplans (models you can build)",
                "Quick move-ins (move-in-ready homes)",
                "Lots"
              ]
            }
          },
          "maxItems": {
            "title": "Max Items",
            "type": "integer",
            "description": "Maximum number of items to scrape.",
            "default": 100
          },
          "maxConcurrency": {
            "title": "Max Concurrency",
            "maximum": 50,
            "type": "integer",
            "description": "Maximum number of pages that can be processed at the same time.",
            "default": 20
          },
          "minConcurrency": {
            "title": "Min Concurrency",
            "type": "integer",
            "description": "Minimum number of pages that will be processed at the same time.",
            "default": 1
          },
          "maxRequestRetries": {
            "title": "Max Request Retries",
            "maximum": 20,
            "type": "integer",
            "description": "Number of times the crawler will retry a failed request before giving up.",
            "default": 5
          },
          "enrichEmails": {
            "title": "Enrich with the agent's contact email (billed per email found)",
            "type": "boolean",
            "description": "If enabled, adds the listing agent's email (and phone) to each property — matched from our database of 420,000+ U.S. agents, ~99.9% of which have an email on file. Adds contactEmail + contactPhone columns. Billed per email found; only charged when an email is returned, never for misses. (When you scrape agent-profile URLs directly, this instead discovers a contact email from the agent's own website.)",
            "default": false
          },
          "proxy": {
            "title": "Proxy configuration (optional override)",
            "type": "object",
            "description": "Leave empty — the actor already routes all traffic through its own built-in residential proxy at no extra cost to you. Only set this if you want to use your own proxies."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}