Flatfox Scraper - Swiss Rentals, Flatshares & Property Listings avatar

Flatfox Scraper - Swiss Rentals, Flatshares & Property Listings

Pricing

from $1.06 / 1,000 property listings

Go to Apify Store
Flatfox Scraper - Swiss Rentals, Flatshares & Property Listings

Flatfox Scraper - Swiss Rentals, Flatshares & Property Listings

Scrape flatfox.ch rentals, flatshares and sales across Switzerland: CHF net and gross rent, rooms, m², move-in date, GPS, photos, floor plans and agency.

Pricing

from $1.06 / 1,000 property listings

Rating

0.0

(0)

Developer

SIÁN OÜ

SIÁN OÜ

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Flatfox Scraper - Swiss Rentals, Flatshares & Property Listings 🚀

SIÁN Agency Store ImmoScout24.ch Scraper ImmobilienScout24 Scraper Willhaben Property Scraper

🎉 Flatfox listings for any Swiss town, with the rent split, floor plans and move-in date on every row

For relocation agents, rental analysts, property managers and anyone hunting a flat in Zürich, Geneva, Bern or Lausanne


🔎 What is the Flatfox Swiss Property Scraper — and when should you use it?

The Flatfox Swiss Property Scraper turns public Flatfox rentals, flatshare rooms and property for sale anywhere in Switzerland into clean, structured rows you can filter, export and feed straight into a spreadsheet, database or AI agent. No account, no portal API key, no browser automation to maintain.

Use it when you need: Swiss rental and sale listings from Flatfox as rows. Each rental carries the gross rent and, when published, the net rent and the service charges as separate numbers. Size and layout follow: rooms in Swiss halves, living and usable space, floor, year built and renovated. Every row has the move-in date, the amenities the advertiser ticked, the street address, GPS coordinates, every photo and any attached floor plans. It also names the managing agency with its postal address. Listings that also went to ImmoScout24.ch or Homegate carry the ID they had there, and Flatfox-first listings carry the date their Flatfox-only period ends.

Use something else when: the property is outside Switzerland, or the buyer wants ImmoScout24.ch's own record. Use ImmoScout24.ch Scraper for Switzerland's largest portal, with building-register IDs and the agency's legal entity. Use ImmobilienScout24 Scraper for German rentals and sales. Use Willhaben Property Scraper for Austrian rentals and sales. This actor covers what Flatfox publishes: apartments, houses, flatshare rooms, offices and shops, parking, hobby rooms and building land in Switzerland, to rent or to buy. Flatfox is mainly a rental site, with about 1,900 sale listings against 33,900 rentals. It does not publish phone numbers or e-mail addresses, and it shows only what is currently advertised, so there is no let or sold history.

🤖 Use with AI agents

Already connected to the Apify MCP server? Just ask for this Actor by name: sian.agency/flatfox-property-scraper

Your agent can pay for its own runs. This Actor is eligible for agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — without an Apify account or API token of its own. Billing is the same either way: per successful row, never for errors.

Otherwise copy this prompt into Claude, ChatGPT, Cursor or any MCP-enabled assistant:

I want Swiss rental and property listings from Flatfox using the Apify Actor `sian.agency/flatfox-property-scraper`.
Use it when I need: Swiss rental and sale listings from Flatfox as rows. Each rental carries the gross rent and, when published, the net rent and the service charges as separate numbers. Size and layout follow: rooms in Swiss halves, living and usable space, floor, year built and renovated. Every row has the move-in date, the amenities the advertiser ticked, the street address, GPS coordinates, every photo and any attached floor plans. It also names the managing agency with its postal address. Listings that also went to ImmoScout24.ch or Homegate carry the ID they had there, and Flatfox-first listings carry the date their Flatfox-only period ends.
Don't use it when: the property is outside Switzerland, or the buyer wants ImmoScout24.ch's own record — use immoscout24-ch-property-scraper or immobilienscout24-property-scraper or willhaben-property-scraper instead.
How to call it: put Swiss towns or 4-digit postcodes in `locations`, in German, French, Italian or English, or leave it empty for all of Switzerland. A name the actor cannot match stops the run before anything is charged. Set `dealType` to `rent` or `sale` and `propertyType` to `residential`, `apartment`, `house`, `flatshare`, `commercial`, `parking`, `land`, `hobby-storage` or `any`. Narrow with `minPrice`/`maxPrice` in CHF, `minRooms`/`maxRooms`, `minSpace`/`maxSpace`, `furnishedOnly`, `temporaryOnly` and `amenities` (every picked feature must be present). Listings come newest first up to `maxResults`. To fetch listings you already have, pass their links in `listingUrls` instead.
Start with this input:
{
"locations": [
"Zürich"
],
"dealType": "rent",
"propertyType": "apartment",
"maxRooms": 3,
"maxPrice": 3000,
"amenities": [
"lift"
],
"maxResults": 100
}
Ask me which Swiss towns or postcodes to cover, whether they want rentals or sales, and any price, room or must-have-feature limits, then run the Actor and summarise the results as a table.

Things you can ask your agent for:

  • Pull every 2.5- to 3.5-room apartment to rent in Zürich under CHF 3,000 and rank the postcodes by median gross rent per square metre.
  • List the flatshare rooms (WG-Zimmer) in Bern and Lausanne posted this week, with rent, furnishing and move-in date.
  • Find Flatfox-first rentals in Geneva and join them to my ImmoScout24.ch data on the ImmoScout24 ID.

Machine-readable API, MCP config and OpenAPI definition for this Actor are published at apify.com/sian.agency/flatfox-property-scraper.md.

📋 Overview

Type a Swiss town or postcode and get its Flatfox listings back as clean rows: rentals, flatshare rooms, offices, parking and property for sale, ready for a spreadsheet, a database or an AI agent.

What you get:

  • Search by place, not by URL: Zürich, Genf, Geneva, Lausanne or 8004. German, French, Italian and English names all work, across 2,400 Swiss postcodes.
  • Fast: 100 Zürich rentals in about 15 seconds, newest first.
  • 🎯 Filters that hold: a listing that does not match your price, rooms, space or must-have features is never saved and never charged.
  • 🧮 The Swiss rent split: gross rent, net rent and service charges as separate CHF columns.
  • 📎 Photos and floor plans: every photo and every document the advertiser attached, with direct links.
  • 💰 Pay per listing: $1.20 per 1,000 listings on the Bronze plan, plus a small start fee. Nothing to install and no key to set up.
  • NEW: Flatfox-first dates. About one listing in five is published on Flatfox before the other Swiss portals, and the row says until when.

✨ Features

  • 📍 Place search in four languages: towns and postcodes resolve to their full postcode set; a name the actor cannot match stops the run before any charge.
  • 🗺️ Whole cities, read completely: busy areas are split into smaller map tiles automatically, so Zürich or all of Switzerland comes back complete.
  • 🏠 Every property type: apartments, houses, flatshare rooms (WG-Zimmer), offices and shops, parking, hobby rooms and building land.
  • 🤝 Rent or buy: switch between rentals and sales with one field.
  • 🎚️ Real filters: price in CHF, rooms, floor space, furnished only, temporary lets only, and must-have features like a lift, a balcony or pets allowed.
  • 🧮 Rent split and price basis: monthly, weekly, per m² per year for offices, or sale price, always labelled.
  • 📅 Move-in date and availability: immediately, by agreement or from a date.
  • 🏢 Managing agency: name, street, postcode and city on every row that has one.
  • Flatfox-first until: the date a listing stays on Flatfox before the other portals.
  • 🔗 ImmoScout24 / Homegate ID: the ID a syndicated listing carried there, for joining datasets.
  • 🔁 Paste listing links: fetch specific listings by their Flatfox address or number.

🎬 Quick Start

Pick a town, choose rent or buy, and press Start. The run reads Flatfox's map for that town, fetches every matching listing and saves each one as a row. You can download the result as JSON, CSV or Excel, or pull it through the API.

curl -X POST "https://api.apify.com/v2/acts/sian.agency~flatfox-property-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"locations": ["Zürich"], "dealType": "rent", "propertyType": "apartment", "maxResults": 100}'

🚀 Getting Started (3 Simple Steps)

Step 1: Name your places

Type one or more Swiss towns or postcodes in Places, or leave it empty for the whole country.

Step 2: Set rent or buy and the filters

Choose the property type, then add a price range, rooms, space or must-have features if you need them.

Step 3: Run and export

Press Start and open the dataset when the run finishes.

That's it! In under a minute for most towns, you'll have:

  • Every matching listing with price, rent split, rooms and space
  • Address, GPS coordinates, photos and floor plans
  • The move-in date and the managing agency

📥 Input Configuration

FieldTypeRequiredDescription
locationsarrayNoSwiss towns or 4-digit postcodes. Empty means all of Switzerland. Default: Zürich
dealTypestringNorent or sale. Default: rent
propertyTypestringNoresidential, apartment, house, flatshare, commercial, parking, land, hobby-storage or any. Default: residential
maxResultsintegerNoStop after this many listings. Default: 100
minPrice / maxPriceintegerNoPrice range in CHF. 0 means no limit
minRooms / maxRoomsintegerNoRoom range; 3 includes 3.5
minSpace / maxSpaceintegerNoFloor space in m²
amenitiesarrayNoFeatures that must all be present, such as lift, balconygarden, petsallowed
furnishedOnlybooleanNoFurnished listings only
temporaryOnlybooleanNoTemporary lets and sublets only
listingUrlsarrayNoFlatfox listing links or numbers to fetch instead of searching

Example:

{
"locations": ["Zürich", "8004"],
"dealType": "rent",
"propertyType": "apartment",
"maxRooms": 3,
"maxPrice": 3000,
"amenities": ["lift"],
"maxResults": 100
}

Fetch listings you already have:

{
"listingUrls": [
"https://flatfox.ch/de/wohnung/route-du-bugnon-48-1752-villars-sur-glane/1581688/",
"1581688"
]
}

📤 Output

Each listing is saved to the Apify dataset with 60 fields, including:

FieldTypeDescription
listingIdnumberFlatfox listing number
urlstringThe listing on flatfox.ch
propertyTitlestringThe advertiser's headline
price / priceBasisnumber / stringHeadline price in CHF and what it means
rentGross / rentNet / rentChargesnumberMonthly rent with and without service charges
roomsnumberRoom count in Swiss halves
livingSpace / usableSpacenumberFloor space in m²
floor, yearBuiltnumberFloor and year of construction
availability / availableFromstringMove-in terms and date
street, postcode, city, cantonstring / numberWhere it is
latitude / longitudenumberGPS coordinates
amenitiesarrayFeatures such as lift, balcony or garden, pets allowed
imageUrls / documentsarrayEvery photo and attached document
agencyNamestringThe managing agency
flatfoxExclusiveUntilstringEnd of the Flatfox-first period
smgListingIdstringID on ImmoScout24.ch / Homegate, when syndicated

Example:

{
"listingId": 1581688,
"url": "https://flatfox.ch/en/flat/route-du-bugnon-48-1752-villars-sur-glane/1581688/",
"imageUrl": "https://flatfox.ch/media/ff/2025/03/zmrks0yds2bfbp6zx3h9kojm4ytxghxn026tahlxty3fi1xwzs.jpg",
"propertyTitle": "Votre nouveau logement facilite vos déplacements",
"summaryTitle": "Route du Bugnon 48, 1752 Villars-sur-Glâne - CHF 1’790 incl. utilities per month",
"dealType": "rent",
"propertyCategory": "apartment",
"price": 1790,
"priceBasis": "per month",
"currency": "CHF",
"rentGross": 1790,
"rentNet": 1500,
"rentCharges": 290,
"rooms": 3.5,
"floor": 2,
"livingSpace": 84,
"yearBuilt": 1983,
"availability": "immediately",
"amenities": ["view", "balconygarden", "lift"],
"isFurnished": false,
"street": "Route du Bugnon 48",
"postcode": 1752,
"city": "Villars-sur-Glâne",
"canton": "FR",
"latitude": 46.795457,
"longitude": 7.1159203,
"imageCount": 9,
"documentCount": 1,
"documents": [{ "url": "https://flatfox.ch/media/ff/2026/02/xm6v81rdwm53h539j3kpwa9ttmq08jajbaazlzcppsq0khah5k/913oul5314pwkj8i82uyaxmyof1lzhtb1m8hnilq79muwh11tq.pdf", "caption": "3187.05.0152.pdf" }],
"agencyName": "Helvetia Service SA",
"agencyCity": "Neuchâtel",
"reference": "3187.05.0152",
"publishedAt": "2025-03-06T14:28:54.166279+01:00",
"searchedLocation": "Fribourg",
"status": "success"
}

💼 Use Cases & Examples

1. Swiss Rental Market Analysis

Rental analysts and proptech teams measuring rent per m² by postcode across Swiss cities.

Input: A list of cities with propertyType: "apartment" and a high maxResults Output: Gross and net rent, rooms, living space, year built and GPS for every listing Use: Rent-per-m² maps, affordability studies and pricing models

2. Relocation and Flat Hunting

Relocation consultants shortlisting flats for a client moving to Zürich or Geneva.

Input: One city, maxPrice, minRooms and amenities such as lift or petsallowed Output: Matching listings with photos, floor plans, move-in date and the agency's details Use: A ready shortlist to send the client the same day

3. Flatfox-First Listing Alerts

Property managers and flat hunters who want new listings before they spread to other portals.

Input: A small maxResults on a daily schedule Output: The newest listings first, each with its Flatfox-first date Use: Morning alerts in Slack, e-mail or a Google Sheet

4. WG-Zimmer and Student Housing Research

University housing offices and student organisations tracking flatshare rooms.

Input: propertyType: "flatshare" for Bern, Lausanne or Zürich Output: Room rents, furnishing, temporary-let flags and move-in dates Use: Semester-start rent reports and housing guides for new students

5. Agency Lead Generation

Service providers selling to Swiss property managers: cleaners, movers, photographers.

Input: A region with propertyType: "residential" Output: The managing agency and its address for every listing Use: A list of the agencies letting the most units in each postcode

6. Commercial Space Scouting

Brokers and growing firms looking for offices and shops.

Input: propertyType: "commercial" with minSpace and a city Output: Price per month or per m² per year, usable space and address Use: Comparing office rents across districts

7. Cross-Portal Deduplication

Data teams who already hold ImmoScout24.ch listings.

Input: Any search Output: The ImmoScout24 / Homegate ID on each syndicated listing Use: Join the two datasets on the ID instead of matching addresses


🔗 Integration Examples

JavaScript/Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('sian.agency/flatfox-property-scraper').call({
locations: ['Zürich'],
dealType: 'rent',
propertyType: 'apartment',
maxResults: 100
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0]);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('sian.agency/flatfox-property-scraper').call(
run_input={'locations': ['Lausanne'], 'dealType': 'rent', 'propertyType': 'apartment', 'maxResults': 100}
)
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item['price'], item.get('rooms'), item.get('city'))

cURL

curl -X POST 'https://api.apify.com/v2/acts/sian.agency~flatfox-property-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"locations": ["Bern"], "propertyType": "flatshare", "maxResults": 50}'

Automation Workflows (N8N / Zapier / Make)

  1. Trigger: a daily schedule
  2. HTTP Request: run the actor with your town and filters
  3. Process: keep the listing IDs you have not seen before
  4. Action: post new listings to Slack, a Google Sheet or your CRM

📊 Performance & Pricing

FREE Tier (Try It Now)

  • 25 listings per run with every field and filter
  • No credit card required
  • Enough to test a town and check the output
  • Unlimited listings per run, up to your Max listings
  • Whole cities and all of Switzerland in one run
  • Pay per listing returned: message rows and filtered-out listings are never charged

💰 $1.20 per 1,000 listings on the Bronze plan, lower on higher plans, plus a small fee per run.

🔗 View current pricing


❓ Frequently Asked Questions

Q: Do I need a Flatfox account, an API key or a proxy? A: No. Enter a place and press Start.

Q: How do I name a place? A: Type a Swiss town or 4-digit postcode, one per line. Genf, Genève and Geneva find the same listings. An empty list searches all of Switzerland.

Q: What if a place is not recognised? A: The run stops before anything is charged and names the place it could not match. It never widens the search on its own.

Q: How many listings can one run return? A: As many as match, up to your Max listings. Busy areas are split into smaller map tiles automatically, so large cities are read completely.

Q: What is the difference between gross rent, net rent and service charges? A: Swiss rentals are advertised as a net rent plus service charges (Nebenkosten). The gross rent is both together, and each row carries whichever parts the advertiser published.

Q: What does "Flatfox-first until" mean? A: Some advertisers publish on Flatfox before sending the listing to the other Swiss portals. The date is when that period ends.

Q: Can I get phone numbers or e-mail addresses? A: No. Flatfox handles contact through its own enquiry form. Each row names the managing agency and its postal address where one is listed.

Q: Does it cover properties for sale? A: Yes, but Flatfox is mainly a rental site, with about 1,900 sale listings against 33,900 rentals.

Q: Which formats can I export? A: JSON, CSV, Excel, XML and HTML from the dataset, or through the API.


🐛 Troubleshooting

"Could not match these places"

  • Use the town name as Flatfox shows it (Zürich, Genève, Lausanne) or its 4-digit postcode
  • Check the spelling; accents are optional

"No listings match this search"

  • Widen the price, rooms or space range
  • Remove a must-have feature, or switch the property type
  • Flatshare rooms exist only to rent

Fewer listings than expected

  • Check Max listings; the run stops there
  • On the free tier a run returns up to 25 listings

A listing link returns "Not found"

  • The listing has been let, sold or withdrawn; search the same town for live listings

Our actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.

However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

You can also read Apify's blog post on the legality of web scraping.

Flatfox is a trademark of Flatfox AG, part of SMG Swiss Marketplace Group. This Actor is not affiliated with, endorsed by or sponsored by Flatfox or SMG Swiss Marketplace Group. It reads only publicly visible listings.


🤝 Support

Join our active support community


Built by SIÁN Agency | More Tools