Redfin 'For Rent' Listings API (Async)

This endpoint will retrieve listing information from a single 'For Rent' property listing page and transform it into usable JSON.

Single Query Request:

import requests

url = "https://async.scraperapi.com/structured/redfin/forrent"
headers = {
    "Content-Type": "application/json"
}
data = {
    "apiKey": APIKEY,
    "url": URL,
    "country_code": COUNTRY_CODE,
    "tld": TLD,
    "raw": RAW,
    "callback": {
        "type": "webhook",
        "url": "YYYY"
    }
}

response = requests.post(url, json=data, headers=headers)
print(response.text)

Multiple Query Request:

import requests

url = "https://async.scraperapi.com/structured/redfin/forrent"
headers = {
    "Content-Type": "application/json"
}
data = {
    "apiKey": APIKEY,
    "urls": [URL1,URL2],
    "country_code": COUNTRY_CODE,
    "tld": TLD,
    "raw": RAW,
    "callback": {
        "type": "webhook",
        "url": "YYYY"
    }
}

response = requests.post(url, json=data, headers=headers)
print(response.text)

Parameters
Details

API_KEY (required)

User's API Key.

URL (required)

The URL of the Redfin page. The URL has to be the URL of a property for rent.

country_code

Allows you to geotarget the request. Use this parameter if you want Redfin to be scraped from a specific country.

TLD

The top level domain to scrape.

Valid options:

com’ (for redfin.com)

ca’ (for redfin.ca)

raw

This is a boolean param - true or false

If the raw parameter is set to true, the raw data will be extracted from the page without further parsing.

Important: The structure of the data in raw mode cannot be guaranteed, it’s a tradeoff: You get a lot more information back, but the structure of the response may change if Redfin modifies their page layout.

Sample Response

For single query requests:

{
  "id": "aa65d866-b53f-4488-9cbe-2bee29d6f65c",
  "status": "running",
  "statusUrl": "https://async.scraperapi.com/jobs/aa65d866-b53f-4488-9cbe-2bee29d6f65c",
  "url": "https://www.redfin.com/MD/Baltimore/2803-Fait-Ave-21224/home/10736273",
}

For multiple query requests:

[
  {
    "id": "6d282e78-4d1a-46cb-838f-cc59e592774f",
    "attempts": 0,
    "status": "running",
    "statusUrl": "https://async.scraperapi.com/jobs/6d282e78-4d1a-46cb-838f-cc59e592774f",
    "url": "https://www.redfin.com/MD/Baltimore/2803-Fait-Ave-21224/home/10736273"
  },
  {
    "id": "d59ed100-6213-4097-afe5-6488ec5dda12",
    "attempts": 0,
    "status": "running",
    "statusUrl": "https://async.scraperapi.com/jobs/d59ed100-6213-4097-afe5-6488ec5dda12",
    "url": "https://www.redfin.com/MD/Baltimore/2803-Fait-Ave-21224/home/10736273"
  }
]

After the job(s) finish, you will find the result under the response key in the response JSON object. The structure is the same as in the corresponding SYNC data endpoint.

Last updated

Was this helpful?