{
  "openapi": "3.0.1",
  "info": {
    "title": "Realtor.com Scraper 🏡 $1/1K, No Start Fee",
    "description": "Scrape realtor.com for-sale, rental and sold listings with 145+ fields — price history, tax records, assigned schools, FEMA flood risk, mortgage breakdown, agent emails and office phones. Every listing is scored against its own city and county median. No start fee, no cookies, no browser.",
    "version": "0.1",
    "x-build-id": "gPigfDhBLDSb7cFZE"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/trakk~realtor-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-trakk-realtor-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/trakk~realtor-scraper/runs": {
      "post": {
        "operationId": "runs-sync-trakk-realtor-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/trakk~realtor-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-trakk-realtor-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": {
          "locations": {
            "title": "📍 Locations",
            "type": "array",
            "description": "Where to search. Write a city and state (Austin, TX), a ZIP code (78704), a county (Travis County, TX), or paste a realtor.com search link. One search reaches up to 10,000 listings per location.",
            "items": {
              "type": "string"
            }
          },
          "status": {
            "title": "🏷️ Listing status",
            "enum": [
              "for_sale",
              "for_rent",
              "sold",
              "off_market",
              "ready_to_build"
            ],
            "type": "string",
            "description": "For sale is the default. Sold reaches realtor.com's archive, which holds far more rows than the live market - Austin alone has over 126,000 sold records.",
            "default": "for_sale"
          },
          "mode": {
            "title": "⚙️ What to collect",
            "enum": [
              "listings",
              "listings_plus_details",
              "agents"
            ],
            "type": "string",
            "description": "Listings is the fast mode and covers the full search record. Listings + property details calls each property for tax history, assigned schools, flood risk, valuation forecast, the mortgage breakdown and agent contacts. Agents rolls the same listings up into one row per listing agent.",
            "default": "listings"
          },
          "maxResults": {
            "title": "🔢 Maximum rows per location",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "How many rows to save for each location. In the agents mode this counts agents, not listings.",
            "default": 100
          },
          "sort": {
            "title": "↕️ Sort by",
            "enum": [
              "relevant",
              "newest",
              "oldest",
              "price_low",
              "price_high",
              "beds_high",
              "sqft_high",
              "photos",
              "sold_date"
            ],
            "type": "string",
            "description": "The order realtor.com returns listings in.",
            "default": "relevant"
          },
          "propertyIds": {
            "title": "🔗 Specific properties",
            "type": "array",
            "description": "Optional. Property page links or numeric property ids to look up directly, instead of - or in addition to - searching.",
            "items": {
              "type": "string"
            }
          },
          "priceMin": {
            "title": "💵 Minimum price",
            "type": "integer",
            "description": "Lowest list price to include. For rentals this is monthly rent."
          },
          "priceMax": {
            "title": "💵 Maximum price",
            "type": "integer",
            "description": "Highest list price to include."
          },
          "bedsMin": {
            "title": "🛏️ Minimum bedrooms",
            "type": "integer",
            "description": "Fewest bedrooms to include."
          },
          "bedsMax": {
            "title": "🛏️ Maximum bedrooms",
            "type": "integer",
            "description": "Most bedrooms to include."
          },
          "bathsMin": {
            "title": "🛁 Minimum bathrooms",
            "type": "integer",
            "description": "Fewest bathrooms to include."
          },
          "sqftMin": {
            "title": "📐 Minimum interior sqft",
            "type": "integer",
            "description": "Smallest interior area to include, in square feet."
          },
          "sqftMax": {
            "title": "📐 Maximum interior sqft",
            "type": "integer",
            "description": "Largest interior area to include, in square feet."
          },
          "lotSqftMin": {
            "title": "🌳 Minimum lot sqft",
            "type": "integer",
            "description": "Smallest lot to include, in square feet."
          },
          "yearBuiltMin": {
            "title": "📅 Built no earlier than",
            "type": "integer",
            "description": "Exclude homes built before this year."
          },
          "yearBuiltMax": {
            "title": "📅 Built no later than",
            "type": "integer",
            "description": "Exclude homes built after this year."
          },
          "garageMin": {
            "title": "🚗 Minimum garage spaces",
            "type": "integer",
            "description": "Fewest garage spaces to include."
          },
          "hoaFeeMax": {
            "title": "🏘️ Maximum HOA fee",
            "type": "integer",
            "description": "Monthly HOA fee ceiling, in dollars."
          },
          "noHoaFee": {
            "title": "🚫 No HOA fee only",
            "type": "boolean",
            "description": "Keep only listings with no homeowners association fee.",
            "default": false
          },
          "propertyTypes": {
            "title": "🏠 Property types",
            "type": "array",
            "description": "Leave empty for every type.",
            "items": {
              "type": "string",
              "enum": [
                "single_family",
                "multi_family",
                "condo",
                "condos",
                "condo_townhome",
                "condo_townhome_rowhome_coop",
                "condop",
                "cond_op",
                "coop",
                "townhomes",
                "townhouse",
                "duplex_triplex",
                "apartment",
                "farm",
                "land",
                "mobile",
                "commercial",
                "investment",
                "rental",
                "other"
              ]
            }
          },
          "subTypes": {
            "title": "🏢 Sub types",
            "type": "array",
            "description": "Narrower categories realtor.com tracks separately from the main property type. Leave empty to ignore.",
            "items": {
              "type": "string",
              "enum": [
                "condo",
                "cond_op",
                "co_op",
                "townhouse"
              ]
            }
          },
          "keywords": {
            "title": "🔎 Keywords",
            "type": "array",
            "description": "Words that must appear in the listing, for example pool, casita, waterfront.",
            "items": {
              "type": "string"
            }
          },
          "newConstruction": {
            "title": "🏗️ New construction only",
            "type": "boolean",
            "description": "Keep only newly built homes.",
            "default": false
          },
          "foreclosure": {
            "title": "🏚️ Foreclosures only",
            "type": "boolean",
            "description": "Keep only foreclosure listings.",
            "default": false
          },
          "shortSale": {
            "title": "📉 Short sales only",
            "type": "boolean",
            "description": "Keep only short sales.",
            "default": false
          },
          "contingent": {
            "title": "📝 Contingent only",
            "type": "boolean",
            "description": "Keep only listings marked contingent.",
            "default": false
          },
          "includePending": {
            "title": "⏳ Pending listings",
            "type": "boolean",
            "description": "Leave unset for realtor.com's own default. Turn on to include pending sales, off to exclude them."
          },
          "seniorCommunity": {
            "title": "👵 55+ communities only",
            "type": "boolean",
            "description": "Keep only homes in 55+ communities.",
            "default": false
          },
          "hasVirtualTour": {
            "title": "🎥 Has a virtual tour",
            "type": "boolean",
            "description": "Keep only listings that offer a virtual tour.",
            "default": false
          },
          "has3dTour": {
            "title": "🧊 Has a Matterport 3D tour",
            "type": "boolean",
            "description": "Keep only listings with a Matterport 3D walkthrough.",
            "default": false
          },
          "catsAllowed": {
            "title": "🐈 Cats allowed",
            "type": "boolean",
            "description": "Rental listings only.",
            "default": false
          },
          "dogsAllowed": {
            "title": "🐕 Dogs allowed",
            "type": "boolean",
            "description": "Rental listings only.",
            "default": false
          },
          "openHouseFrom": {
            "title": "🚪 Open house from",
            "type": "string",
            "description": "Only listings with an open house on or after this date."
          },
          "openHouseTo": {
            "title": "🚪 Open house until",
            "type": "string",
            "description": "Only listings with an open house on or before this date."
          },
          "listedSince": {
            "title": "🗓️ Listed on or after",
            "type": "string",
            "description": "Only listings first published on or after this date."
          },
          "listedUntil": {
            "title": "🗓️ Listed on or before",
            "type": "string",
            "description": "Only listings first published on or before this date."
          },
          "soldSince": {
            "title": "💰 Sold on or after",
            "type": "string",
            "description": "Applies when the status is Sold."
          },
          "soldUntil": {
            "title": "💰 Sold on or before",
            "type": "string",
            "description": "Applies when the status is Sold."
          },
          "includeMarketContext": {
            "title": "📊 Add city and county market medians",
            "type": "boolean",
            "description": "Puts every listing next to its own market: median list price, price per sqft, days on market and rent, for both the city and the county. This is what powers priceVsCityMedianPct, grossRentYieldPct and dealScore. Costs one extra request per city, not per listing.",
            "default": true
          },
          "includePhotos": {
            "title": "🖼️ Include the full photo list",
            "type": "boolean",
            "description": "Turn off to keep only the main photo and make the dataset much smaller.",
            "default": true
          },
          "downPaymentPercent": {
            "title": "🏦 Down payment percent",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Used for the monthly payment estimate when realtor.com does not supply one of its own.",
            "default": 20
          },
          "proxyConfiguration": {
            "title": "🌐 Proxy",
            "type": "object",
            "description": "realtor.com only serves US addresses, so a US proxy is required. The default datacenter proxy is enough - residential is not needed and would only cost more.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "BUYPROXIES94952"
              ],
              "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}