Furnished Finder Scraper
Pricing
from $1.20 / 1,000 listings
Furnished Finder Scraper
Extracts furnished rental listings from Furnished Finder, including rent, availability, amenities, photos, approximate location, and optional host contact fields.
Pricing
from $1.20 / 1,000 listings
Rating
0.0
(0)
Developer
Data Scrapers
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Furnished Finder Scraper creates a structured dataset of furnished rental listings collected from Furnished Finder at furnishedfinder.com. Each dataset item is one listing and can include the listing id, property name, monthly rent, bedroom and bathroom counts, availability, amenities, photos, approximate coordinates, and, when host extraction is enabled, host contact fields. Query the source with a Furnished Finder housing URL or a location name such as Houston, TX, control the result limit with maxItems, and retrieve records through the Apify Dataset API or export them as JSON, CSV, Excel, XML, or another supported format.
Dataset at a glance
| Property | Value |
|---|---|
| Source | furnishedfinder.com |
| Record unit | One furnished rental listing |
| Input methods | Housing or search URLs, location names, or a single location string |
| Main identifiers | listingId, url |
| Delivery | Apify Dataset and Dataset API |
| Export formats | JSON, CSV, Excel, XML, and other Apify dataset formats |
| Update model | Fresh records per Actor run |
| Pricing | $0.001 per listing. listing-details and host-info are $0.001 each, and only when those options are enabled |
Coverage and available records
The Actor collects public Furnished Finder search results. A run accepts one or more housing URLs, such as https://www.furnishedfinder.com/housing/us--tx--houston, or location text such as Houston, TX. Location text is used only when urls is empty. searchQuery is used only when both urls and searchQueries are empty.
Move-in date, move-out date, and minimum or maximum monthly budget apply when the Actor builds a search URL from a location name. When you pass a housing URL yourself, filters already present on that URL are used.
Search results are paginated. The page size comes from the source page when it is present, otherwise 72. The Actor continues through the reported last page unless maxItems stops the run. maxItems of 0 means no Actor-side cap.
Each saved search record is a listing card: property type, rent, beds and baths, availability, amenities, photos, and an approximate map point. Street address is not part of the search record. approxLocation is the source approximate point.
listingDetails and hostInfo are off by default. A default run saves the search listing and charges only listing.
Set listingDetails to true to open each property page and add fees, house rules, reviews, nearby places, and the longer description. Each page that loads is also charged as listing-details. Set hostInfo to true to add the host contact fields. Each host profile that loads is also charged as host-info. Those requests run together, up to max_concurrency at a time, and a failed host lookup is retried. If a page or host lookup still fails, the search listing is saved and only the events that succeeded are charged.
A direct property URL is not the supported starting point. Property pages are opened from listingId values found in search results, and only when listingDetails or hostInfo is true.
Canada and United States location slugs are both accepted by the URL parser. Coverage is whatever Furnished Finder returns for the query. This dataset does not store historical snapshots.
Data dictionary
Search records use the field names below. Nested objects can include a source __typename property. The best field for deduplication is listingId.
| Field | Type | Nullable | Description | Example |
|---|---|---|---|---|
listingId | string | No | Source listing identifier. The Actor builds url from this value. | 784202_1 |
name | string | Yes | Listing title. | Private Bedroom near Hospital in Upper West Side 1309 B |
propertyType | string | Yes | Source property-type label. | Room - Apartment |
propertyTypeClass | string | Yes | Coarser type class from the source. | room |
description | string | Yes | Listing description from the search result. | |
encodedLocationName | string | Yes | Source location slug for the search. | |
laundryType | string | Yes | Laundry description from the source. | |
rentAmount | object | Yes | Monthly rent. See nested fields. | |
bedroomCount | number | Yes | Bedroom count. | 1 |
bathroomCount | number | Yes | Bathroom count. | 1 |
bathroomType | string | Yes | Bathroom type label from the source. | |
totalSleeps | integer | Yes | Maximum occupants reported by the source. 0 has been observed. | 0 |
availableOnDate | string | Yes | Source availability text, not an ISO date. | Available: Apr. 25, 2025 |
isAvailableNow | boolean | Yes | Source flag for current availability. | |
isFullyAvailable | boolean | Yes | Source flag for full availability in the searched window. | |
minimumStayInDays | integer | Yes | Minimum stay reported by the source. | |
bestMatchedAvailabilityWindow | object | Yes | Matching stay window. See nested fields. | |
futureAvailabilityWindow | object | Yes | Later stay window. See nested fields. | |
amenities | array | Yes | Amenity values from the search result. Replaced by amenity names when listing details load. | |
photos | array | Yes | Photo objects on a search record. Replaced by URL strings when listing details load. | |
approxLocation | object | Yes | Approximate latitude and longitude. | |
isFavorite | boolean | Yes | Source favorite flag for the search session. | |
isRegionMatch | boolean | Yes | Whether the source marked the listing as a region match. | |
url | string | Yes | https://www.furnishedfinder.com/property/ plus listingId. Null when listingId is missing. | https://www.furnishedfinder.com/property/784202_1 |
sourceQuery | string | Yes | Copied from encodedLocationName. | |
image | string | Yes | URL of the first search photo, or null when photos is empty. |
rentAmount
| Field | Type | Nullable | Description | Example |
|---|---|---|---|---|
amount | string | Yes | Monthly amount as returned by the source, not a JSON number. | 1325.00 |
currency | string | Yes | Currency code. | USD |
approxLocation and availability windows
| Field | Type | Nullable | Description | Example |
|---|---|---|---|---|
approxLocation.latitude | number | Yes | Approximate latitude. | 40.8344549 |
approxLocation.longitude | number | Yes | Approximate longitude. | -73.949041 |
bestMatchedAvailabilityWindow.startDate | string | Yes | Window start from the source. | |
bestMatchedAvailabilityWindow.endDate | string | Yes | Window end from the source. | |
futureAvailabilityWindow.startDate | string | Yes | Later window start from the source. | |
futureAvailabilityWindow.endDate | string | Yes | Later window end from the source. |
photos on a search record
| Field | Type | Nullable | Description | Example |
|---|---|---|---|---|
url | string | Yes | Photo URL. | |
isFeatured | boolean | Yes | Whether the source marked the photo as featured. |
Fields added when listing details or host info succeed
Listing-page fields are present only when listingDetails is true and the property page loads. host_info is present only when hostInfo is true and the host profile loads. A failed lookup keeps the search record and does not add the missing object.
| Field | Type | Nullable | Description | Example |
|---|---|---|---|---|
host_info | object | Yes | Host profile. Every property below is a string or null. | |
host_info.Fname | string | Yes | Host first name. | |
host_info.Lname | string | Yes | Host last name. | |
host_info.company | string | Yes | Company name. | |
host_info.phone | string | Yes | Phone number when the source returns one. | |
host_info.Hcity | string | Yes | Host city. | |
host_info.Hstate | string | Yes | Host state. | |
host_info.Hzip | string | Yes | Host postal code. | |
host_info.Avitar | string | Yes | Avatar value as named by the source. | |
host_info.Profession | string | Yes | Profession. | |
host_info.AboutMe | string | Yes | About text. | |
host_info.RentalPolicy | string | Yes | Rental policy text. | |
host_info.username | string | Yes | Host username. | |
host_info.userEmail | string | Yes | Host email. | |
text_sections | array | Yes | Objects with title and text taken from listing-page sections. | |
nearby_facilities | array | Yes | Objects with facility_name and distance. | |
coordinates | object | Yes | latitude and longitude from the listing page. Either value can be null. | |
user_info | object | Yes | username and tenure from the listing page. | |
house_rules | array | Yes | House-rule objects. Source __typename is removed. Other keys follow the page. | |
fees | array | Yes | Fee objects. Source __typename is removed. Other keys follow the page. | |
reviews | array | Yes | Review items from the listing page. Item shape follows the source. |
On a successful host record, photos becomes an array of image URL strings, and amenities becomes an array of amenity name strings. url, sourceQuery, and image are still set from the search listing.
Example dataset record
This record is a search listing observed from a Furnished Finder housing search. Long description, amenity, and photo arrays are omitted here; the comment lists fields the full item still carries.
{"propertyType": "Room - Apartment","propertyTypeClass": "room","approxLocation": {"latitude": 40.8344549,"longitude": -73.949041},"name": "Private Bedroom near Hospital in Upper West Side 1309 B","listingId": "784202_1","rentAmount": {"amount": "1325.00","currency": "USD"},"bedroomCount": 1,"bathroomCount": 1,"totalSleeps": 0,"availableOnDate": "Available: Apr. 25, 2025","url": "https://www.furnishedfinder.com/property/784202_1"}
The full search item also includes description, encodedLocationName, laundryType, isAvailableNow, isFullyAvailable, minimumStayInDays, bestMatchedAvailabilityWindow, futureAvailabilityWindow, amenities, photos, bathroomType, isFavorite, isRegionMatch, sourceQuery, and image when the source returns them. Property-page fields are absent unless listingDetails is true. host_info is absent unless hostInfo is true.
The input that produced this listing shape was a Furnished Finder housing URL for a New York medical-center area search:
{"urls": ["https://www.furnishedfinder.com/housing/us--ny--newyork-presbyterian-weill-cornell-medical-center"]}
Query and input reference
| Input | Type | Required | Default | Accepted values | Description |
|---|---|---|---|---|---|
urls | array | No | Furnished Finder housing or search URLs | Primary query. Used before location text. | |
searchQueries | array | No | Location strings such as Houston, TX | Used only when urls is empty. The first suggestion for each string becomes a search URL. | |
searchQuery | string | No | One location string | Used only when urls and searchQueries are empty. | |
moveInDate | string | No | YYYY-MM-DD | Applied when a location name is resolved to a URL. | |
moveOutDate | string | No | YYYY-MM-DD | Applied when a location name is resolved to a URL. | |
minPrice | integer | No | Integer >= 0 | Minimum monthly budget in USD. Applied when a location name is resolved to a URL. | |
maxPrice | integer | No | Integer >= 0 | Maximum monthly budget in USD. Applied when a location name is resolved to a URL. | |
maxItems | integer | No | 0 | Integer >= 0 | Maximum listings to save. 0 does not cap the run. Console prefill is 20. |
listingDetails | boolean | No | false | true or false | Open each property page and charge listing-details when it loads. |
hostInfo | boolean | No | false | true or false | Add host contact fields and charge host-info when the profile loads. |
proxyConfiguration | object | No | Apify Residential proxy | Apify proxy object | Proxy used for the run. Residential is the default. |
max_concurrency | integer | No | 20 | Integer 1–100 | Concurrent property-page and host requests when details or host info is enabled. |
Minimal request:
{"urls": ["https://www.furnishedfinder.com/housing/us--tx--houston"],"maxItems": 20}
Location request with a budget, dates, and host fields:
{"searchQueries": ["Houston, TX"],"moveInDate": "2026-05-01","moveOutDate": "2026-08-01","minPrice": 1000,"maxPrice": 4000,"listingDetails": true,"hostInfo": true,"maxItems": 20}
Retrieve the data through the API
- Start
datascrapers/furnishedfinderwith a JSON input. - Wait until the run finishes, or poll the run.
- Read items from the run’s default dataset.
- Use dataset pagination or an Apify export format for larger results.
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("datascrapers/furnishedfinder").call(run_input={"urls": ["https://www.furnishedfinder.com/housing/us--tx--houston"],"maxItems": 20,"listingDetails": False,"hostInfo": False,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["listingId"], item.get("rentAmount"))
Other languages are listed on the Actor’s API tab. Do not put a real token in a URL or in the input.
Data quality and record handling
Search fields are stored as returned. rentAmount.amount stays a string. availableOnDate stays display text. The Actor adds url, sourceQuery, and image; it does not geocode a street address.
There is no internal deduplication. The same listingId can appear more than once if you pass overlapping searches. Use listingId as the external unique key. url is derived from that id.
Listing details and host fields are conditional. A failed property page or host lookup is saved as a search record and charged only as listing, plus whichever of listing-details or host-info succeeded. A loaded property page replaces photos and amenities with the listing-page shapes described above. Empty arrays are used for house rules, fees, and reviews when those blocks are missing on a page that otherwise loaded. Host profile and phone requests are retried before the listing is saved without them.
A search URL that cannot be read is logged and skipped. Other URLs in the same run continue. If no URL or location is provided, the dataset is empty and the key-value record run-stats reports recordsScraped: 0. After a normal run, run-stats stores recordsScraped, runStartedAt, and runFinishedAt in UTC ISO 8601.
Page fetches are retried. A later page that still fails is logged, and earlier pages remain in the dataset. If the location cannot be resolved and the source reports more than one page, later pages can be skipped.
Pricing and cost examples
Billing is pay per event. Prices are the same on every plan.
| Event | When it is charged | Price |
|---|---|---|
listing | Each search listing saved | $0.001 |
listing-details | Each property page saved because listingDetails is true | $0.001 |
host-info | Each host profile saved because hostInfo is true | $0.001 |
A default run charges listing only. listing-details and host-info are charged in addition, and only for records those options actually return. maxItems limits how many listings a run saves. Apify platform usage is billed separately from these events.
| Records | Events | Estimated event cost |
|---|---|---|
| 1,000 | listing | $1.00 |
| 10,000 | listing | $10.00 |
| 1,000 | listing and listing-details | $2.00 |
| 1,000 | listing, listing-details, and host-info | $3.00 |
Estimates count only the event price. They do not include platform usage, and they assume every requested detail page and host profile succeeds. A failed lookup is not charged for the event that failed.
Limitations and responsible data use
The Actor reads publicly available Furnished Finder pages and search results for the queries you supply. It does not provide a Furnished Finder API, and it does not guarantee that every public listing, city, or date range is returned.
Fields can be missing when the source omits them. Approximate coordinates are not a verified street address. Host phone and email appear only when hostInfo is true and the source returns them. Property-page fields appear only when listingDetails is true. Availability text and rent strings can change format without notice.
Each run returns the listings visible at request time. The Actor does not keep a history. Store the dataset yourself if you need a snapshot.
You are responsible for complying with Furnished Finder’s terms, privacy rules, and applicable law, including how you store and contact hosts.
Dataset questions
What does one dataset item represent?
One Furnished Finder listing from a housing search. With listingDetails enabled, that same item also carries property-page fields. With hostInfo enabled, it also carries host_info.
Which field should I use as a unique identifier?
Use listingId. The public property URL is https://www.furnishedfinder.com/property/ plus that id.
Are fields nullable or conditional?
Search fields can be null when the source omits them. Property-page fields are present only after a successful listingDetails fetch. host_info is present only after a successful hostInfo fetch. photos and amenities change shape when the property page is merged.
Can I retrieve the records as CSV or JSON?
Yes. Export the run dataset as JSON, CSV, Excel, XML, or another Apify dataset format, or read items through the Dataset API.
How do I paginate large datasets?
Limit a run with maxItems. For the saved dataset, use the Dataset API offset and limit parameters or an export. The Actor already walks source result pages until the last page or maxItems.
Does the Actor return historical data?
No. Each run returns the listings returned by Furnished Finder during that run.
What counts as a billable result?
Each saved listing charges listing at $0.001. A loaded property page also charges listing-details at $0.001. A loaded host profile also charges host-info at $0.001. Both extra events stay off unless you enable them. Platform usage is separate.
Related datasets from Data Scrapers
- Apartments.com Scraper — US apartment listing records for a longer-stay comparison in the same city.
- Realtor.com Scraper — US home listing records with price and property fields for the same market.
- Airbnb Scraper - Search & Listing Details — short-stay listing records that can be compared with furnished monthly rentals.
- Airbnb Address Finder — Airbnb listing records with address fields for short-stay inventory in the same area.
Data Scrapers support
Need an additional field, record type, or export workflow? Contact Data Scrapers at stardustspotlight@gmail.com. Include a sample source URL, required fields, expected record volume, and preferred delivery format.
