US Real Estate Listings (RentCast, licensed, no scraping)
Pricing
$10.00 / 1,000 listing delivereds
US Real Estate Listings (RentCast, licensed, no scraping)
US property listings (for-sale and rental) by zip: price, status, days on market, MLS number, price history, from a licensed RentCast feed. No listing agent/office field. Covers 3 pilot zips only: 78704, 90028, 60614; more as demand appears. Billed only if address, price and status are present.
Pricing
$10.00 / 1,000 listing delivereds
Rating
0.0
(0)
Developer
Kevin
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
US Real Estate Listings — licensed RentCast feed, refreshed on a schedule
An independent tool. It is not affiliated with, endorsed by, or operated by RentCast. It resells RentCast API data under RentCast's own resale licence (API Terms of Use, Section 1) and reports what RentCast returns.
No scraper. This Actor never touches Zillow, Realtor.com or any other
listing site's HTML. Its data comes from RentCast's licensed
/listings/sale and /listings/rental/long-term endpoints, refreshed on a
schedule and bundled into this Actor at build time.
No listing agent or office contact field is ever emitted — not redacted after the fact, never requested from the source in the first place. See "Why no agent contact info" below.
What you get per listing
| Field | Meaning |
|---|---|
listing_id | RentCast's own listing identifier |
market_type | sale or rental — price means different things for each |
formatted_address, address_line1, address_line2, city, state, zip_code, county | Where |
latitude, longitude | |
property_type, bedrooms, bathrooms, square_footage, lot_size, year_built | What |
status, price, listing_type | Active/pending/etc, sale price or monthly rent, standard/new-construction/etc |
listed_date, removed_date, created_date, last_seen_date, days_on_market | When |
mls_provider, mls_number | Which MLS, when RentCast supplies one |
hoa_fee | When present |
price_change_history | Every listing/price event RentCast has on file for this address, oldest first |
charged | Whether this row cost you anything |
not_charged_reason | Why it did not, in plain English |
Why no agent contact info
RentCast API Terms Section 2(iv) forbids using the data "to send automated
queries to any website or to send any unsolicited commercial e-mail." A
customer who received a listing agent's name, phone or email and used it to
cold-contact that agent would put RentCast's own data into exactly the
conduct that clause forbids. listing_agent_* and listing_office_* are
dropped in the refresh step, before anything reaches this Actor's own
bundled data — a bug downstream cannot resurrect a field that was never
kept.
The billing rule, stated plainly
One event: listing delivered, charged only when the cached row has an
id, an address, a price and a status. A row missing any of those is
delivered free, with not_charged_reason saying which.
Coverage — read this before you rely on it
This Actor answers from a cache refreshed on a schedule, not a live
call per request. SUMMARY.json in the run's key-value store reports
cache_refreshed_at and cache_markets_covered on every run, so you can
see exactly how fresh the data you received was and which zip codes are
served at all. A zip code outside cache_markets_covered returns zero
rows and costs nothing — it is not an error, and it is not this Actor
guessing at coverage it does not have.
Coverage is capped by RentCast's own request quota (RentCast bills per
request, not per record): only a limited number of zip codes can be
refreshed on any given schedule. Ask for the zip codes you actually need
covered if yours is not yet in cache_markets_covered.
Input
{"markets": ["78704"]}
One zip code per line, up to 200 per run.
Output
{"listing_id": "2505-Bluebonnet-Ave,-Unit-5,-Austin,-TX-78704","market_type": "sale","formatted_address": "2505 Bluebonnet Ave, Unit 5, Austin, TX 78704","city": "Austin","state": "TX","zip_code": "78704","property_type": "Townhouse","bedrooms": 2,"bathrooms": 2.5,"square_footage": 1519,"status": "Active","price": 685900,"listing_type": "New Construction","days_on_market": 468,"mls_provider": "UnlockMLS","mls_number": "2231134","hoa_fee": 300,"price_change_history": [ ... ],"charged": true,"not_charged_reason": ""}
A SUMMARY.json lands in the key-value store with the counts, a breakdown
of every reason a listing was not charged, and the cache's own freshness —
so a stale refresh looks like a stale refresh, not like a quiet drop in
your results.