HouseData

Use case

Zillow listings search API

A city, ZIP, neighborhood or county, as you would type it into Zillow — for sale, for rent or recently sold, 40 per page, up to 1,000 per search. One row per listing, with the zpid that opens the full record.

Request — newest listings first
curl -X POST "https://zillow-full-data-api.p.rapidapi.com/search" \
  -H "X-RapidAPI-Key: YOUR_KEY" -H "X-RapidAPI-Host: zillow-full-data-api.p.rapidapi.com" \
  -H "Content-Type: application/json" \
  -d '{"location": "78704", "status": "forSale", "sort": "daysOn", "sortAscending": true, "pageSize": 3, "fields": "core"}'
Response — 345 matching in 78704
{
  "searchResultCounts": { "totalMatchingCount": 345 },
  "searchResults": [
    {
      "property": {
        "zpid": "29474566",
        "address": { "streetAddress": "2207 Euclid Ave" },
        "price": { "value": 775000 },
        "bedrooms": 3,
        "bathrooms": 2,
        "livingArea": 1500,
        "daysOnZillow": 0,
        "estimates": { "zestimate": null }
      },
      "resultType": "property"
    }
    …
  ]
}

One of 345 rows, core projection.

What you get

One row per listing: zpid, address, coordinates, price and price per square foot, beds, baths, living area, lot, year built, days on Zillow, listing status and sub-type, the Zestimate, and the photo links. Eight sort orders; fields=core for the headline, or pick your own paths.

Paging, and where it stops

40 per page and 1,000 per search — Zillow's ceiling, stated on the endpoint. page × pageSize past it is a 400 that says so. For a bigger city, search its ZIP codes or neighborhoods from /autocomplete; each is its own 1,000.

Rentals are two shapes

A forRent search returns apartment buildings (resultType: "propertyGroup", with a buildingId, the rent range and the count of units) and single homes (property). Read resultType per row rather than assuming one shape.

Where it fits

A market snapshot for a ZIP, an investor screen for price cuts and long days on market, a daily feed of new listings, or the first step before enriching every row with the full record through /batch. The cookbook has each of those as a recipe.

Endpoints: POST /search, /autocomplete and /region · recipes in the cookbook.