Apartments.com Scraper & API | Rentals & Property Data avatar

Apartments.com Scraper & API | Rentals & Property Data

Pricing

from $5.49 / 1,000 listing pages

Go to Apify Store
Apartments.com Scraper & API | Rentals & Property Data

Apartments.com Scraper & API | Rentals & Property Data

Scrape Apartments.com rental data: rent, beds, baths, sqft, amenities, fees, floor plans, photos, schools, transit, walk score, and reviews. Search any location or paste property URLs. Export JSON, CSV, Excel.

Pricing

from $5.49 / 1,000 listing pages

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Apartments.com Scraper & API

Scrape rental listings and full property details from Apartments.com: rent ranges, beds, baths, square footage, amenities, fees and policies, floor plans, photos, 3D tours, nearby schools, transit and points of interest, Walk Score, and resident reviews. Search any US location or paste property URLs directly.

Search Apartments.com by city, neighborhood, ZIP, or address — or drop in listing and property URLs — and export clean, structured apartment data with rent, amenities, fees, schools, transit, Walk Score, photos, and reviews.

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

Apify Actor: parsebird/apartments-com-scraper - scrapes rental listings and property details from Apartments.com. Call via ApifyClient: client.actor("parsebird/apartments-com-scraper").call(run_input={"search":"Brooklyn, NY","startUrls":["https://www.apartments.com/sobe-apartment-rentals-miami-beach-fl/26xc7jb/"],"maxItems":50,"includeReviews":true,"includeVisuals":true,"includeInteriorAmenities":true,"includeWalkScore":true}). Inputs: search (location keyword: city, neighborhood, ZIP, or street address), startUrls (array of Apartments.com listing/search URLs and/or property detail URLs, can be mixed), maxItems (integer, default 1000), includeReviews (bool, default false), includeVisuals (bool - photos, floor plan images, virtual tours, default false), includeInteriorAmenities (bool, default false), includeWalkScore (bool - Walk/Transit/Bike score, default false). Output fields: id, propertyName, url, lastUpdated, location {fullAddress, streetAddress, city, state, postalCode, neighborhood}, coordinates {latitude, longitude}, rating, ratingValue, ratingCount, rent {min, max, currency}, beds, baths, sqft, transportation[], specials, schools {public, private, collegesUniversities}, fees[], description, amenities[], contact {phone, name, website, leasingOffice}, floorPlanUnits[], score {walkScore, transitScore, bikeScore, driveScore, soundScore}, photos[], floorPlans[], virtualTours[], reviews[]. API docs: https://docs.apify.com/api/v2 Token: https://console.apify.com/settings/integrations

What is Apartments.com Scraper & API?

Apartments.com Scraper & API is an Apartments.com scraper that turns rental listing pages and individual property pages into structured JSON. It collects everything shown on a property page — rent ranges, unit mix, amenities, pet and parking fees, lease options, floor plans, photo galleries, 3D tours, nearby schools, transit stations, Walk Score, and resident reviews.

Use it as an Apartments.com API alternative when you need repeatable exports, scheduled rent monitoring, or integration-ready datasets without browsing the site page by page. You can mix property detail URLs and listing (search) URLs in the same run.

What can Apartments.com Scraper & API do?

  • 🔎 Search any US location by city, neighborhood, ZIP code, or full street address.
  • 🔗 Scrape Apartments.com listing/search URLs and individual property URLs — mixed together in one run.
  • 🎛️ Apply any filters on the Apartments.com website (price, beds, baths, pet policy, amenities), then paste the filtered URL as a start URL.
  • 🏢 Extract rent ranges, beds, baths, square footage, unit-level floor plans, amenities, and fees & policies.
  • 🏫 Pull nearby public and private schools, colleges, transit stations, airports, and points of interest.
  • 🚶 Add Walk Score, Transit Score, and Bike Score per property.
  • ⭐ Collect resident reviews with ratings and dates.
  • 🖼️ Grab full photo galleries, floor plan images, and Matterport 3D tour links.
  • 🗓️ Run on Apify with scheduling, API access, proxy rotation, integrations, and exports to JSON, CSV, and Excel.

What data can you extract from Apartments.com?

FieldDescription
idApartments.com property ID
propertyNameProperty or community name
urlCanonical property URL
lastUpdatedHow recently the listing was refreshed (e.g. "Today", "2 weeks ago")
locationfullAddress, streetAddress, city, state, postalCode, neighborhood
coordinateslatitude and longitude
rating / ratingValue / ratingCountRounded rating, exact average, and number of ratings
rentmin, max, and currency for monthly rent
beds / baths / sqftRange strings as shown on the property (e.g. "Studio - 3 bd")
transportationNearby commuter rail, subway, airports, and POIs with walk/drive time and distance
specialsCurrent move-in specials or concessions text
schoolspublic, private (type, name, grades, students, GreatSchools rating) and collegesUniversities
feesPets, parking, lease options, and property information grouped by policy
descriptionFull property description
amenitiesCommunity amenities, plus interior amenities when enabled
contactPublic leasing phone, property website, and leasingOffice address when shown
floorPlanUnitsPer-unit floor plans with beds, baths, and square footage
scorewalkScore, transitScore, bikeScore, driveScore, soundScore (when enabled)
photos / floorPlans / virtualToursImage gallery, floor plan images, and 3D tour links (when enabled)
reviewsResident reviews with author, title, text, rating, and date (when enabled)

How to scrape Apartments.com

  1. Open Apartments.com Scraper & API on Apify.
  2. Enter a location in search (for example Brooklyn, NY, 78704, or 2424 W Caithness Place, Denver, CO).
  3. Or paste one or more Apartments.com URLs into startUrls — listing/search pages, property pages, or a mix of both.
  4. To use website filters, apply them on Apartments.com, copy the resulting URL, and paste it into startUrls.
  5. Set maxItems to cap how many properties are saved.
  6. Toggle includeReviews, includeVisuals, includeInteriorAmenities, and includeWalkScore for extra detail-page data.
  7. Run the actor and download results in JSON, CSV, Excel, or HTML, or pull them from the Apify API.
  8. Use Apify scheduling to monitor rents daily or connect results to Make, Zapier, n8n, webhooks, or your own workflow via Apify integrations.

Input parameters

ParameterTypeRequiredDefaultDescription
searchstringOne of search / startUrlsLocation keyword: city, neighborhood, ZIP code, or street address
startUrlsarrayOne of search / startUrls[]Apartments.com listing (search) URLs and/or property detail URLs. Can be mixed
maxItemsintegerNo1000Maximum number of properties saved to the output
includeReviewsbooleanNofalseFetch resident reviews from property pages
includeVisualsbooleanNofalseFetch photo galleries, floor plan images, and 3D / virtual tour links
includeInteriorAmenitiesbooleanNofalseFetch in-unit apartment features and interior amenity lists
includeWalkScorebooleanNofalseFetch Walk Score, Transit Score, and Bike Score
proxyConfigurationobjectNoApify Proxy (Unblocker)Proxy settings. The Apify Proxy "Unblocker" group is required to reach Apartments.com reliably

Input / Output

Example input:

{
"startUrls": [
"https://www.apartments.com/brooklyn-ny/",
"https://www.apartments.com/sobe-apartment-rentals-miami-beach-fl/26xc7jb/"
],
"search": "2424 W Caithness Place, Denver, CO 80211",
"includeReviews": true,
"includeVisuals": true,
"includeInteriorAmenities": true,
"includeWalkScore": true,
"maxItems": 50
}

Example output (truncated):

{
"id": "szmm4r5",
"propertyName": "1 Kennedy Flats Apartments",
"url": "https://www.apartments.com/1-kennedy-flats-apartments-danbury-ct/szmm4r5/",
"lastUpdated": "Today",
"location": {
"fullAddress": "1 Kennedy Ave, Danbury, CT 06810",
"state": "CT",
"city": "Danbury",
"neighborhood": "Downtown Danbury",
"postalCode": "06810",
"streetAddress": "1 Kennedy Ave"
},
"coordinates": { "latitude": 41.39684, "longitude": -73.45732 },
"rating": 5,
"ratingValue": 4.8,
"ratingCount": 195,
"rent": { "min": 1956, "max": 4655, "currency": "USD" },
"beds": "Studio - 3 bd",
"baths": "1 - 2.5 ba",
"sqft": "571 - 1,906 sq ft",
"transportation": [
{ "name": "Danbury Station", "category": "Commuter Rail", "walk": "11 min", "drive": "", "distance": "0.6 mi" }
],
"specials": "Move-in Special For a limited time, enjoy $750 off your first month's rent.",
"schools": {
"public": [
{ "type": "Public Elementary School", "name": "King Street Primary School", "grades": "K-3", "numberOfStudents": "390", "rating": 4 }
],
"private": [
{ "type": "Private Elementary & Middle School", "name": "St Joseph Elementary School", "grades": "PK-8", "numberOfStudents": "227", "rating": null }
],
"collegesUniversities": [
{ "name": "Western Connecticut, Midtown", "drive": "3 min", "distance": "1.2 mi" }
]
},
"fees": [
{
"title": "Pets",
"policies": [
{ "header": "Dogs Allowed", "values": [ { "key": "Monthly pet fee", "value": "$60" }, { "key": "Weight limit", "value": "80 lb" } ] }
]
},
{
"title": "Details",
"policies": [
{ "header": "Property Information", "values": [ { "key": "Built in 2016", "value": "" }, { "key": "374 units/4 stories", "value": "" } ] }
]
}
],
"description": "1 Kennedy Flats offers studio, one and two bedroom apartments, plus spacious townhomes in the heart of Danbury...",
"amenities": [
{ "title": "Community Amenities", "value": ["Concierge", "Clubhouse", "Fitness Center", "Pool", "Grill"] },
{ "title": "Interior Amenities", "value": ["Washer/Dryer", "Air Conditioning", "Granite Countertops", "Stainless Steel Appliances"] }
],
"contact": { "phone": "(475) 323-4879", "name": null, "website": "http://www.1kennedyflats.com/", "leasingOffice": null },
"floorPlanUnits": [
{ "name": "S1-2122", "category": "apartment", "beds": 0, "baths": 1.0, "sqft": 571, "image": null }
],
"score": { "walkScore": 60, "transitScore": 50, "bikeScore": 40, "driveScore": 100, "soundScore": 71 },
"photos": ["https://images1.apartments.com/i2/FC0hffFJLQ4OvsYZ-i_oz1uRpmRnt0run_u6JGZ50V0/111/1-kennedy-flats-apartments-danbury-ct-primary-photo.jpg"],
"floorPlans": ["https://images1.apartments.com/i2/P81lXmR8PyiI2voUFSBZoAEBIKxhWDcTdDSJBt3hnxo/117/1-kennedy-flats-apartments-danbury-ct-floorplan.jpg"],
"virtualTours": ["https://my.matterport.com/show/?m=QHK4QbwVexP"],
"reviews": [
{ "author": "Realpage A.", "title": "Verified Renter", "text": "Great amenities, staff is very friendly and helpful.", "rating": 5.0, "datePublished": "2025-08-10" }
]
}

Download the dataset in JSON, HTML, CSV, or Excel, or access it through the Apify API.

Use cases

  • Rent monitoring — track asking rents, concessions, and availability across neighborhoods over time.
  • Market research — compare amenities, fees, unit mix, and Walk Score across competing communities.
  • Lead lists for proptech and services — build datasets of communities, management contacts, and locations.
  • Investment analysis — pull rent ranges, square footage, and building details for underwriting models.
  • Relocation and search tools — power apartment-finder apps with structured listing, school, and transit data.
  • Reputation analysis — aggregate resident reviews and ratings for portfolio benchmarking.

How it works

  1. Each search term is turned into an Apartments.com location URL; each start URL is classified as a listing (search) page or a property page.
  2. Listing pages are paginated, and every property card on them is queued for a full detail fetch.
  3. Property pages are parsed for structured fields from the page's embedded data and on-page sections.
  4. Optional sections (reviews, visuals, interior amenities, Walk Score) are attached only when the matching toggle is on.
  5. Results stream to the dataset as they are scraped; run state is saved so restarts resume where they left off.

How much does it cost to scrape Apartments.com?

This actor uses pay-per-event pricing. You are charged for the queries it runs and the data it returns. Apify account credits may cover small test runs.

EventWhat it isFreeBronzeSilverGold
listing-page-queryOne listing/search results page scraped$6.99 / 1k$6.49 / 1k$5.99 / 1k$5.49 / 1k
property-detail-queryOne property page you provide directly as a start URL$4.99 / 1k$4.49 / 1k$3.99 / 1k$3.49 / 1k
dataset-itemEach property saved, after the first 20 per listing query$0.49 / 1k$0.39 / 1k$0.39 / 1k$0.39 / 1k
reviewFetching reviews for a property (when includeReviews is on)$0.19 / 1k$0.14 / 1k$0.14 / 1k$0.14 / 1k
visualFetching images and virtual tours (when includeVisuals is on)$0.19 / 1k$0.14 / 1k$0.14 / 1k$0.14 / 1k
interior-amenitiesFetching interior amenities (when includeInteriorAmenities is on)$0.10 / 1k$0.05 / 1k$0.05 / 1k$0.05 / 1k
walk-scoreFetching Walk/Transit/Bike score (when includeWalkScore is on)$0.10 / 1k$0.05 / 1k$0.05 / 1k$0.05 / 1k

Example: scraping one Brooklyn search page and returning 40 properties with all toggles on costs roughly $6.99 (listing page) + $0.01 (20 chargeable dataset items) + ~$0.02 (reviews + visuals + interior + walk score for 40 properties) ≈ $7.02 on the Free tier, before account credits.

Python API example

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("parsebird/apartments-com-scraper").call(run_input={
"search": "Brooklyn, NY",
"maxItems": 50,
"includeReviews": True,
"includeVisuals": True,
"includeInteriorAmenities": True,
"includeWalkScore": True,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["propertyName"], item["rent"], item["url"])

JavaScript API example

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_APIFY_TOKEN" });
const run = await client.actor("parsebird/apartments-com-scraper").call({
startUrls: ["https://www.apartments.com/brooklyn-ny/"],
maxItems: 50,
includeVisuals: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) {
console.log(`${item.propertyName} - ${item.rent?.min}-${item.rent?.max} - ${item.url}`);
}

This actor collects publicly available listing information from Apartments.com. Web scraping of public data is legal in many jurisdictions, but you are responsible for how you use the data. Review Apartments.com's Terms of Use, do not misuse personal data such as reviewer names, and make sure your use case complies with applicable laws (including GDPR and CCPA where relevant). For background, read Apify's guide: Is web scraping legal?.

FAQ

Can I mix property URLs and search URLs in one run? Yes. Put any combination of Apartments.com listing (search) URLs and property detail URLs into startUrls, and optionally add a search term as well.

How do I scrape one specific property? Copy the property page URL from Apartments.com and paste it into startUrls. It is billed as a property-detail-query.

How do I apply filters like price or pet policy? Set the filters on the Apartments.com website, then copy the filtered results URL from your browser and paste it into startUrls.

Why are some fields empty? Listings vary. Single-family rentals and smaller buildings often have no fees, floor plan units, reviews, or Walk Score. The actor returns whatever the property page publishes.

Do the toggles change the cost? Yes. includeReviews, includeVisuals, includeInteriorAmenities, and includeWalkScore each add a small per-property event only for properties where that data is returned.

Why does a run take a while? Apartments.com has strong anti-bot protection, so each page is fetched through the Apify Proxy Unblocker and retried until it succeeds. Expect roughly one to two minutes per property. For large runs, raise the Actor's run timeout in the run options.

Can I schedule recurring runs? Yes. Use Apify scheduling to run hourly, daily, weekly, or on a custom interval.

Can I connect the results to other tools? Yes. Use the Apify API, dataset webhooks, or Apify integrations to push data to Google Sheets, databases, CRMs, Make, Zapier, or n8n.

Where do I report an issue? Open a ticket on the actor's Issues tab with the input you used and an example URL.

Apartments.com Scraper & API is intended for lawful research, monitoring, and analysis of publicly available rental listings. Review the source site's terms, handle any personal data (such as reviewer names and leasing contacts) carefully and in line with GDPR, CCPA, and other applicable regulations, and use the exported JSON, CSV, Excel, API, and integration workflows only for compliant purposes.