# Immobiliare.it Scraper | Italy Real Estate API - Sale & Rent (`lentic_clockss/immobiliare-property-scraper`) Actor

Scrape Immobiliare.it Italy homes for sale and rent. Extract prices, rooms, surface, energy class, agency contacts & images — Immobiliare API alternative.

- **URL**: https://apify.com/lentic\_clockss/immobiliare-property-scraper.md
- **Developed by:** [kane liu](https://apify.com/lentic_clockss) (community)
- **Categories:** Real estate, Lead generation, Automation
- **Stats:** 1 total users, 1 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.50 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

### What does Immobiliare.it Scraper do?

**Immobiliare.it Scraper** extracts Italian real estate listings from [Immobiliare.it](https://www.immobiliare.it) across **all major property categories** — homes, offices, shops, warehouses, land, rooms, and new developments — for sale (*vendita*) and rent (*affitto*). Use a city (Milano, Roma, Torino…), select one or many categories, or paste search/detail URLs, then download structured data as JSON, CSV, Excel, or HTML.

This Actor is a practical **Immobiliare.it API alternative**. Acquisition runs through a managed Cloud Run worker, while this Actor securely handles Apify input, Italian residential proxy access, and Dataset delivery.

> **Worker URL is config, not code:** the Actor reads `WORKER_BASE_URL` from Actor environment variables (plus optional per-run `workerBaseUrl`). If you migrate the worker to a new host, update `WORKER_BASE_URL` (and `WORKER_AUTH` if the API key changes) in Apify Console — no Actor code change required. Set `WORKER_PROVIDES_PROXY=1` when the worker supplies its own `PROXY_URL`.

#### Free Apify plan limits (set by this Actor's developer)

| Limit | Free Apify plan | Paid Apify plan |
| --- | --- | --- |
| Runs of this Actor | **10** total | Unlimited |
| Results per run | Up to **500** (`maxItems`) | Up to schema max (**500**) |

These limits are set by the Actor developer, **not Apify**. Hitting the run cap finishes with a clear status message — it is not a platform bug. Upgrade to a paid Apify plan for unlimited runs.

### What can this Immobiliare.it scraper extract?

| Data point | Description |
|---|---|
| Listing ID & URL | Stable Immobiliare annuncio ID and canonical link |
| Channel | `BUY` (vendita) or `RENT` (affitto) |
| Category | Search slug (`case`, `uffici`, `capannoni`…) + `categoryGroup` |
| Title & typology | Headline and listing typology |
| Price | Amount, formatted price, €/m²; `priceOnRequest` when “prezzo su richiesta” |
| Size & rooms | Surface (m²), rooms, bathrooms, bedrooms, floor |
| Energy | Energy class (APE), heating, air conditioning |
| Location | Address, city, province, region, macro/microzone, coordinates |
| Agency | Agency name, phones, supervisor, agency URL |
| Media | Photo gallery URLs when present |
| Rent extras | Deposit, availability, condominium expenses (rent listings) |

### Why scrape Immobiliare.it?

- **Market research** — track asking prices and inventory in Milano, Roma, and other Italian cities
- **Lead generation** — collect agency names and phone numbers from active listings
- **Investment & proptech** — feed CRM, pricing models, or dashboards with fresh sale/rent data
- **Competitive monitoring** — watch new developments and rental supply without manual browsing

### More Actors like this

Looking for another **property portal**, or a scraper outside real estate? Use a specialized Actor when one exists — structured fields, better coverage, usually lower cost. Use this Actor for **Immobiliare.it** Italy sale / rent listings and related search pages.

#### Similar real estate Actors

- [Idealista Scraper](https://apify.com/lentic_clockss/idealista-scraper)
- [SeLoger Scraper](https://apify.com/lentic_clockss/seloger-property-scraper)
- [ImmoScout24 Scraper](https://apify.com/lentic_clockss/immobilienscout24-scraper)
- [Funda Scraper](https://apify.com/lentic_clockss/funda-scraper)
- [Rightmove Scraper](https://apify.com/lentic_clockss/rightmove-property-scraper)
- [Otodom Scraper](https://apify.com/lentic_clockss/otodom-scraper)
- [Zillow & Zumper Scraper](https://apify.com/lentic_clockss/us-real-estate-scraper)
- [Realtor.com Scraper](https://apify.com/lentic_clockss/realtor-com-scraper)
- [Apartments.com Rental Scraper](https://apify.com/lentic_clockss/apartments-com-rental-scraper)
- [Bayut Scraper](https://apify.com/lentic_clockss/bayut-uae-scraper)
- [PropertyGuru Scraper](https://apify.com/lentic_clockss/propertyguru-sg-scraper)
- [realestate.com.au Scraper](https://apify.com/lentic_clockss/realestate-com-au-scraper)

#### Prefer another specialized scraper?

**Jobs & Freelance**

- [LinkedIn Jobs Scraper](https://apify.com/lentic_clockss/linkedin-jobs-scraper)
- [Indeed Jobs Scraper](https://apify.com/lentic_clockss/indeed-jobs-scraper)
- [Upwork Jobs Scraper](https://apify.com/lentic_clockss/upwork-jobs-scraper)
- [Glassdoor Scraper](https://apify.com/lentic_clockss/glassdoor-scraper)
- [Fiverr Gigs Scraper](https://apify.com/lentic_clockss/fiverr-programming-tech-gigs-scraper)
- [Bayt Jobs Scraper](https://apify.com/lentic_clockss/bayt-scraper)

**E-commerce**

- [Walmart Product Scraper](https://apify.com/lentic_clockss/walmart-scraper)
- [Amazon Search Scraper](https://apify.com/lentic_clockss/amazon-search-results-collector)
- [Shopee Search Scraper](https://apify.com/lentic_clockss/shopee-search-scraper)
- [Etsy Scraper](https://apify.com/lentic_clockss/etsy-scraper)
- [SHEIN Product Scraper](https://apify.com/lentic_clockss/shein-scraper)
- [Temu Product Scraper](https://apify.com/lentic_clockss/temu-scraper)
- [Target Product Scraper](https://apify.com/lentic_clockss/target-scraper)
- [Allegro Scraper](https://apify.com/lentic_clockss/allegro-scraper)

**Travel & Stays**

- [Booking.com Hotels Scraper](https://apify.com/lentic_clockss/booking-hotels-scraper)
- [Airbnb Listings Scraper](https://apify.com/lentic_clockss/airbnb-listings-scraper)
- [Expedia Scraper](https://apify.com/lentic_clockss/expedia-scraper)
- [TripAdvisor Scraper](https://apify.com/lentic_clockss/tripadvisor-scraper)

**Social & Content**

- [YouTube Research Scraper](https://apify.com/lentic_clockss/youtube-research-scraper)
- [TikTok Scraper](https://apify.com/lentic_clockss/tiktok-scraper)
- [Reddit Scraper](https://apify.com/lentic_clockss/reddit-scraper)
- [YouTube Shorts Scraper](https://apify.com/lentic_clockss/youtube-shorts-scraper)

**Ads Intelligence**

- [Facebook Ad Library Scraper](https://apify.com/lentic_clockss/facebook-ad-library-scraper)
- [TikTok Ads Scraper](https://apify.com/lentic_clockss/tiktok-ads-top-ads-actor)

**Local & Maps**

- [Google Maps Scraper](https://apify.com/lentic_clockss/google-maps-scraper)

**General Tools**

- [Stealth Web Scraper](https://apify.com/lentic_clockss/stealth-web-scraper)
- [Email Risk Validator](https://apify.com/lentic_clockss/email-risk-validator)
- [Phone Number Intelligence](https://apify.com/lentic_clockss/phone-number-intelligence)

→ See the full catalog in [Related Actors](#related-actors) below, or browse [apify.com/lentic\_clockss](https://apify.com/lentic_clockss).

***

### How to scrape Immobiliare.it

1. Open **Immobiliare.it Scraper** in Apify Console.
2. Set **location** (e.g. `milano`), **channel** (`BUY` or `RENT`), and **property type(s)**, *or* paste Immobiliare **start URLs**.
3. Choose **max listings** / **max pages** and whether to open **detail pages**.
4. Keep **Apify Proxy → RESIDENTIAL + IT** enabled (recommended against DataDome).
5. Click **Start**, then export results from the **Dataset** tab.

#### Property categories (full site coverage)

| Group | Slugs |
|---|---|
| Residential | `case`, `appartamenti`, `attici`, `case-indipendenti`, `loft`, `rustici`, `ville`, `villette` |
| Commercial / industrial | `uffici`, `negozi`, `garage`, `palazzi`, `attivita`, `magazzini`, `capannoni` |
| Rooms / land / new builds | `stanze` (RENT only), `terreni`, `nuove-costruzioni` |

- `propertyType` — single category (backward compatible)
- `propertyTypes` — multi-select; overrides `propertyType` when non-empty
- `all` — expands to **primary nav categories only** (excludes residential subtypes to avoid double-counting with `case`)
- Not included in this Actor: **aste** (auctions) and **estero** (overseas) — rejected at input validation
- `includeRaw` — optional raw `realEstate` payload for debugging
- `allowEmptyResults` — empty inventory finishes as success (`SUCCEEDED_EMPTY`); DataDome blocks still fail

Default run memory is **1024 MB**. Platform usage (compute + residential proxy) is billed on top of PPE events.

#### Example input

```json
{
  "location": "milano",
  "channel": "BUY",
  "propertyTypes": ["uffici", "negozi", "capannoni"],
  "maxItems": 30,
  "maxPages": 1,
  "scrapeDetails": true,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"],
    "apifyProxyCountry": "IT"
  }
}
```

#### Supported URL patterns

- Homes: `https://www.immobiliare.it/vendita-case/milano/`
- Offices / shops / sheds: `/vendita-uffici/…`, `/vendita-negozi/…`, `/vendita-capannoni/…`
- Businesses: `https://www.immobiliare.it/vendita-attivita/milano/`
- New builds: `https://www.immobiliare.it/nuove-costruzioni/roma/`
- Rooms for rent: `https://www.immobiliare.it/affitto-stanze/milano/`
- Detail: `https://www.immobiliare.it/annunci/{id}/`
- Pagination: `?pag=2` (and higher)

### How much does it cost to scrape Immobiliare.it?

This Actor uses **Pay per event** pricing. You pay for:

| Event | Price |
|---|---|
| **Actor Start** (`apify-actor-start`) | **$0.005** per start (scaled by run memory: one event per GB, minimum one) |
| **result** (`apify-default-dataset-item`) | **$2.50 / 1,000** results (**$0.0025** per listing in the default dataset) |

**Platform usage** (compute, residential proxy, etc.) is **also billed to the user** on top of event charges.

Example (illustrative): 1 start + 1,000 listings ≈ **$0.005 + $2.50** in event fees, plus platform usage for the run.

Tip: set a **max total charge** on the run if you want a hard spending cap.

### Input

Open the **Input** tab for the full schema. Main fields:

| Field | Purpose |
|---|---|
| `startUrls` | Immobiliare search or detail URLs |
| `location` | City slug when building a search (`milano`, `roma`, …) |
| `channel` | `BUY` or `RENT` |
| `propertyType` | Single category slug, or `all` for primary nav |
| `propertyTypes` | Multi category list (wins over `propertyType`) |
| `maxItems` / `maxPages` | Caps across all categories (~25 listings per SRP page; free users capped at 500 `maxItems`/run) |
| `scrapeDetails` | Enrich each card from the detail page |
| `requestDelayMillis` | Delay between navigations |
| `proxyConfiguration` | Apify RESIDENTIAL IT when Actor mints proxy; ignored if `WORKER_PROVIDES_PROXY=1` |
| `workerBaseUrl` | Optional per-run worker origin override (Advanced) |

### Output example

You can download the dataset extracted by Immobiliare.it Scraper in JSON, HTML, CSV, or Excel.

```json
{
  "id": "126399731",
  "url": "https://www.immobiliare.it/annunci/126399731/",
  "source": "immobiliare",
  "sourceLayer": "srp+ldp",
  "channel": "RENT",
  "category": "case",
  "categoryGroup": "residential",
  "title": "Bilocale via Livinallongo 12, Rogoredo, Milano",
  "priceAmount": 1050,
  "priceFormatted": "€ 1.050/mese",
  "rooms": 2,
  "surface": 70,
  "energyClass": "A",
  "city": "Milano",
  "agency": {
    "name": "Tempoaffitti Milano Umbria",
    "phones": ["02 8127 3242"]
  },
  "scrapedAt": "2026-07-18T08:40:00.000Z"
}
```

### Is it legal to scrape Immobiliare.it?

Our scrapers are ethical and do not extract private user data that is not shown on public listing pages. They only extract what Immobiliare.it has chosen to display publicly. You should still comply with Immobiliare.it terms, applicable laws (including GDPR where personal data appears), and only scrape when you have a legitimate purpose. If unsure, consult your lawyers.

### FAQ

#### Why did my free-plan run stop after 10 runs?

Free Apify plan users get **10 runs** of this Actor and **up to 500 results per run**. These limits are set by the Actor developer (not Apify). When you hit the run cap, the run finishes with a clear status message — it is not a platform bug. Upgrade to a paid Apify plan for unlimited runs.

#### How do I scrape Immobiliare.it for sale listings?

Set `channel` to `BUY` or use a URL like `/vendita-case/milano/`.

#### How do I scrape Immobiliare.it rentals?

Set `channel` to `RENT` or use `/affitto-case/{city}/`.

#### Can I scrape offices, shops, warehouses, or land?

Yes. Use `propertyType` / `propertyTypes` with slugs like `uffici`, `negozi`, `capannoni`, `terreni`, or `nuove-costruzioni`. Set `propertyTypes: ["all"]` for every primary nav category (not residential subtypes). Auctions (`aste`) and overseas (`estero`) are not included.

#### Do I need an Immobiliare.it API key?

No. This Actor retrieves public listing data through its managed acquisition service and returns structured data — useful when you need an Immobiliare data API without an official partnership.

#### Why is residential proxy recommended?

Immobiliare.it is protected by **DataDome**. Direct HTTP and many datacenter IPs are blocked. Apify RESIDENTIAL proxies with country **IT** are passed to the managed Cloud Run worker for acquisition.

#### Can I export Immobiliare listings to Google Sheets?

Yes. Use Apify **integrations** or the Dataset API to push results into Sheets, webhooks, or your own backend.

#### What if a run returns zero results?

Check that the location/URL is valid, keep residential IT proxy on, and inspect Key-Value Store records `ERROR_SUMMARY` / `RUN_SUMMARY` for worker diagnostics.

### Tips for better Immobiliare scraping

- Start with `maxItems` 10–50 while testing cost and field coverage.
- Enable `scrapeDetails` when you need energy class, costs, or full galleries.
- Prefer sticky residential sessions and a polite `requestDelayMillis` (e.g. 2000).
- Use SEO city URLs (`/vendita-case/milano/`) rather than guessing internal filter IDs.

### Support

Questions or feature requests? Open an issue on the Actor page or contact the developer through Apify. Feedback on Italian cities, commercial property types, or export formats is welcome.

***

### Related Actors

All **77** public Actors from \[[lentic\_clockss](https://apify.com/lentic_clockss)]. Click a name to open the Store detail page.

#### Jobs & Freelance

- [LinkedIn Jobs Scraper](https://apify.com/lentic_clockss/linkedin-jobs-scraper)
- [Bayt Jobs Scraper](https://apify.com/lentic_clockss/bayt-scraper)
- [Fiverr Gigs Scraper](https://apify.com/lentic_clockss/fiverr-programming-tech-gigs-scraper)
- [Freelancer.com Scraper](https://apify.com/lentic_clockss/freelancer-scraper)
- [Glassdoor Scraper](https://apify.com/lentic_clockss/glassdoor-scraper)
- [Himalayas Jobs Scraper](https://apify.com/lentic_clockss/himalayas-jobs-scraper)
- [Indeed Jobs Scraper](https://apify.com/lentic_clockss/indeed-jobs-scraper)
- [Jobicy Remote Jobs Scraper](https://apify.com/lentic_clockss/jobicy-remote-jobs-scraper)
- [RemoteOK Jobs Scraper](https://apify.com/lentic_clockss/remoteok-all-jobs-scraper)
- [SEEK Jobs Scraper](https://apify.com/lentic_clockss/seek-scraper)
- [Upwork Jobs Scraper](https://apify.com/lentic_clockss/upwork-jobs-scraper)

#### Real Estate

- [Zillow & Zumper Scraper](https://apify.com/lentic_clockss/us-real-estate-scraper)
- [Realtor.com Scraper](https://apify.com/lentic_clockss/realtor-com-scraper)
- [99.co Scraper](https://apify.com/lentic_clockss/ninetynine-co-sg-scraper)
- [Realtor.com Agents Scraper](https://apify.com/lentic_clockss/realtor-com-agents-scraper)
- [Apartments.com Rental Scraper](https://apify.com/lentic_clockss/apartments-com-rental-scraper)
- [Bayut Scraper](https://apify.com/lentic_clockss/bayut-uae-scraper)
- [Craigslist Housing Scraper](https://apify.com/lentic_clockss/craigslist-housing-scraper)
- [Daft.ie Scraper](https://apify.com/lentic_clockss/daft-property-scraper)
- [Dot Property Scraper](https://apify.com/lentic_clockss/dot-property-th-scraper)
- [FINN.no Scraper](https://apify.com/lentic_clockss/finn-scraper)
- [Funda Scraper](https://apify.com/lentic_clockss/funda-scraper)
- [Hepsiemlak Scraper](https://apify.com/lentic_clockss/hepsiemlak-scraper)
- [Idealista Scraper](https://apify.com/lentic_clockss/idealista-scraper)
- [Immobiliare.it Scraper](https://apify.com/lentic_clockss/immobiliare-property-scraper)
- [ImmoScout24 Scraper](https://apify.com/lentic_clockss/immobilienscout24-scraper)
- [Naver Land Scraper](https://apify.com/lentic_clockss/naver-land-scraper)
- [OpenSooq Scraper](https://apify.com/lentic_clockss/opensooq-real-estate-scraper)
- [Otodom Scraper](https://apify.com/lentic_clockss/otodom-scraper)
- [Property Finder Scraper](https://apify.com/lentic_clockss/property-finder-uae-scraper)
- [PropertyGuru Scraper](https://apify.com/lentic_clockss/propertyguru-sg-scraper)
- [realestate.com.au Scraper](https://apify.com/lentic_clockss/realestate-com-au-scraper)
- [Realtor.ca Scraper](https://apify.com/lentic_clockss/realtor-ca-scraper)
- [Rightmove Scraper](https://apify.com/lentic_clockss/rightmove-property-scraper)
- [SeLoger Scraper](https://apify.com/lentic_clockss/seloger-property-scraper)
- [SUUMO Scraper](https://apify.com/lentic_clockss/suumo-property-scraper)
- [Zillow Group Scraper](https://apify.com/lentic_clockss/zillow-group-scraper)

#### E-commerce

- [Shopee Search Scraper](https://apify.com/lentic_clockss/shopee-search-scraper)
- [E-commerce Scraper](https://apify.com/lentic_clockss/ecommerce-scraper)
- [1688 Global Product Search Scraper](https://apify.com/lentic_clockss/1688-global-scraper)
- [Allegro Scraper](https://apify.com/lentic_clockss/allegro-scraper)
- [Amazon Search Scraper](https://apify.com/lentic_clockss/amazon-search-results-collector)
- [ASOS Product Scraper](https://apify.com/lentic_clockss/asos-scraper)
- [Cdiscount Product Scraper](https://apify.com/lentic_clockss/cdiscount-scraper)
- [Costco Product Scraper](https://apify.com/lentic_clockss/costco-scraper)
- [Coupang Product Scraper](https://apify.com/lentic_clockss/coupang-scraper)
- [Etsy Scraper](https://apify.com/lentic_clockss/etsy-scraper)
- [Lazada Scraper](https://apify.com/lentic_clockss/lazada-ph-search-results-collector)
- [MercadoLibre Scraper](https://apify.com/lentic_clockss/mercadolibre-scraper)
- [Mercari Japan Scraper](https://apify.com/lentic_clockss/mercari-scraper)
- [Rakuten Japan Scraper](https://apify.com/lentic_clockss/rakuten-scraper)
- [SHEIN Product Scraper](https://apify.com/lentic_clockss/shein-scraper)
- [Target Product Scraper](https://apify.com/lentic_clockss/target-scraper)
- [Temu Product Scraper](https://apify.com/lentic_clockss/temu-scraper)
- [Walmart Product Scraper](https://apify.com/lentic_clockss/walmart-scraper)

#### Travel & Stays

- [Booking.com & Airbnb Scraper](https://apify.com/lentic_clockss/booking-airbnb-scraper)
- [Agoda Scraper](https://apify.com/lentic_clockss/agoda-scraper)
- [Airbnb Listings Scraper](https://apify.com/lentic_clockss/airbnb-listings-scraper)
- [Booking.com Hotels Scraper](https://apify.com/lentic_clockss/booking-hotels-scraper)
- [Despegar Scraper](https://apify.com/lentic_clockss/despegar-scraper)
- [Expedia Scraper](https://apify.com/lentic_clockss/expedia-scraper)
- [Traveloka Scraper](https://apify.com/lentic_clockss/traveloka-scraper)
- [Travelstart Flights Scraper](https://apify.com/lentic_clockss/travelstart-scraper)
- [Trip.com Scraper](https://apify.com/lentic_clockss/trip-com-scraper)
- [TripAdvisor Scraper](https://apify.com/lentic_clockss/tripadvisor-scraper)

#### Social & Content

- [TikTok Scraper](https://apify.com/lentic_clockss/tiktok-scraper)
- [Reddit Scraper](https://apify.com/lentic_clockss/reddit-scraper)
- [YouTube Shorts Scraper](https://apify.com/lentic_clockss/youtube-shorts-scraper)
- [YouTube Research Scraper](https://apify.com/lentic_clockss/youtube-research-scraper)
- [Hacker News Scraper](https://apify.com/lentic_clockss/hacker-news-scraper)

#### Ads Intelligence

- [Facebook Ad Library Scraper](https://apify.com/lentic_clockss/facebook-ad-library-scraper)
- [Google Ads Transparency VN](https://apify.com/lentic_clockss/google-ads-transparency-center-vn)
- [TikTok Ads Scraper](https://apify.com/lentic_clockss/tiktok-ads-top-ads-actor)

#### Local & Maps

- [Google Maps Scraper](https://apify.com/lentic_clockss/google-maps-scraper)

#### General Tools

- [Stealth Web Scraper](https://apify.com/lentic_clockss/stealth-web-scraper)
- [Email Risk Validator](https://apify.com/lentic_clockss/email-risk-validator)
- [Phone Number Intelligence](https://apify.com/lentic_clockss/phone-number-intelligence)

→ Browse the full profile: [apify.com/lentic\_clockss](https://apify.com/lentic_clockss)

# Actor input Schema

## `startUrls` (type: `array`):

Immobiliare.it search (SRP) or listing detail (LDP) URLs. Search URLs override location/channel/propertyTypes when provided.

## `location` (type: `string`):

Italian city slug (milano, roma, torino, napoli, firenze). Ignored when startUrls contain a search URL.

## `channel` (type: `string`):

BUY (vendita) or RENT (affitto). Used when building searches from location. Some categories are sale-only (e.g. nuove-costruzioni).

## `propertyType` (type: `string`):

Single estate category slug. Ignored when propertyTypes is non-empty. Use all to crawl primary nav categories (not residential subtypes).

## `propertyTypes` (type: `array`):

Multiple categories to crawl in one run (shared maxItems, ID de-dupe). When set, overrides propertyType. all expands to primary nav only.

## `maxItems` (type: `integer`):

Maximum property records to save across all selected categories (1–500). Free Apify plan users are limited to 500 results per run and 10 total runs of this Actor — limits set by the Actor developer.

## `maxPages` (type: `integer`):

Maximum SRP pages per category search URL (~25 listings per page).

## `scrapeDetails` (type: `boolean`):

Ask the Cloud Run worker to enrich each listing from its detail page.

## `includeRaw` (type: `boolean`):

Attach the Immobiliare realEstate JSON under each item's raw field (debug; larger dataset items).

## `allowEmptyResults` (type: `boolean`):

When true, finish SUCCEEDED with zero rows if search pages load but inventory is empty. DataDome/proxy blocks still fail.

## `requestDelayMillis` (type: `integer`):

Politeness delay before each browser navigation (keep higher for DataDome).

## `proxyConfiguration` (type: `object`):

Apify RESIDENTIAL IT when the Actor mints proxyUrl. Ignored when Actor env WORKER\_PROVIDES\_PROXY=1 (worker uses its own PROXY\_URL).

## `workerBaseUrl` (type: `string`):

Override the Cloud Run worker origin for this run. Defaults to Actor env WORKER\_BASE\_URL. Use when testing a staging worker; production migrations should update WORKER\_BASE\_URL in Actor settings (no code change).

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.immobiliare.it/vendita-case/milano/"
    }
  ],
  "location": "milano",
  "channel": "BUY",
  "propertyType": "case",
  "propertyTypes": [],
  "maxItems": 20,
  "maxPages": 1,
  "scrapeDetails": true,
  "includeRaw": false,
  "allowEmptyResults": true,
  "requestDelayMillis": 2000,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "IT"
  },
  "workerBaseUrl": ""
}
```

# Actor output Schema

## `listings` (type: `string`):

Normalized Immobiliare listing records from SRP and optional LDP enrichment.

## `runSummary` (type: `string`):

Counts, engine, and timestamps for the run.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://www.immobiliare.it/vendita-case/milano/"
        }
    ],
    "location": "milano",
    "workerBaseUrl": ""
};

// Run the Actor and wait for it to finish
const run = await client.actor("lentic_clockss/immobiliare-property-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": [{ "url": "https://www.immobiliare.it/vendita-case/milano/" }],
    "location": "milano",
    "workerBaseUrl": "",
}

# Run the Actor and wait for it to finish
run = client.actor("lentic_clockss/immobiliare-property-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://www.immobiliare.it/vendita-case/milano/"
    }
  ],
  "location": "milano",
  "workerBaseUrl": ""
}' |
apify call lentic_clockss/immobiliare-property-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=lentic_clockss/immobiliare-property-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/0bR4dKysgCE17ZlNa/builds/EFWu32xbVLDQLNeYg/openapi.json
