Scrape listings on apartments.com
The call that returns listings from apartments.com today, with the parameters, patterns and failure modes read off the request log since 14 Aug 2026.
Measured on Crawlbase
Success rate over every request from every account in August 2026: 99.1%. Patterns, countries and failures come from the request log since 14 Aug 2026; 100% of successful calls used the JavaScript token and the median answer took 11.5s.
Among the 6 real estate sites in the Cookbook, apartments.com sits at 3 of 6 by success rate; the category median is 99.1%. Its median answer of 11.5s is slower than the category median of 3.2s. 3 of the 6 accept the plain token; this one needs the JavaScript token.
The call
Product pages are the shape the accounts fetch most here, with the country and token that succeed most often. Replace the placeholder path with a real product URL from the site.
curl "https://api.crawlbase.com/?token=YOUR_JS_TOKEN&country=US&url=https%3A%2F%2Fwww.apartments.com%2Fexample-page"from crawlbase import CrawlingAPI api = CrawlingAPI({'token': 'YOUR_JS_TOKEN'}) r = api.get('https://www.apartments.com/example-page', {'country': 'US'}) html = r['body']
const { CrawlingAPI } = require('crawlbase'); const api = new CrawlingAPI({ token: 'YOUR_JS_TOKEN' }); const r = await api.get('https://www.apartments.com/example-page', { country: 'US' });
Parameters that matter
| Parameter | Set it to | Why |
|---|---|---|
country | US | 41.3% of successful calls set it and they succeed at 99.6%; calls without a country succeed at 98.9%. |
javascript | use the JavaScript token | 100% of calls use the JavaScript token and succeed at 99.2%. The plain token was tried too rarely (0 calls) to say anything about it. |
URL patterns accounts fetch
| Pattern | Share of successes | JavaScript token | Country | Query parameters |
|---|---|---|---|---|
/{slug} | 21.5% | 100% | US | none |
/{slug}/{slug} | 20.5% | 100% | US | none |
/property-management/{slug}/{slug} | 7.3% | 100% | US | none |
/{slug}/{slug}/{slug} | 3.3% | 100% | US | none |
Fields you get
A product page usually carries an ld+json Product block with name, price, currency and availability, and the same values in the visible markup. Read the block first; it changes less often than the layout.
What breaks, and the fix
Of the failures since 14 Aug 2026, the site answered:
Run it on a schedule
A catalogue refresh is a list of product URLs. Push it to the Crawler with a callback, let it pace the calls and retry what the site refuses, and read the results from Cloud Storage. The median answer on this site is 11.5s.
Questions
Do I need a browser to scrape apartments.com?
Yes for most pages. JavaScript-token calls succeed at 99.2% while plain-token calls reach -%.
How much does a apartments.com page cost on Crawlbase?
1 credit without a browser. apartments.com is in the standard tier.
Which country should I set for apartments.com?
US: that is what 41.3% of successful calls use.