Catalog / Zillow

Zillow API

zillow.com

Live read-only access to Zillow public home-sale, rental, recently sold, property-detail, and Zestimate data. Results are fetched from Zillow on demand; Zillow's current public HTML may expose an empty mapResults collection, which is preserved rather than synthesized.

  • Real estate
  • zillow
  • real-estate
  • homes
  • property
5 endpointsDocs updated

Endpoint health

Loading verification…

Connect your agent

Connect through MCP so your agent can find this API, read its docs, and call its endpoints.

Setup guide

Add the server from your terminal.

Claude Code · terminal
claude mcp add --transport http agent-data https://agent-data.motie.dev/mcp

In Claude Code, run /mcp, select agent-data, then Authenticate. Sign in to your agent-data account in the browser.

Then ask your agent to use the Zillow API for your task.

Call it over HTTP

Get an API key

Sign up free, generate an API key, and set it as AGENT_DATA_API_KEY in your environment. Your first 100 calls each month are free.

Search Zillow sale listings by city/state, ZIP code, or neighborhood.

Zillow location such as Seattle-WA or 98101.

Optional parameters 1

Result page from 1 through 20.

View call pricing
cURL · Homes for sale
curl --request GET --get 'https://api.agent-data.dev/zillow-com/v1/homes-for-sale' \
  --header "Authorization: Bearer $AGENT_DATA_API_KEY" \
  --data-urlencode 'location=Seattle-WA'

Endpoints

Inputs and response fields for every endpoint in this API.

GETHomes for sale/v1/homes-for-sale

Search Zillow sale listings by city/state, ZIP code, or neighborhood.

Input

locationRequiredQuery · string

Zillow location such as Seattle-WA or 98101.

Example: Seattle-WA

pageOptionalQuery · integer, min: 1, max: 20, default: 1

Result page from 1 through 20.

Example: 1

Response

listingsobject[]
listings[].area?integer | number | null
listings[].beds?integer | number | null
listings[].zpidstring
listings[].baths?integer | number | null
listings[].price?integer | number | string | null
listings[].addressstring
listings[].hdpDataobject
listings[].detailUrlstring
listings[].zestimate?integer | number | null
mapResultsobject[]
totalPagesinteger
currentPageinteger
regionStateobject
resultsPerPageinteger
totalResultCountinteger

Fields marked ? are optional.

GETHomes for rent/v1/homes-for-rent

Search Zillow rental properties by city/state, ZIP code, or neighborhood.

Input

locationRequiredQuery · string

Zillow location such as Seattle-WA or 98101.

Example: Seattle-WA

pageOptionalQuery · integer, min: 1, max: 20, default: 1

Result page from 1 through 20.

Example: 1

Response

listingsobject[]
listings[].unitsobject[]
listings[].addressstring
listings[].priceRangesobject[]
listings[].availability?integer | string | null
listings[].buildingNamestring
mapResultsobject[]
totalPagesinteger
currentPageinteger
regionStateobject
resultsPerPageinteger
totalResultCountinteger

Fields marked ? are optional.

GETHomes recently sold/v1/homes-recently-sold

Search Zillow recently sold properties by city/state, ZIP code, or neighborhood.

Input

locationRequiredQuery · string

Zillow location such as Seattle-WA or 98101.

Example: Seattle-WA

pageOptionalQuery · integer, min: 1, max: 20, default: 1

Result page from 1 through 20.

Example: 1

Response

listingsobject[]
listings[].beds?integer | number | null
listings[].zpidstring
listings[].baths?integer | number | null
listings[].addressstring
listings[].dateSold?integer | string | null
listings[].soldPrice?integer | number | string | null
listings[].zestimate?integer | number | null
mapResultsobject[]
totalPagesinteger
currentPageinteger
regionStateobject
resultsPerPageinteger
totalResultCountinteger

Fields marked ? are optional.

GETProperties by zpid/v1/properties/{zpid}

Retrieve Zillow public property details by zpid.

Input

zpidRequiredPath · string

Numeric Zillow property ID.

Example: 48711478

Response

zpidstring
price?integer | number | string | null
county?string | null
addressstring
bedrooms?integer | number | null
homeTypestring
latitude?number | null
bathrooms?integer | number | null
longitude?number | null
resoFactsobject
yearBuilt?integer | null
zestimate?integer | number | null

Fields marked ? are optional.

GETProperties by zpid zestimate/v1/properties/{zpid}/zestimate

Retrieve Zillow Zestimate and rent Zestimate values by zpid. Percent fields are null when Zillow's public property payload does not publish them.

Input

zpidRequiredPath · string

Numeric Zillow property ID.

Example: 48711478

Response

zpidstring
addressstring
homeTypestring
zestimate?integer | number | null
rentZestimate?integer | number | null
zestimateLowPercent?number | integer | string | null
zestimateHighPercent?number | integer | string | null

Fields marked ? are optional.

Don’t see the endpoint you need?

Ask agent-data to add an endpoint or return more fields. Extensions are free and keep existing endpoints working.