Documentation Python quickstart Blog Free tools Enterprise solutions hello@quanticdata.ioLog in
All collectors

Zillow Property API

Real estate · v1.1.0 · zillow_property

$0.005 / property

$5.00 / 1K · pay per delivered property

A Zillow property API for a list of zpids: address split into city, state and ZIP, listing status and home type, price, beds and baths, living area and lot size with units, year built, coordinates, the listing description, last-sold price and date, the recent price history, brokerage and MLS id, photo count and photo URLs. Pass zpids or /homedetails/ URLs, one row per property.

$0.005 per delivered property · $2 free every month · Failed runs never billed

What it does

What a Zillow property API does

Where the Zillow search collector returns the board, this one returns the dossier: everything the home-details page holds for a single property, including the fields a results card omits — the price_history array of {date, price, event} events, last_sold_price with date_sold, year_built, the mls_id and brokerage, and the listing description up to its first 1500 characters.

The two estimate fields are handled by refusal, not by guessing. zestimate and rent_zestimate are populated only when Zillow server-renders them for that page and are left null otherwise — they are Zillow's figures, never ours, and never back-filled from a nearby number. Living area and lot size each carry their own unit field, so a sqft value is never confused with an m² one.

Inputs

The whole request. Anything you leave out falls back to the default shown in the catalog.

InputTypeRequiredWhat it does
propertiesarrayyeszpids or /homedetails/ URLs (zillow_search returns both).
max_resultsintegernoHow many properties to deliver at most (1–20). You pay only for delivered properties.

Outputs — 54 fields, one row per property

What one property looks like

Every delivered property carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.

FieldTypeWhat it holds
zpidstringZillow property id.
urlstringHome-details URL.
addressstring · nullableStreet address.
citystring · nullableCity.
statestring · nullableState.
zipcodestring · nullableZIP.
statusstring · nullableListing status (FOR_SALE, SOLD…).
home_typestring · nullableSINGLE_FAMILY, CONDO…
pricenumber · nullableListing price.
currencystring · nullablePrice currency.
zestimatenumber · nullableZestimate when server-rendered.
rent_zestimatenumber · nullableRent Zestimate when server-rendered.
bedsnumber · nullableBedrooms.
bathsnumber · nullableBathrooms.
living_areanumber · nullableLiving area.
living_area_unitstring · nullablesqft/m².
lot_sizenumber · nullableLot size value.
lot_size_unitstring · nullableLot size unit.
year_builtinteger · nullableYear built.
latitudenumber · nullableLatitude.
longitudenumber · nullableLongitude.
descriptionstring · nullableListing description (first 1500 chars).
last_sold_pricenumber · nullableLast sold price.
date_soldstring · nullableLast sold date.
price_historyobject[]Recent price events ({ date, price, event }).
brokeragestring · nullableListing brokerage.
mls_idstring · nullableMLS id.
photo_countinteger · nullableTotal photos on the listing.
photosstring[]First photo URLs.
countrystring · nullableCountry code as Zillow states it (USA).
neighborhoodstring · nullableNeighbourhood name.
time_zonestring · nullableIANA time zone of the property.
property_typestring · nullableProperty type in words, e.g. "Single Family Residence".
listing_typestring · nullableHow it is listed: For Sale by Agent, For Sale by Owner, New Construction, Foreclosure, Auction, Coming Soon, Pending.
mls_statusstring · nullableStatus as the MLS reports it (Active, Pending…).
mls_namestring · nullableName of the MLS the listing comes from.
listing_updatedstring · nullableWhen the listing was last updated at the source (YYYY-MM-DD HH:MM:SS).
listing_contact_phonestring · nullablePhone number the listing publishes for enquiries.
lot_size_sqftnumber · nullableLot size in square feet.
price_per_sqftnumber · nullablePrice per square foot.
days_on_zillowinteger · nullableDays on Zillow.
price_changenumber · nullableLatest price change; negative on a price cut.
price_change_datestring · nullableDate of that change (YYYY-MM-DD).
baths_fullinteger · nullableFull bathrooms.
baths_halfinteger · nullableHalf bathrooms.
heatingstring · nullableHeating as listed.
coolingstring · nullableCooling as listed.
parkingstring · nullableParking as listed, e.g. "2 Attached Garage spaces".
hoastring · nullableHOA dues as listed, when stated.
highlightsstring[] · nullableShort highlights Zillow extracts from the listing.
open_housesobject[] · nullableScheduled open houses: start, end.
virtual_tour_urlstring · nullable3D home tour URL.
is_showcasebooleanTrue for a Zillow Showcase listing.
imagestring · nullableMain photo URL.

Integration

One POST, typed rows

Base URL https://api.quanticdata.io/v1, Bearer auth, the same key as every other Data API. Endpoint: POST /v1/scraper/collectors/zillow_property/run.

curl -X POST https://api.quanticdata.io/v1/scraper/collectors/zillow_property/run \
  -H "Authorization: Bearer $QD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"properties":["29423772"],"max_results":1}'

Example response

POST /v1/scraper/collectors/zillow_property/run
$ curl $QD/zillow_property/run \
    -H "Authorization: Bearer $QD_API_KEY" \
    -d '{"properties": ["29423772"], "max_results": 1}'
{ "status": "done", "count": 1,
  "results": [
    {
      "zpid": "…",
      "url": "…",
      "address": "…",
      "city": "…" } ],
  "cost": 0.005 }
# 1 property × $0.005 · nothing delivered, nothing charged

Try it

Zillow property details, running now

Change the input and run it against the live collector — nothing to install, no sign-up.

Run it from your own code, on your own inputs

Same collector, same rows — $2 of free API credit every month, no card.

Get my free API key
Zillow Property API: from properties, QuanticData reads the Zillow property page and returns one row per property with mls_name, zpid and address, at $0.005 per delivered property.
You send properties and max_results; the run goes out through a residential exit and comes back as properties with zpid, address and city — 54 fields on every row — and you are billed $0.005 for each property actually delivered, nothing for a run that delivers none.
$0.005 / property400 properties on the free $2 every month
Semantic inputproperties, max_results — no URL lists
Up to 20properties per run, pagination handled for you
No browserread over HTTP/TLS — cheaper and faster than rendering

Pricing

Zillow Property API pricing

$0.005 per delivered property. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 400 properties before you spend anything.

$0.005per delivered property$5 per 1,000 delivered properties
400 propertieson the free allowance$2 every month, no card
Zero rowszero chargeblocks, captchas and retries are on us
−30%on volume tiersthe catalog returns your key's price

Same wallet, same key and same $2 monthly allowance as every other Data API. Prices are launch pricing read live from the billing config — GET /v1/scraper/collectors returns the price your key actually pays.

What people build with the Zillow property API

Three shapes of work this endpoint was designed around.

Comp dossiers

Resolve zpids from a Zillow search into full records with price history and last-sold data for a comp set.

Valuation inputs

Feed beds, baths, living area, year built and coordinates into your own model instead of a single estimate.

Listing archives

Snapshot description, status, brokerage and photos for a watchlist of properties over time.

Zillow Property API versus rolling your own

The differences that actually cost time when you build this in-house.

DIY scraperThis collector
CoverageOne field row from searchThe full home-details record
ZestimatePresented as a factOnly when Zillow renders it, else null
UnitsA bare numberLiving area and lot size each with their unit

What people search for

Live autocomplete demand around Zillow property details, pulled with our own Keyword ideas collector.

Zillow Property API: the POST to the zillow_property collector, 1 property delivered and the bill, 1 × $0.005 = $0.005 in usage.cost_usd; zero properties would cost $0.
The same call you would paste into a terminal: a Bearer key, properties in the body, and back the envelope every QuanticData endpoint returns — type, message, payload — where count is how many properties arrived and usage.cost_usd is $0.005, which is 1 × $0.005. A run that delivers nothing costs nothing. The key is good for 60 req/min on the free tier.

Sources and standards

The platform documentation and standards this collector is built against — check any claim on this page against the primary source:

FAQ

Questions we get about the Zillow property API.

Something else? Ask us

What do I pass — a zpid or a URL?

Either a Zillow property id or a full /homedetails/ URL; the collector reads the zpid from the URL. The Zillow search collector returns both, so its rows feed straight into this one.

Is the Zestimate always included?

Only when Zillow server-renders it on the page. When it does, zestimate and rent_zestimate are filled with Zillow's own numbers; when it does not, they stay null rather than being estimated on our side.

Do I get the full price history?

You get the recent price events the page publishes as price_history — each with its date, price and event type — along with the discrete last_sold_price and date_sold fields.

Is there a free Zillow property API?

Every account gets $2 of credit every month with no card, which is about 400 delivered properties on this endpoint at $0.005 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.

How much does one run cost?

Multiply the rows you actually receive by $0.005. A run capped at 20 properties — the maximum for this collector — costs $0.1 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and GET /v1/scraper/collectors returns the price your key actually pays.

Run the Zillow property API now

$2 of free credit every month, no card. Your key returns its own prices from GET /v1/scraper/collectors.

Run in dashboard
Illustration: three coloured zones of the page that is read (Zillow property page) turn into clean JSON with the fields mls_name, zpid and address; 54 fields on every row.