{
  "openapi": "3.0.1",
  "info": {
    "title": "Zillow Property Search, Price Drops and Detail Lookup",
    "description": "Zillow scraper for US homes by city or zip code: price, beds, baths, Zestimate, broker, photo; for sale, for rent or sold homes. New Zillow listings alert to Slack, price drops on luxury homes in 90210, listings with HOA and tax history. Export a Zillow search to Google Sheets or n8n.",
    "version": "1.0",
    "x-build-id": "PGcdZgUGmEc9lUPq2"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/accountable_eel~zillow-listing-lookup/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-accountable_eel-zillow-listing-lookup",
        "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/accountable_eel~zillow-listing-lookup/runs": {
      "post": {
        "operationId": "runs-sync-accountable_eel-zillow-listing-lookup",
        "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/accountable_eel~zillow-listing-lookup/run-sync": {
      "post": {
        "operationId": "run-sync-accountable_eel-zillow-listing-lookup",
        "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": {
          "searches": {
            "title": "Zillow searches",
            "type": "array",
            "description": "One per line: a city, ZIP code or neighbourhood ('Austin, TX', '90210', 'SoHo, New York'), a zillow.com search URL, or a homedetails property link. Accepted formats: Austin, TX, 90210, https://www.zillow.com/austin-tx/, https://www.zillow.com/homedetails/123-Main-St-Austin-TX-78701/12345678_zpid/. You're only charged for the ones we actually find — a miss costs nothing.",
            "items": {
              "type": "string"
            }
          },
          "testRun": {
            "title": "Try it first — only process the first 5",
            "type": "boolean",
            "description": "Turn this on to test your input on a small sample before running the full list. Turn it off to process everything.",
            "default": false
          },
          "onlyFound": {
            "title": "Hide rows with no result",
            "type": "boolean",
            "description": "Only keep rows where something was actually found. Misses are always free, whether or not you show them here.",
            "default": false
          },
          "includeKeywords": {
            "title": "Only keep rows containing",
            "type": "array",
            "description": "Optional. Only keep results that mention at least one of these words (e.g. a job title, a city, a product name). Leave empty to keep everything.",
            "items": {
              "type": "string"
            }
          },
          "excludeKeywords": {
            "title": "Skip rows containing",
            "type": "array",
            "description": "Optional. Drop any result that mentions one of these words. Leave empty to skip nothing.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Stop after this many results",
            "minimum": 1,
            "type": "integer",
            "description": "Optional. Stop the run once this many results have been found — useful for a quick, cheap sample. Leave blank for no limit."
          },
          "status": {
            "title": "Listing status",
            "enum": [
              "for_sale",
              "for_rent",
              "sold"
            ],
            "type": "string",
            "description": "Choose whether to search properties for sale, rentals, or recently sold homes.",
            "default": "for_sale"
          },
          "maxListings": {
            "title": "Most listings to return per search",
            "type": "integer",
            "description": "Newest first. You pay per listing returned, so this controls your maximum budget per search.",
            "default": 40
          },
          "minPrice": {
            "title": "Minimum price (USD)",
            "type": "integer",
            "description": "Optional lower price bound in US dollars. For rentals this is monthly rent."
          },
          "maxPrice": {
            "title": "Maximum price (USD)",
            "type": "integer",
            "description": "Optional upper price bound in US dollars. For rentals this is monthly rent."
          },
          "minBeds": {
            "title": "Minimum bedrooms",
            "type": "integer",
            "description": "Optional minimum number of bedrooms. Homes with fewer bedrooms are excluded."
          },
          "minBaths": {
            "title": "Minimum bathrooms",
            "type": "integer",
            "description": "Optional minimum number of bathrooms. Homes with fewer bathrooms are excluded."
          },
          "homeType": {
            "title": "Property type",
            "enum": [
              "",
              "single_family",
              "multi_family",
              "condo",
              "townhouse",
              "manufactured",
              "lot_land",
              "apartment"
            ],
            "type": "string",
            "description": "Optional property style filter. Leave on Any type to include all property categories.",
            "default": ""
          },
          "includeDetails": {
            "title": "Include detail fields (description, price and tax history, HOA, schools)",
            "type": "boolean",
            "description": "Fetches each listing's full property detail page. Billed as a separate detail event per property.",
            "default": false
          },
          "deltaMode": {
            "title": "Only return listings that are new, cheaper, dearer or gone since the last run",
            "type": "boolean",
            "description": "Turns a search into a watchlist. Unchanged listings are removed before billing. Price rises and gone listings are free.",
            "default": false
          },
          "deltaName": {
            "title": "Watchlist name (optional)",
            "type": "string",
            "description": "Leave empty to derive from filters, or enter a custom name to pin watchlist memory across filter adjustments.",
            "default": ""
          },
          "alertOnNewOnly": {
            "title": "Alert on new listings only",
            "type": "boolean",
            "description": "With monitoring on and this ticked, return only listings the watchlist has never seen before.",
            "default": false
          },
          "alertOnPriceDrop": {
            "title": "Alert on price drops",
            "type": "boolean",
            "description": "With monitoring on and this ticked, return only listings whose asking price dropped.",
            "default": false
          },
          "minPriceChangePct": {
            "title": "Smallest price change to report (%)",
            "type": "number",
            "description": "A listing must change in price by at least this percentage to count as a price drop or rise.",
            "default": 0.5
          },
          "skipFirstRun": {
            "title": "Seed silently (no rows on the first run)",
            "type": "boolean",
            "description": "The first run remembers current listings without returning or billing them. Alerts begin on the second run.",
            "default": false
          },
          "notifyUrl": {
            "title": "Webhook URL for instant alerts (Discord, Slack, Telegram, or JSON)",
            "type": "string",
            "description": "Optional secret webhook link. New listings, price reductions and gone properties are posted directly to your chat.",
            "default": ""
          },
          "quietRunOutput": {
            "title": "Suppress output when nothing changed",
            "type": "boolean",
            "description": "With monitoring on and this ticked, a run where no listings changed writes nothing to the dataset.",
            "default": false
          },
          "columns": {
            "title": "Which columns do you want?",
            "type": "array",
            "description": "Choose which pieces of information to include in each result row. All are included by default.",
            "items": {
              "type": "string",
              "enum": [
                "searchUrl",
                "totalAvailable",
                "listingCount",
                "detailCount",
                "truncated",
                "newCount",
                "priceDropCount",
                "priceRiseCount",
                "goneCount",
                "monitorStatus",
                "medianPrice",
                "properties",
                "zpid",
                "url",
                "streetAddress",
                "city",
                "state",
                "zipcode",
                "latitude",
                "longitude",
                "price",
                "priceChange",
                "statusText",
                "beds",
                "baths",
                "livingArea",
                "lotArea",
                "homeType",
                "yearBuilt",
                "daysOnZillow",
                "zestimate",
                "rentZestimate",
                "brokerName",
                "photo",
                "description",
                "priceHistory",
                "taxHistory",
                "monthlyHoaFee",
                "schools",
                "changeType",
                "previousPrice",
                "priceDeltaPct",
                "firstSeenAt",
                "lastSeenAt",
                "daysListed"
              ],
              "enumTitles": [
                "Search link on Zillow",
                "Total matching on Zillow",
                "Listings returned (billed)",
                "Detail fetches (billed)",
                "More results were available",
                "New listings this run",
                "Price drops this run",
                "Price rises this run",
                "Gone listings this run",
                "Monitoring status",
                "Median asking price of this search",
                "All listings found (full list)",
                "Zillow property ID (zpid)",
                "Listing link",
                "Street address",
                "City",
                "State",
                "ZIP code",
                "Latitude",
                "Longitude",
                "Asking price (USD)",
                "Price change",
                "Listing status",
                "Bedrooms",
                "Bathrooms",
                "Living area (sq ft)",
                "Lot area (sq ft)",
                "Property type",
                "Year built",
                "Days on Zillow",
                "Zestimate valuation",
                "Rent Zestimate",
                "Listing brokerage name",
                "Main listing photo",
                "Property description",
                "Price change history",
                "Property tax history",
                "Monthly HOA fee",
                "Nearby school ratings",
                "Change type (new, price-drop, gone)",
                "Previous price",
                "Price change percentage",
                "First seen on watchlist",
                "Last seen on watchlist",
                "Days listed"
              ]
            },
            "default": [
              "searchUrl",
              "totalAvailable",
              "listingCount",
              "detailCount",
              "truncated",
              "newCount",
              "priceDropCount",
              "priceRiseCount",
              "goneCount",
              "monitorStatus",
              "medianPrice",
              "properties",
              "zpid",
              "url",
              "streetAddress",
              "city",
              "state",
              "zipcode",
              "latitude",
              "longitude",
              "price",
              "priceChange",
              "statusText",
              "beds",
              "baths",
              "livingArea",
              "lotArea",
              "homeType",
              "yearBuilt",
              "daysOnZillow",
              "zestimate",
              "rentZestimate",
              "brokerName",
              "photo",
              "description",
              "priceHistory",
              "taxHistory",
              "monthlyHoaFee",
              "schools",
              "changeType",
              "previousPrice",
              "priceDeltaPct",
              "firstSeenAt",
              "lastSeenAt",
              "daysListed"
            ]
          },
          "expandRows": {
            "title": "One row per listing (recommended) — turn off for one row per listing instead",
            "type": "boolean",
            "description": "When on, each listing found gets its own row instead of being grouped under its listing. You're still only charged once per listing, no matter how many rows it produces.",
            "default": true
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "minimum": 1,
            "maximum": 5,
            "type": "integer",
            "description": "Parallel requests. Keep conservative — this target has no browser fallback, so getting blocked costs more than slow-and-steady.",
            "default": 3
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Apify Proxy config. Residential recommended for anti-bot-sensitive targets.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "US"
            }
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}