{
  "openapi": "3.0.1",
  "info": {
    "title": "Propwire Scraper | Property Owner Leads",
    "description": "Propwire scraper for US property owner leads: owner names and mailing addresses, estimated value and equity, mortgages, tax bills, foreclosure notices and lead flags. Search a city, ZIP, county, state, Propwire link or property ID. Test run: 20 properties in 15 seconds, 88 fields each. No login.",
    "version": "1.0",
    "x-build-id": "4KGHhWsgRfEbQ2hCN"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/silentflow~propwire-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-silentflow-propwire-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/silentflow~propwire-scraper/runs": {
      "post": {
        "operationId": "runs-sync-silentflow-propwire-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/silentflow~propwire-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-silentflow-propwire-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": "📍 Places",
            "type": "array",
            "description": "One US place per line, written the way you would type it in Propwire's search bar: a city with its state (<code>Austin, TX</code>), a ZIP code (<code>78753</code>), a county (<code>Travis County, TX</code>), a state (<code>Florida</code>) or a full street address (<code>308 Holliday Ct, Austin, TX</code>). Add the state to a city name: <code>Miami</code> alone can land on another Miami. A city usually matches tens of thousands of properties; use the filters below to keep the ones you want.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "🔗 Propwire links",
            "type": "array",
            "description": "Paste links copied from propwire.com: a search page with your filters (<code>https://propwire.com/search?filters=...</code>) or a property page (<code>https://propwire.com/realestate/308-Holliday-Ct/239647/property-details</code>). A search link keeps its own filters, the filters below do not change it.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "propertyIds": {
            "title": "🆔 Property IDs",
            "type": "array",
            "description": "Propwire property IDs, the number in a property link (<code>239647</code> in <code>/realestate/308-Holliday-Ct/239647/property-details</code>). Use it to refresh the properties you already follow: each ID comes back as one row with its current owner, value, debt and lead flags.",
            "items": {
              "type": "string"
            }
          },
          "maxItems": {
            "title": "🔢 Max properties",
            "minimum": 1,
            "type": "integer",
            "description": "How many properties to deliver for the whole run, all places, links and IDs together. Propwire pages one search up to 10,000 properties: for more, split a big area by ZIP code or county.",
            "default": 100
          },
          "leadTypes": {
            "title": "🎯 Lead types",
            "type": "array",
            "description": "Keep only properties on these Propwire lead lists. <b>A property must be on all of the lists you pick</b>, so two rare lists together can return nothing: for one list or the other, run one search per list.",
            "items": {
              "type": "string",
              "enum": [
                "preforeclosure",
                "auction",
                "bank_owned",
                "absentee_owner",
                "out_of_state_owner",
                "high_equity",
                "free_and_clear",
                "low_equity",
                "negative_equity",
                "vacant_home",
                "vacant_lot",
                "zombie_property",
                "tired_landlord",
                "preprobate",
                "empty_nester",
                "cash_buyer",
                "intrafamily_transfer",
                "flipped_property",
                "adjustable_loan",
                "assumable_loan",
                "private_lender",
                "mls_active",
                "mls_pending",
                "mls_sold",
                "mls_failed"
              ],
              "enumTitles": [
                "Pre-foreclosure",
                "Auction",
                "Bank owned (REO)",
                "Absentee owner",
                "Out-of-state owner",
                "High equity",
                "Free and clear",
                "Low equity",
                "Negative equity",
                "Vacant home",
                "Vacant lot",
                "Zombie property",
                "Tired landlord",
                "Pre-probate",
                "Empty nester",
                "Cash buyer",
                "Intrafamily transfer",
                "Flipped property",
                "Adjustable loan",
                "Assumable loan",
                "Private lender",
                "Listed for sale (MLS active)",
                "Under contract (MLS pending)",
                "Recently sold (MLS sold)",
                "Expired or withdrawn listing (MLS failed)"
              ]
            }
          },
          "propertyTypes": {
            "title": "🏠 Property types",
            "type": "array",
            "description": "Keep only these kinds of property. Leave empty for all of them.",
            "items": {
              "type": "string",
              "enum": [
                "sfr",
                "condo",
                "mfh_2_to_4",
                "mfh_5_plus",
                "mobile",
                "land",
                "commercial",
                "other"
              ],
              "enumTitles": [
                "Single-family home",
                "Condo or townhouse",
                "Multi-family, 2 to 4 units",
                "Multi-family, 5 units or more",
                "Mobile home",
                "Land",
                "Commercial",
                "Other"
              ]
            }
          },
          "minValue": {
            "title": "💵 Min estimated value ($)",
            "minimum": 0,
            "type": "integer",
            "description": "Keep properties Propwire values at this amount or more, e.g. <code>200000</code>."
          },
          "maxValue": {
            "title": "💵 Max estimated value ($)",
            "minimum": 0,
            "type": "integer",
            "description": "Keep properties Propwire values at this amount or less, e.g. <code>600000</code>."
          },
          "sortBy": {
            "title": "↕️ Order",
            "enum": [
              "relevance",
              "highest_equity_percent",
              "lowest_equity_percent",
              "highest_equity",
              "highest_value",
              "lowest_value"
            ],
            "type": "string",
            "description": "Which properties come first, so a small <b>Max properties</b> keeps the best ones: highest equity first finds the owners with the most room to sell.",
            "default": "relevance"
          },
          "includeDetails": {
            "title": "📑 Full property records",
            "type": "boolean",
            "description": "Adds each property's full record: current mortgages with lender, rate and balance, transfer history, tax bill, foreclosure notice with case number and trustee, APN, county, zoning, owner portfolio and photos. About 2 properties per second with it on (100 in 46 seconds in our test); turn it off for a quick owner and equity list (500 properties in about 3 seconds).",
            "default": true
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}