API Redfin data

Redfin API. Homes, sold prices and estimates as JSON.

Search Redfin homes for sale, sold homes and rentals by ZIP, city, county or map area. Look up any home's facts, price and tax history and Redfin Estimate.

100 free credits · No credit card required · No Redfin login

GET /v1/redfin/sold
curl -G https://api.realtycrawl.com/v1/redfin/sold \  -H "Authorization: Bearer $REALTYCRAWL_KEY" \  -d zip=80221 \  -d sold_within_days=90
result.summaryExample data
{  "priced_count": 1,  "disclosed_count": 1,  "median_sale_price": 361500,  "p25": 361500,  "p75": 361500,  "median_price_per_sqft": 372,  "earliest_sold_date": "2026-07-30",  "latest_sold_date": "2026-07-30"}
What you get

Redfin data, as typed JSON.

Every source returns the same core fields, so code you write here works for our other sources too. Fields only Redfin has go in extras.

For sale, sold and for rent

Every home Redfin shows in an area, up to 100 a page, with price, beds, baths, size, type and location.

Sold prices with dates

Sale price, sale date and how the price is known. Null with a reason in non-disclosure states.

Property and tax history

One home's facts, listing agent, last sale, county tax record and full price history, sold and off-market homes included.

Redfin Estimate

Redfin's sale and rent estimates for a home, passed through and labeled as Redfin's.

Sold comps

The recent sales most like one home, ranked by similarity, with an indicated value. Outliers are flagged and left out.

Cities and counties

Search a whole city or county by name. We match it to its official boundary, so results stay inside it.

Routes

The Redfin routes. Credits per call.

Each route is also a tool on our hosted MCP server, for Claude, Cursor and VS Code.

RouteCreditsWhat it returns
GET /v1/redfin/listings1Homes for sale on Redfin in a ZIP code, city, county or map area, one page of up to 100 at a time. Page with `next_cursor`. A cache miss returns 202 and a job to poll.
GET /v1/redfin/sold1Homes sold on Redfin in a ZIP code, city, county or map area, with sale price, sale date and how the price is known. Prices hidden in non-disclosure states come back null. Page with `next_cursor`.
GET /v1/redfin/rentals1Homes and apartment buildings for rent on Redfin in a ZIP code, city, county or map area. A building is one row with its lowest rent, and its highest in `extras.rent_max`.
GET /v1/redfin/property2Facts about one home on Redfin: size, type, year built, listing agent, last sale, county tax record, and the full price and tax history, including for sold and off-market homes. By `address`, Redfin finds only homes listed now or sold in the last 5 years; for any other home send its Redfin `url` or `source_id`.
GET /v1/redfin/estimate1Redfin's sale estimate and rent estimate for one home, labeled as Redfin's. We pass them through; we do not make our own. By `address`, Redfin finds only homes listed now or sold in the last 5 years; for any other home send its Redfin `url` or `source_id`.
GET /v1/redfin/comps2Recent sales most like one home: nearby, similar in size, beds and baths, and recent, ranked by similarity. `summary` gives the median sale price and price per sqft over the comps, and an indicated value for the home. Sales far off the comps' price per sqft are flagged and left out of the maths. By `address`, Redfin finds only homes listed now or sold in the last 5 years; for any other home send its Redfin `url` or `source_id`.

Building with ChatGPT? Paste this.

One prompt gives your assistant the endpoint, the sign-in header and how to wait for a result, so its first script works.

Prompt for ChatGPT, Claude or Cursor
I'm building with the RealtyCrawl API. It returns real-estate data from Redfin as typed JSON: homes for sale, sold homes, rentals, property history, estimates and comps.

Read the docs first: https://realtycrawl.com/llms.txt
OpenAPI spec: https://realtycrawl.com/openapi.json

Rules for the code you write:
- Base URL: https://api.realtycrawl.com/v1
- Auth: send the header "Authorization: Bearer <key>". Read the key from the REALTYCRAWL_KEY environment variable. Never put it in browser code.
- Redfin sold homes: GET /redfin/sold?zip=<5-digit ZIP>&sold_within_days=90. You can send city and state, or county and state, instead of zip.
- A call often answers 202 with status "pending" and a poll_url. Poll GET /jobs/<request_id>?wait=20 with the same header until status is "complete" or "failed".
- The rows are in result.data, each with address, sale_price, sold_date, sale_price_disclosure and source_url. sale_price is null when the price isn't public; result.field_notes says why. Never replace a null with a guess.
- result.summary has median_sale_price and median_price_per_sqft. For the next page, send result.next_cursor as cursor.
- A search costs 1 credit; property details and comps cost 2. A free account starts with 100 credits that do not refill, so save results while testing instead of repeating a call.

Start with a short script that prints the median sale price for ZIP "78704". Then ask me what I want to build.
Paste it in, add your key as REALTYCRAWL_KEY, and it writes working code.Open in ChatGPT Open in Claude
FAQ

Common questions

Something else? Email support@realtycrawl.com and a person will reply.

Not for listings. Redfin publishes market-level downloads in its Data Center, such as median sale price by ZIP code, but no API for homes for sale or sold homes.

RealtyCrawl returns Redfin's homes for sale, sold homes, rentals and property history as JSON. We aren't affiliated with Redfin.

By ZIP code, city, county, map box, or a point and radius. Filter by price, beds, baths, size, year built and property type, and page through with next_cursor.

Yes, for homes for sale or sold in the last 5 years: Redfin's search only shows those. For any other home, send its Redfin URL or property ID. An address that isn't found or matches several homes isn't charged.

Yes, with the sale date and how the price is known. In non-disclosure states the price can be null with a field_notes reason, never a guess.

Start with 100 free credits, no credit card required. Plans start at $9 a month for 1,000 credits. Most calls cost 1 credit; property and comps cost 2.

Calls that fail, and addresses that aren't found, are free.

Get Redfin sold homes in about two minutes.

Create a free account, make a key, and send your first request. Start with 100 free credits. No credit card required.