Zillow API Python Client

Extract Zillow data with our Zillow API Python client. Get programmatic access to property prices, zestimate values, full addresses, ZPID numbers, bedrooms and bathrooms, and more using simple Python code. Start free, no credit card required.

Trusted by industry leaders all over the world

Integrate our Zillow API

The Apify API client for Python is the official library that allows you to use Zillow API in Python, providing convenience functions and automatic retries on errors. Get started with simple pip installation and robust error handling built-in.

Python

Python

JavaScript

JavaScript

HTTP

HTTP

MCP

MCP

1from apify_client import ApifyClient
2
3# Initialize the ApifyClient with your Apify API token
4# Replace '<YOUR_API_TOKEN>' with your token.
5client = ApifyClient("<YOUR_API_TOKEN>")
6
7# Prepare the Actor input
8run_input = { "searchUrls": [{ "url": "https://www.zillow.com/homes/for_sale/?searchQueryState=%7B%22isMapVisible%22%3Atrue%2C%22mapBounds%22%3A%7B%22west%22%3A-124.61572460426518%2C%22east%22%3A-120.37225536598393%2C%22south%22%3A36.71199595991113%2C%22north%22%3A38.74934086729303%7D%2C%22filterState%22%3A%7B%22sort%22%3A%7B%22value%22%3A%22days%22%7D%2C%22ah%22%3A%7B%22value%22%3Atrue%7D%7D%2C%22isListVisible%22%3Atrue%2C%22customRegionId%22%3A%227d43965436X1-CRmxlqyi837u11_1fi65c%22%7D" }] }
9
10# Run the Actor and wait for it to finish
11run = client.actor("maxcopell/zillow-scraper").call(run_input=run_input)
12
13# Fetch and print Actor results from the run's dataset (if there are any)
14print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
15for item in client.dataset(run["defaultDatasetId"]).iterate_items():
16 print(item)
17
18# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

Get data with Zillow API Python client

Use our Python API client to extract Zillow real estate data by providing search URLs from Zillow.com with specific filters applied. The API returns structured data, including full addresses, prices, bedrooms, bathrooms, zestimate values, ZPID numbers, photos, broker information, and coordinates in JSON format.

Input

{
"searchUrls": [
{
"url": "<https://www.zillow.com/homes/for_sale/?searchQueryState=%7B%22isMapVisible%22%3Atrue%2C%22mapBounds%22%3A%7B%22west%22%3A-124.61572460426518%2C%22east%22%3A-120.37225536598393%2C%22south%22%3A36.71199595991113%2C%22north%22%3A38.74934086729303%7D%2C%22filterState%22%3A%7B%22sort%22%3A%7B%22value%22%3A%22days%22%7D%2C%22ah%22%3A%7B%22value%22%3Atrue%7D%7D%2C%22isListVisible%22%3Atrue%2C%22customRegionId%22%3A%227d43965436X1-CRmxlqyi837u11_1fi65c%22%7D>"
}
],
"extractionMethod": "PAGINATION_WITH_ZOOM_IN"
}

Output

{
"_fromStrapi": true,
"id": "2064142765",
"area": 1280,
"beds": 2,
"list": true,
"zpid": "2064142765",
"baths": 2,
"pgapt": "ForSale",
"price": "$995,000",
"sgapt": "For Sale (Broker)",
"imgSrc": "<https://photos.zillowstatic.com/fp/33578db80c877648aba386c3aa28e042-p_e.jpg>",
"address": "130 Water St APT 12D, New York, NY 10005",
"hdpData": {
"homeInfo": {
"city": "New York",
"unit": "Apt 12D",
"zpid": 2064142765,
"price": 995000,
"state": "NY",
"country": "USA",
"zipcode": "10005",
"bedrooms": 2,
"currency": "USD",
"homeType": "CONDO",
"latitude": 40.7057,
"bathrooms": 2,
"longitude": -74.0073,
"homeStatus": "FOR_SALE",
"isFeatured": false,
"livingArea": 1280,
"priceForHDP": 995000,
"daysOnZillow": -1,
"isUnmappable": false,
"isZillowOwned": false,
"rentZestimate": 4470,
"streetAddress": "130 Water St APT 12D",
"shouldHighlight": false,
"homeStatusForHDP": "FOR_SALE",
"isPremierBuilder": false,
"listing_sub_type": {
"is_FSBA": true
},
"isNonOwnerOccupied": true,
"isPreforeclosureAuction": false
}
},
"isSaved": false,
"latLong": {
"latitude": 40.7057,
"longitude": -74.0073
},
"relaxed": false,
"hasImage": true,
"hasVideo": false,
"badgeInfo": null,
"detailUrl": "<https://www.zillow.com/homedetails/130-Water-St-APT-12D-New-York-NY-10005/2064142765_zpid/>",
"isHomeRec": false,
"zestimate": null,
"brokerName": "Listing by: SERHANT.",
"has3DModel": false,
"statusText": "Condo for sale",
"statusType": "FOR_SALE",
"addressCity": "New York",
"addressState": "NY",
"variableData": {
"text": "38 days on Zillow",
"type": "DAYS_ON"
},
"addressStreet": "130 Water St APT 12D",
"isZillowOwned": false,
"addressZipcode": "10005",
"countryCurrency": "$",
"availabilityDate": null,
"unformattedPrice": 995000,
"isFeaturedListing": false,
"isShowcaseListing": false,
"providerListingId": "1648702",
"isUserClaimingOwner": false,
"isUndisclosedAddress": false,
"isUserConfirmedClaim": false,
"hasAdditionalAttributions": true,
"shouldShowZestimateAsPrice": false
}

How to use Zillow API

Sign up for Apify account01

Creating an account is quick and free — no credit card required. Your account gives you access to more than 5,000 scrapers and APIs.

Get started for free
Install Apify Python client02

Install the Apify Python client using pip: pip install apify-client. This package provides a simple interface to interact with Zillow API from your Python applications.

Get your Apify API token03

Go to settings in the Apify console and navigate to the “API & Integrations” tab. There, create a new token and save it for later.

Integrate Zillow API04

Navigate to the Zillow API page and click on the API dropdown menu in the top right corner. In the dropdown menu, you can see API clients, API endpoints, and more. Use the provided Python code examples to integrate Zillow API into your Python application.

Open Zillow Python API
Get your Zillow data via API05

The Zillow API returns structured JSON data that works perfectly with pandas, NumPy, and other Python data analysis libraries.

Why use Apify?

Never get blocked

Every plan (free included) comes with Apify Proxy, which is great for avoiding blocking and giving you access to geo-specific content.

Customers love us

We truly care about the satisfaction of our users and thanks to that we're one of the best-rated data extraction platforms on both G2 and Capterra.

Monitor your runs

With our latest monitoring features, you always have immediate access to valuable insights on the status of your web scraping tasks.

Export to various formats

Your datasets can be exported to any format that suits your data workflow, including Excel, CSV, JSON, XML, HTML table, JSONL, and RSS.

Integrate Apify to your workflow

You can integrate your Apify runs with platforms such as Zapier, Make, Keboola, Google Drive, or GitHub. Connect with practically any cloud service or web app.

Large developer community

Apify is built by developers, so you'll be in good hands if you have any technical questions. Our Discord server is always here to help!

Frequently asked questions

No, Zillow does not provide an official Python API client. While Zillow offers several APIs including Zillow Property Details API and Zillow Neighborhood Data API, these are REST APIs that require you to build your own Python client implementation. These APIs require API keys, have usage limitations, and may involve costs for high-volume use. Many users opt for web scraping tools like this Zillow Search Scraper as an alternative to overcome these limitations and access more comprehensive data.

Yes, you can try the Zillow Search Scraper Python API client for free. Apify provides $5 in free usage credits every month on the Free plan, which allows you to scrape up to 2,500 Zillow results for free using the Python API client. The scraper uses a pay-per-result pricing model at $2 per 1,000 search results ($0.002 per item).

You can extract comprehensive property data using a Python API client including full addresses, prices, bedrooms and bathrooms, area size, longitude and latitude coordinates, date posted, time on Zillow, photos, broker names, home type and status, lot size, ZPID numbers, zestimate values, rent zestimate, and featured listing status. The Python API client can extract data from for sale, sold, and for rent properties.

Getting started with our Zillow Python API is easy — simply create a free Apify account, get your API token, and start using the Zillow API in Python, JavaScript, CLI, cURL, OpenAPI, or MCP.

Get started with Zillow API Python client today

Get your first Zillow data in Python in less than 5 minutes. No credit card required. No commitment. Cancel anytime.