ScavioScavio
ToolsPricing
Sign InsGet Startedg
Quick StartAPI & SDKsEcosystem

Zillow

Zillow Search API

Search Zillow listings in any region - for sale, for rent or recently sold - and get price, beds, baths, living area, lot size, Zestimate, coordinates, broker, days on market and the full image gallery back as JSON. 25 filters and 14 sorts, roughly 40 listings a page. Costs 1 credit per request.

POST/api/v1/zillow/search

Authorizations

Authorizationstringheaderrequired

Bearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).

Body

application/json
locationstringrequired

Region to search, 1-200 characters: a Zillow slug (austin-tx, travis-county-tx), a human form ("Austin, TX"), a bare ZIP, or a pasted zillow.com search URL. A region Zillow cannot resolve is a 404, not an empty result set. A BARE ZIP WORKS ONLY ON ITS OWN - combined with any filter or sort, Zillow resolves it by geolocation on that request shape and answers about a different city entirely, so the request is rejected with a 400 before it is billed. Use the city name when filtering.

Example: Austin, TX

listing_statusenum<string>default:for_sale

Which market to search. These are three different markets, not filters over one.

  • for_sale — Active for-sale listings (default).
  • for_rent — Rentals. min_price / max_price become MONTHLY RENT here - Zillow files rent under its payment filter, not its price filter.
  • sold — Recently sold homes.
pageinteger

Results page, 1-based. Minimum 1. Roughly 40 listings per page; every page is another credit.

Example: 2

sortenum<string>

Result ordering. Defaults to Zillow's own ranking. Zillow's saved / featured / personalised sorts are deliberately absent: they rank against a signed-in profile, and we are never signed in, so they would sort by somebody else's session.

  • relevance — Zillow's own relevance ranking.
  • recommended — Zillow's recommended order.
  • newest — Most recently listed first.
  • price_low — Cheapest first.
  • price_high — Most expensive first.
  • payment_low — Lowest monthly payment first.
  • payment_high — Highest monthly payment first.
  • beds — Most bedrooms first.
  • baths — Most bathrooms first.
  • sqft — Largest living area first.
  • lot_size — Largest lot first.
  • zestimate_low — Lowest Zestimate first.
  • zestimate_high — Highest Zestimate first.
  • recent_change — Most recent price change first.
min_pricenumber

Minimum price, inclusive. Must be 0 or greater. This is MONTHLY RENT, not sale price, when listing_status is "for_rent".

Example: 400000

max_pricenumber

Maximum price, inclusive. Must be 0 or greater. Monthly rent when listing_status is "for_rent".

Example: 900000

beds_mininteger

Minimum bedrooms. Whole number, 0 or greater.

Example: 3

beds_maxinteger

Maximum bedrooms. Whole number, 0 or greater.

baths_minnumber

Minimum bathrooms, 0 or greater. HALF BATHS ARE ALLOWED here - 1.5 is a value Zillow's own picker offers, unlike the bedroom bounds which are whole numbers.

Example: 2.5

baths_maxnumber

Maximum bathrooms, 0 or greater. Half baths allowed.

sqft_mininteger

Minimum living area in square feet. Whole number, 0 or greater.

Example: 1500

sqft_maxinteger

Maximum living area in square feet. Whole number, 0 or greater.

lot_size_mininteger

Minimum lot size in square feet. Whole number, 0 or greater.

lot_size_maxinteger

Maximum lot size in square feet. Whole number, 0 or greater.

year_built_mininteger

Earliest year built. Whole number, 0 or greater.

Example: 1990

year_built_maxinteger

Latest year built. Whole number, 0 or greater.

max_hoanumber

Maximum monthly HOA fee in dollars, 0 or greater. There is no minimum-HOA filter.

Example: 300

home_typeenum<string>

Restrict to one property type. One value only - Zillow's type flags are set exclusively here.

  • houses — Single-family houses.
  • townhomes — Townhouses.
  • multi_family — Multi-family buildings.
  • condos — Condominiums.
  • apartments — Apartments.
  • manufactured — Manufactured homes.
  • lots_land — Lots and land.
days_on_zillowenum<string>

Listed within the last N days - or, with listing_status "sold", sold within them. CLOSED SET, validated here rather than passed through: Zillow answers an unrecognised value with the UNFILTERED set under a 200, which would bill a scrape for a filter that did nothing while the response looked filtered.

  • 1 — Last day.
  • 7 — Last 7 days.
  • 14 — Last 14 days.
  • 30 — Last 30 days.
  • 90 — Last 90 days.
  • 6m — Last 6 months.
  • 12m — Last 12 months.
  • 24m — Last 24 months.
  • 36m — Last 36 months.
keywordsstring

Free-text match against the listing description, 1-200 characters.

Example: casita

has_poolboolean

Only listings with a pool.

Example: true

has_garageboolean

Only listings with a garage.

has_air_conditioningboolean

Only listings with air conditioning.

is_waterfrontboolean

Only waterfront listings.

has_basementboolean

Only listings with a basement.

is_new_constructionboolean

Only new-construction listings.

has_open_houseboolean

Only listings with an upcoming open house.

price_reducedboolean

Only listings whose price was reduced.

is_3d_tourboolean

Only listings with a 3D tour.

Request

from scavio import ScavioClient

client = ScavioClient(api_key="sk_live_your_key")

# Page through a city. Use the city name, not a ZIP, whenever you filter.
page = 1
while True:
    results = client.zillow.search(
        location="Austin, TX",
        min_price=400000,
        beds_min=3,
        sort="newest",
        page=page,
    )
    listings = results["data"]["properties"]
    if not listings:
        break
    for home in listings:
        print(home["address"], home["price"], home["zpid"])
    if not results["data"]["next_page_url"]:
        break
    page += 1

Response

"url": "https://www.zillow.com/austin-tx/",
"listing_status": "for_sale",
"sort": "relevance",
"title": "Austin TX Real Estate - Austin TX Homes For Sale | Zillow",
"description": "Zillow has 5806 homes for sale in Austin TX. View listing photos, review sales history, and use our detailed real estate filters to find the perfect place.",
"total_results": 5806,
"page": 1,
"next_page_url": "https://www.zillow.com/austin-tx/2_p/",
"count": 41,
"relaxed_count": 0,
"relaxed_properties": []
},
"response_time": 4179,
"credits_used": 1,
"credits_remaining": 4820
}
PreviousAirbnb ReviewsNextZillow Property
ScavioScavio

One scraper API for every social, search and ecommerce platform. Built for AI agents.

Product

  • Features
  • Pricing
  • Dashboard
  • Affiliates

Developers

  • Documentation
  • API Reference
  • Quickstart
  • MCP Integration
  • Python SDK

Alternatives

  • Tavily Alternative
  • SerpAPI Alternative
  • Firecrawl Alternative
  • Exa Alternative
  • Serper Alternative
  • Tavily vs Scavio
  • SerpAPI vs Scavio
  • All alternatives
  • Compare Scavio vs alternatives

Search APIs

  • Google Search API
  • Amazon Product API
  • YouTube API
  • Reddit API
  • Walmart Product API
  • TikTok API
  • Instagram API

Tools

  • All Tools

© 2026 Scavio. All rights reserved.

Featured on TAAFT
Terms of ServicePrivacy Policy