Zillow Scraper API
from listings to tax records in one request
Search Zillow.com listings by city, ZIP, or neighborhood, or pull a full property record by URL. One request returns prices, estimated values, price history, and tax records as clean JSON. We run the browsers and infrastructure.
of requests succeed
median response
95% finish faster
per 1k requests at volume
Zillow.com changes weekly. Your code shouldn't care.
- A parser per page layout
- Headless browsers to keep warm
- Nulls when the markup drifts
- Price history buried in nested JSON
- Fix the pipeline again next week
One GET Request. That's the whole integration.
Start with just a query. Add more parameters when your use case needs them.
curl -G 'https://api.hasdata.com/scrape/zillow/listing' \
--data-urlencode 'keyword=New York, NY' \
--data-urlencode 'type=forSale' \
--header 'x-api-key: <YOUR_API_KEY>' \
--header 'Content-Type: application/json'keyword * Locationtype * Listing Typesort Sort Byprice[min] Price Minprice[max] Price MaxhomeTypes[] Home Typesbeds[min] Beds Minbeds[max] Beds Maxbaths[min] Baths Minbaths[max] Baths MaxyearBuilt[min] Year Built MinyearBuilt[max] Year Built MaxlotSize[min] Lot Size MinlotSize[max] Lot Size MaxsquareFeet[min] Square Feet MinsquareFeet[max] Square Feet MaxlistingType Listing CategorylistingPublishOptions[] Listing Publish OptionspropertyStatus[] Property Statustours[] ToursotherAmenities[] Other Amenitiesviews[] Viewspets[] petsbasement[] BasementsingleStoryOnly Single Story Onlyhide55plusCommunities Hide 55+ CommunitiesdaysOnZillow Days on ZillowmoveInDate Move In Datehoa HOAmustHaveGarage Must Have GarageparkingSpotsMin Parking Spots Minkeywords Additional Keywordspage Page Numbercurl -G 'https://api.hasdata.com/scrape/zillow/property' \
--data-urlencode 'url=https://www.zillow.com/homedetails/301-E-79th-St-APT-23S-New-York-NY-10075/31543731_zpid/' \
--header 'x-api-key: <YOUR_API_KEY>' \
--header 'Content-Type: application/json'url * Property URLextractAgentEmails Extract Agent EmailsEvery listing, one predictable schema
The same keys come back on every request. Map the fields once and forget about it.
[
{
"id": "80105761",
"url": "https://www.zillow.com/homedetails/16323-Lake-Loop-Austin-TX-78734/80105761_zpid/",
"homeType": "SINGLE_FAMILY",
"status": "FOR_SALE",
"price": 1695000,
"currency": "$",
"estimatedValue": 1639100,
"estimatedRent": 3750,
"daysOnZillow": 0,
"area": 4293,
"lotAreaValue": 0.43179999999999996,
"lotAreaUnits": "acres",
"addressRaw": "16323 Lake Loop, Austin, TX 78734"
}
]price numberListing price
estimatedValue numberEstimated market value
estimatedRent numberEstimated monthly rent
homeType stringSINGLE_FAMILY, CONDO, …
status stringMarket status
daysOnZillow numberDays since listed
area numberInterior area, sq ft
lotAreaValue / lotAreaUnits number / stringLot size
addressRaw stringStreet address
url stringProperty page URL for the property endpoint
{
"beds": 5,
"baths": 6,
"area": {
"livingAreaRaw": "4,293 sqft",
"livingArea": 4293,
"livingAreaUnits": "Square Feet",
"livingAreaUnitsShort": "sqft",
"lotSizeRaw": "0.43 Acres",
"lotSize": 18809,
"lotAreaValue": 0.43179999999999996,
"lotAreaUnits": "Acres"
},
"yearBuilt": 2018,
"homeType": "SINGLE_FAMILY",
"price": 1695000,
"valuation": {
"estimatedValue": 1639100,
"estimatedRent": 3750,
"lowPercent": 5,
"highPercent": 5,
"estimatedRentUrl": "https://www.zillow.com/rental-manager/price-my-rental/results/16323-Lake-Loop_-Austin-78734/"
},
"mlsId": "8881037",
"address": {
"street": "16323 Lake Loop",
"county": "Travis County",
"subdivision": "Buffalo Gap"
},
"agentInfo": {
"agentName": "Blake Wilder",
"agentPhoneNumber": "(512) 593-0013",
"brokerName": "Wilder Realty LLC",
"brokerPhoneNumber": "(512) 593-0013"
},
"datePosted": "2026-07-24",
"description": "Experience the best of Lake Travis living from this exceptional waterfront retreat overlooking Sail & Ski Yacht Club Marina."
}beds / baths numberBedrooms and bathrooms
yearBuilt numberConstruction year
mlsId stringMLS listing ID
address objectStreet, county, FIPS, subdivision
geo objectLatitude and longitude
agentInfo objectAgent and broker contacts
description stringFull listing description
datePosted stringListing date
[
{
"date": "2026-07-24",
"price": 1695000,
"priceChangeRate": -0.0029411764705882353,
"event": "listedForSale",
"source": "Unlock MLS"
}
]date stringEvent date
price numberPrice at the event
priceChangeRate numberRelative change
event stringlistedForSale, priceChange, sold, …
source stringMLS source
[
{
"time": 1753345866368,
"taxPaid": null,
"value": 1409659,
"valueIncreaseRate": -0.19469915
}
]time numberAssessment timestamp
taxPaid numberTax paid that year
value numberAssessed value
valueIncreaseRate numberYear-over-year change
An all-in-one scraping service
Every feature you need to collect Zillow.com data from thousands to millions of requests.
Real numbers from teams
running HasData APIs
in their data pipelines.
View All Use-Cases ->Automated property status tracking for a real estate lender
Automated property status tracking for a real estate lender with HasData’s Zillow Scraper API
Email enrichment via Google SERP API
Enrichment of lead-generation datasets with verified emails from Google SERP, achieving 4x coverage compared to Hunter and Clearbit
Fits right into your stack.
Works with the tools you already use.
View Documentation ->Discover similar
scrapers and APIs
to expand your projects.
Redfin Scraper API
Real Estate Listings • $0.37 / 1k Request
Zillow Scraper
Real Estate Listings • $0.75 / 1k Rows
Teams that deleted their scraper
Now it's the part of the pipeline they don't think about
The Zillow API from HasData has been a dependable resource for our real estate projects. It delivers property details, prices, and market trends quickly and with great accuracy.
Their infrastructure simply worked out of the box with very little maintenance from our side.
HasData delivers exactly what we need: speed and comprehensive search features. It's the fastest API we've used in this space. Plus, their customer support is fantastic.
We rely on HasData for search performance data and broader scraping needs. Their APIs deliver highly structured data that integrates directly into our platforms.
Great web scraping API which is incredibly easy to use. It requires minimal effort to get up and running, and the documentation is very clear and helpful.
Plans that get cheaper at scale
Fixed price, fixed volume, no surprises at the end of the month. Upgrade when you need more.
Free
Startup
Business
RecommendedEnterprise
Monthly request volume
Start with 200 free requests. No credit card required.
Questions, answered
Per successful request. One search request returns a full results page, 40+ listings included. A failed request costs nothing.
Yes, a one-time trial of 200 requests with every field included. No credit card required. When you're done testing, pick a plan that fits your volume.
Paid plans start at $49 per month for 40,000 requests and scale to 20 million a month. The unit price drops with volume, from $1.23 down to $0.37 per 1,000 requests.
Zillow's data programs are aimed at MLS members and enterprise partners. HasData works with publicly available pages instead. No agreements, no OAuth, just an API key.
Prices, estimated values, home types, days on market, lot sizes, addresses, and pagination for the next page.
Yes. Pass a property URL to the property endpoint: it returns the full price history with events and sources, plus year-by-year tax records.
Set keyword to a city, ZIP, or neighborhood, and type to forSale to pick the market segment.
Nothing on your side. We track the changes and keep the response schema stable. Fields keep their names and types, and existing keys don't disappear.
Yes, you can cancel your subscription at any time from your dashboard in a few seconds. Once cancelled, there are no recurring payments.
Your first Zillow listing
is minutes away
200 requests free · no credit card