SoonOne MCP server, all 49 APIs as agent tools. See how it works

Scrape any property listing as clean JSON

Zillow Real Estate API

The Zillow Real Estate API turns any public Zillow listing into structured JSON with a single GET request. Price, Zestimate, beds, baths, square footage, lot size, year built, listing status, days on market, price history and agent info, scraped live with no partner agreement, MLS access or proxies on your side.

Zillow retired its public GetSearchResults API years ago, and official data access now runs through restrictive partner programs. This Zillow scraper API works on any public listing URL: pass it with your key and get the live property record back. Most requests complete synchronously in 5-45 seconds.

Free tier included, no credit card required. One key works across all 49 APIs.

At a glance
Endpoints
2
Response Time
5-45s
Data Freshness
Live

Key features

  • Any public listing, no partner agreement or MLS feed
  • Live scraping on every request, prices are never stale
  • Price, Zestimate, beds, baths, sqft, lot size, year built
  • Listing status, days on market and price history
  • Agent and brokerage info where published
  • fields= selection to trim responses to just what you need
  • Enterprise scraping infrastructure handles blocks on our side

Built for

  • Investment deal-flow screening tools
  • Comparable-sales (comps) analysis engines
  • Portfolio and price-drop monitoring
  • Lead enrichment for agents and lenders
  • Housing market research datasets

Try it

Build the request for your data

Edit the parameters below and see the exact curl command and JSON response you will get. No key required to preview.

GET/v1/property
Open in Playground

Parameters

Request · HTTP
GET /zillow/v1/property?url=https%3A%2F%2Fwww.zillow.com%2Fhomedetails%2F301-Mission-St-San-Francisco-CA-94105%2F2078507852_zpid%2F HTTP/1.1
Host: api.apicodex.io
Host: api.apicodex.io
X-Api-Key: YOUR_API_KEY
Response · JSON
200 OK
{
  "type": "property",
  "url": "https://www.zillow.com/homedetails/301-Mission-St-San-Francisco-CA-94105/2078507852_zpid/",
  "data": {
    "address": "301 Mission St UNIT 45D, San Francisco, CA 94105",
    "status": "For Sale",
    "price": 1495000,
    "zestimate": 1512300,
    "beds": 2,
    "baths": 2,
    "sqft": 1421,
    "year_built": 2009,
    "days_on_zillow": 18,
    "price_per_sqft": 1052,
    "hoa_fee": "$1,420/mo"
  }
}

Documentation

Zillow Real Estate API Documentation

Pass a Zillow listing URL and get a complete, structured JSON property record back in a single request. All endpoints are GET, and fields= lets you keep only the top-level fields you need. If a scrape exceeds the sync window you get HTTP 202 with a snapshot_id to resolve via /v1/result.

Base URL

url
https://api.apicodex.io/zillow

Authentication

Create a key at dash.apicodex.io and send it as an X-Api-Key header (or an ?apikey= query parameter) on every request. No Zillow account or partner credential is ever involved.

headers
GET /v1/property?url=https://www.zillow.com/homedetails/301-Mission-St-San-Francisco-CA-94105/2078507852_zpid/
X-Api-Key: YOUR_API_KEY

Request and response

Illustrative values. Confirm current endpoint behavior, quotas, and data freshness in the API documentation before production use.

request · http
GET /v1/property?url=https://www.zillow.com/homedetails/301-Mission-St-San-Francisco-CA-94105/2078507852_zpid/ HTTP/1.1
Host: api.apicodex.io
X-Api-Key: YOUR_API_KEY
response · json
{
  "type": "property",
  "url": "https://www.zillow.com/homedetails/301-Mission-St-San-Francisco-CA-94105/2078507852_zpid/",
  "data": {
    "address": "301 Mission St UNIT 45D, San Francisco, CA 94105",
    "status": "For Sale",
    "price": 1495000,
    "zestimate": 1512300,
    "beds": 2,
    "baths": 2,
    "sqft": 1421,
    "year_built": 2009,
    "days_on_zillow": 18,
    "price_per_sqft": 1052,
    "hoa_fee": "$1,420/mo"
  }
}

Code examples

cURL
curl --request GET \
  --url 'https://api.apicodex.io/zillow/v1/property?url=https://www.zillow.com/homedetails/301-Mission-St-San-Francisco-CA-94105/2078507852_zpid/' \
  --header 'X-Api-Key: YOUR_API_KEY'

Available Endpoints

GET /v1/property

Scrape a listing by URL: price, Zestimate, beds, baths, sqft, status, price history, agent info.

/v1/property?url=https://www.zillow.com/homedetails/301-Mission-St-San-Francisco-CA-94105/2078507852_zpid/

GET /v1/result

Fetch a pending result using the snapshot_id from a 202 response.

/v1/result?snapshot_id=s_abc123

Request Parameters

Required parameters

  • url Zillow listing URL to scrape (a /homedetails/... URL). Required on /v1/property.

Optional parameters

  • fields Comma-separated top-level fields to keep, e.g. fields=price,zestimate,beds,baths.
  • snapshot_id /v1/result only: the id returned by a 202 response.

Pricing

Zillow Real Estate API Pricing

One key, one subscription, all 49 APIs. Start free and upgrade when you grow. No minimums, no lock-in.

This API costs 25 credits per request. Credits are shared across every API on your plan.

Estimate your monthly cost

Drag the slider to match your expected request volume. We will recommend the cheapest plan that covers it.

10,000

Recommended plan

Pro

$99.99 /month

Credits used250,000
Credits included250,000
Cost per 1K requests$9.999
Choose Pro

Free

Free
1,000 credits · ~40 requests/mo · 2 rps
  • All 49 APIs included
  • No credit card required
  • Full documentation and examples
Start for free

Starter

Popular
$29.99/month
50,000 credits · ~2,000 requests/mo · 10 rps
  • All 49 APIs included
  • Email support
  • Usage dashboard and analytics
Start with Starter

Pro

$99.99/month
250,000 credits · ~10,000 requests/mo · 25 rps
  • All 49 APIs included
  • Priority support
  • Up to 5 API keys
Start with Pro

Need a different plan?

Tell us about your API, volume, or support requirements.

Contact us

Coming soon · MCP

Use the Zillow Real Estate API from your AI agent

The API Codex MCP server will expose this API, and the other 39, to Claude, Cursor and any MCP client as tools. Same key, same credits, one config entry.

About the MCP server

FAQ

Frequently asked questions

Not for listings. Zillow retired its public GetSearchResults / GetZestimate APIs, and current official access runs through restrictive partner programs aimed at MLS members and large integrators. The Zillow Real Estate API scrapes the public listing page instead: any /homedetails/ URL with your API Codex key returns the live property record as JSON.

The core record includes address, listing status, price, Zestimate, beds, baths, square footage, lot size, year built, days on Zillow, price per sqft, HOA fees, price history and the listing agent or brokerage where published. Use fields= to trim the response to just the fields your pipeline needs.

Every request triggers a live scrape of the listing at that moment, so price changes, status flips (For Sale, Pending, Sold) and Zestimate updates show up immediately rather than after a cache refresh. That is also why responses take 5-45 seconds instead of milliseconds.

If a scrape exceeds the synchronous window, the API returns 202 with a snapshot_id instead of making you wait on an open connection. Poll GET /v1/result?snapshot_id=... until it returns 200 with status "ready" and your data; results are typically ready within 1-2 minutes.

No. All scraping happens on our side through enterprise scraping infrastructure that handles rotation, blocks and captchas. Nothing runs from your IP, you send no cookies, and only publicly visible listing data is returned.