Immobiliare.it Scraper — Italy Property Data & API
Pricing
from $3.00 / 1,000 overview listings
Immobiliare.it Scraper — Italy Property Data & API
Immobiliare.it scraper and Italian real estate data API for Italy. Search sale and rent listings by place, search URL or listing URL; return price, price per square metre, surface area, rooms, bedrooms, bathrooms, floor, build year, energy class, heating, condominium fees and agency.
Pricing
from $3.00 / 1,000 overview listings
Rating
0.0
(0)
Developer
SIÁN OÜ
Maintained by CommunityActor stats
1
Bookmarked
13
Total users
3
Monthly active users
7 days ago
Last modified
Categories
Share
Immobiliare.it Scraper — Italy Property Data & API 🇮🇹🏠
🎉 The fast, no-code Immobiliare.it data API — scrape ~90% of useful fields essentially free, no immobiliare.it API key required
Built for property investors, agents, proptech teams, and market researchers who need clean Italian real-estate data — for sale and for rent — across every city in Italy.
🔎 What is the Immobiliare.it Scraper — and when should you use it?
The Immobiliare.it Scraper turns Italian property listings from immobiliare.it 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: sale or rent listings across Italy — price, price per m², surface area, rooms, bedrooms, bathrooms, floor, build year, energy class, heating, condominium fees, address and agency.
Use something else when: you need a different country. Use Smart Idealista Scraper for Spain and Portugal. Use Funda Property Scraper for the Netherlands. Use Otodom Property Scraper for Poland.
🤖 Use with AI agents
Already connected to the Apify MCP server? Just ask for this Actor by name: sian.agency/immobiliare-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 Italian property data from Immobiliare.it using the Apify Actor `sian.agency/immobiliare-property-scraper`.Use it when I need: sale or rent listings across Italy — price, price per m², surface area, rooms, bedrooms, bathrooms, floor, build year, energy class, heating, condominium fees, address and agency.Don't use it when: you need a different country — use smart-idealista-scraper or funda-property-scraper or otodom-property-scraper instead.How to call it: keep `scrapeMode` on `overview` for fast rows or `detail` for the full record; search with `searchMode: byPlace` and a `places` list, or paste `searchUrls`.Start with this input:{"scrapeMode": "overview","searchMode": "byPlace","places": ["Roma"],"contract": "sale","maxResults": 50}Ask me which Italian city or comune, and whether you want sale or rent, then run the Actor and summarise the results as a table.
Things you can ask your agent for:
- Compare price per m² across Roma, Milano and Napoli.
- Find flats in Firenze with energy class A or B and a lift.
- Pull condominium fees for listings in Torino to model running costs.
Machine-readable API, MCP config and OpenAPI definition for this Actor are published at apify.com/sian.agency/immobiliare-property-scraper.md.
📋 Overview
Pull listings from Immobiliare.it — Italy's #1 property portal — as clean JSON or CSV. For sale (vendita) and for rent (affitto), across Milano, Roma, Torino, Napoli, Firenze and every comune in Italy. Pick the depth that fits the job: a fast, low-cost overview scan for sizing a market, or the full per-property record.
Why investors and agents choose us:
- ⚡ Two depths, one actor: a fast Overview scan for whole-market sweeps, or full Detail records when you need everything
- 🔁 Detail = Overview + more: every overview field is on a Detail row too, with deeper data added on top — never less
- 💰 Pay-per-result pricing: Overview from $3 per 1,000 listings — only charged for listings actually extracted
- 📐 Analysis-ready: price, size in m², rooms, baths, floor, price-per-m² and GPS coordinates on every row
- 🎯 Three ways to search: by city name, by a pasted Immobiliare.it search URL (your filters honored), or by specific listing URLs
- 💎 No API key, no code: no immobiliare.it API access needed — point, click, export a real-estate data feed
- 🆓 Free to try: up to 25 listings per run, no credit card
✨ Features
- 🧭 Overview mode: 25 listings per page — price, specs, location, agency, photo gallery — ideal for fast market sweeps
- 🔍 Detail mode: full per-listing record — energy class, construction year, condominium fees, complete feature list, hi-res photos
- 🗺️ By place / search URL / listing URL: type a city + sale/rent, paste an Immobiliare.it search link, or drop in specific listings
- 🎚️ Filters: contract (sale/rent), property type (apartments, villas, detached houses), price range, min rooms, min surface
- 📐 Price-per-m² + thumbnail computed on every row for instant comparison
- 📍 GPS + full address on every listing for mapping and territory analysis
- 📞 Agent contact built in: agency name, agent name and phone on every listing — instant lead lists
- 🧾 Self-documenting datasets: every row carries a
metadataobject recording the exact search settings that produced it - 📤 Clean exports: JSON, CSV, Excel, or the full REST API
🎬 Quick Start
Pick a scrape depth, choose how to search, set filters, and run. Results stream to the Apify dataset as clean JSON/CSV.
curl -X POST "https://api.apify.com/v2/acts/sian.agency~immobiliare-property-scraper/runs?token=[YOUR_TOKEN]" \-H 'Content-Type: application/json' \-d '{"scrapeMode":"overview","searchMode":"byPlace","places":["Milano"],"contract":"sale","maxResults":50}'
🚀 Getting Started (3 Simple Steps)
Step 1: Pick your scrape depth
Overview for a fast price + spec scan (25 listings/page), or Detail for the full per-property record.
Step 2: Choose how to search
By place (type a city like Milano + sale/rent), By search URL (paste an Immobiliare.it search link — filters honored), or By listing URL (detail mode — drop in specific listings).
Step 3: Set filters & run
Property type, price range, min rooms, min surface, Max results — then hit Start.
That's it! In under a minute, you'll have:
- A clean dataset of Italian property listings (JSON / CSV / Excel)
- Price, size, rooms, GPS, agency and price-per-m² on every row
- A repeatable, no-code real-estate data feed
📥 Input Configuration
| Field | Type | Required | Description |
|---|---|---|---|
| scrapeMode | string | No | overview (fast & cheap) or detail (full fields). Default overview. |
| searchMode | string | No | byPlace, bySearchUrl, or byListingUrl (detail only). |
| places | array | No | City / comune names, e.g. ["Milano","Roma"] (byPlace). |
| contract | string | No | sale (vendita) or rent (affitto). Default sale. |
| propertyType | string | No | appartamenti, ville, case-indipendenti, or empty for all. |
| searchUrls | array | No | Immobiliare.it search URLs (bySearchUrl) — on-page filters honored. |
| listingUrls | array | No | Listing URLs or IDs (detail / byListingUrl). |
| maxResults | integer | No | Max listings this run. FREE tier capped at 25. |
| minPrice / maxPrice | integer | No | Price range filter (€). |
| minRooms / minSurface | integer | No | Minimum rooms / surface (m²). |
Example — by place:
{"scrapeMode": "overview","searchMode": "byPlace","places": ["Milano", "Roma"],"contract": "sale","propertyType": "appartamenti","maxPrice": 500000,"maxResults": 200}
Example — by search URL:
{"scrapeMode": "overview","searchMode": "bySearchUrl","searchUrls": ["https://www.immobiliare.it/vendita-ville/roma/"],"maxResults": 100}
📤 Output
Results are saved to the Apify dataset with 30+ fields including:
| Field | Type | Description |
|---|---|---|
| propertyTitle | string | Listing title |
| url | string | Listing URL |
| contract | string | sale or rent |
| typology | string | Property type (Appartamento, Villa, …) |
| price | number | Asking price (€) |
| price_per_sqm_eur | number | Price per m² (computed) |
| surface_sqm | number | Surface area (m²) |
| rooms / bedrooms / bathrooms | number | Room counts |
| floor / elevator | string / bool | Floor + lift |
| city / province / region | string | Location rollup |
| address / latitude / longitude | string / number | Address + GPS |
| agency_name / agent_name / agency_phone | string | Agency + agent contact |
| agency_id / agency_url / is_private | int / string / bool | Seller |
| energy_class | string | (detail) energy efficiency class |
| building_year | number | (detail) construction year |
| condominium_expenses | string | (detail) monthly condo fees |
| features / photos / thumbnail | array / string | Amenities + photo gallery |
Example:
{"id": 128819432,"propertyTitle": "Quadrilocale via Alessandro Stradella, Milano","url": "https://www.immobiliare.it/annunci/128819432/","contract": "sale","typology": "Appartamento","price": 1300000,"price_per_sqm_eur": 8667,"surface_sqm": 150,"rooms": 4,"bathrooms": 2,"floor": "2°, con ascensore","city": "Milano","province": "Milano","region": "Lombardia","address": "Via Alessandro Stradella","latitude": 45.4786,"longitude": 9.216,"agency_name": "Agenzia Elle B Immobiliare","agent_name": "Laura Barletta","agency_phone": "0481 375481","energy_class": "A","building_year": 1920,"condominium_expenses": "€ 235/mese","photo_count": 23}
💼 Use Cases & Examples
1. Market research & price benchmarking
Analysts sizing a city or neighbourhood market.
Input: byPlace Milano, sale, all residential. Output: thousands of listings with price-per-m². Use: build a live price index per zone.
2. Investment sourcing
Investors hunting undervalued stock.
Input: byPlace + maxPrice + minSurface. Output: filtered listings with €/m² and GPS. Use: rank deals by price-per-m² vs zone median.
3. Lead generation for agents
Agents building a private-seller / agency contact list.
Input: Overview scan of a target area. Output: agency_name + is_private on every row. Use: prospecting and competitive coverage.
4. Proptech & valuation data feeds
Proptech teams powering AVMs and dashboards.
Input: scheduled bySearchUrl runs. Output: a clean, repeatable Italian real-estate data feed. Use: feed models without an immobiliare.it API.
5. Relocation & buyer search
Relocation services shortlisting homes for clients.
Input: byPlace + filters + Detail mode. Output: full records with photos, energy class, condo fees. Use: curated client shortlists.
6. Comparative market analysis (CMA)
Appraisers preparing valuations. Input: Detail mode on a set of comparable listings. Output: building year, energy class, full features. Use: defensible CMA inputs.
🔗 Integration Examples
JavaScript/Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('sian.agency/immobiliare-property-scraper').call({scrapeMode: 'overview', searchMode: 'byPlace', places: ['Milano'], contract: 'sale', maxResults: 50,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0]);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run = client.actor('sian.agency/immobiliare-property-scraper').call(run_input={'scrapeMode': 'overview', 'searchMode': 'byPlace', 'places': ['Milano'], 'contract': 'sale', 'maxResults': 50})for item in client.dataset(run['defaultDatasetId']).iterate_items():print(item)
cURL
curl -X POST 'https://api.apify.com/v2/acts/sian.agency~immobiliare-property-scraper/runs?token=YOUR_TOKEN' \-H 'Content-Type: application/json' \-d '{"scrapeMode":"overview","searchMode":"byPlace","places":["Milano"],"contract":"sale","maxResults":50}'
Automation Workflows (N8N / Zapier / Make)
- Trigger: Schedule (e.g. daily) or webhook
- HTTP Request: Call the actor API
- Process: Handle the JSON results
- Action: Save to a sheet/DB, notify, or transform
📊 Performance & Pricing
FREE Tier (Try It Now)
- 25 listings per run — full feature access, same quality
- No credit card required
- Perfect for testing and small projects
PAID Tier (Production Ready)
- Unlimited listings per run
- Pay-per-result: only charged for listings actually extracted
- Overview and Detail priced separately so you only pay for the depth you use
💰 Overview from $3 per 1,000 listings — Detail priced separately for the full per-property record.
❓ Frequently Asked Questions
Q: How many listings can I extract? A: FREE tier: 25 per run. PAID tier: unlimited.
Q: Do I need an Immobiliare.it API key? A: No. There's no setup and no immobiliare.it account or API key required.
Q: What's the difference between Overview and Detail? A: Overview is a fast, low-cost scan covering ~90% of useful fields. Detail adds energy class, construction year, condominium fees, the complete feature list and hi-res photos — and includes everything Overview returns.
Q: Can I use my own Immobiliare.it search filters?
A: Yes — paste your search URL in bySearchUrl mode and the on-page filters (type, price, etc.) are honored.
Q: What output formats are available? A: JSON, CSV, Excel — export directly from the Apify dataset.
Q: Does it work for both sale and rent?
A: Yes — set contract to sale (vendita) or rent (affitto).
Q: Is this legal? A: We only extract publicly available data. See the legal note below.
🐛 Troubleshooting
No results returned
- Check the city name spelling (e.g.
Milano, notMilan), or paste a working Immobiliare.it search URL instead. - Loosen filters — an overly tight price/surface range can return zero listings.
Property type filter seems ignored
- Use a supported type (
appartamenti,ville,case-indipendenti) or leave it empty for all residential.
Fewer results than expected
- FREE tier is capped at 25 listings per run. Upgrade to PAID for unlimited, or raise
maxResults.
⚖️ Is it legal to scrape data?
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.
This is an independent tool and is not affiliated with, endorsed by, or sponsored by Immobiliare.it or its parent company. "Immobiliare.it" is a trademark of its respective owner.
🤝 Support
Join our active support community
- For issues or questions, open an issue from the actor page
- Check the SIÁN Agency Store for more automation tools
- 📧 apify@sian-agency.online
Built by SIÁN Agency | More Tools