# Changelog of Smart Idealista Scraper - Spain, Italy, Portugal Properties (`sian.agency/smart-idealista-scraper`) Actor

- **URL**: https://apify.com/sian.agency/smart-idealista-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/sian.agency/smart-idealista-scraper.md

## Changelog

All notable changes to **Smart Idealista Scraper** will be documented in this file.

### \[2026-08-24]

#### 📄 New: A Run Report After Every Search

- **Every search mode now writes a report** - Search-URL, map-area, deep-listing and agency runs get the same report a city search gets. Open it from the Output tab of any run.
- **Itemized charges** - Every charge on the run, with counts and a total, so what you read matches what you were billed.
- **Free bonus properties, counted** - The report shows how many properties you got beyond the 30 charged on each page.
- **Best value first** - The lowest price per square metre of the whole run, as copy-paste text you can drop into a note or a message.
- **Failed pages come with a fix** - Each missing page says what happened and hands you a one-click retry input to paste straight back into the Idealista scraper.
- **The report survives a failed run** - It is written even when a run ends early, so you can always see what you got and what you paid.

#### ✨ Clearer Console, Clearer Logs

- **Icons on every column and filter** - Property listings, agency profiles, dropdown options and search filters all carry an icon, so scanning the dataset and the input form is faster.
- **A run log you can follow** - Tier benefits up front, a final summary at the end, and property counts that match the charges.

#### 💎 User Benefits

- One place to check a run: what came back, what is missing, and what it cost
- Retry only the pages that failed instead of re-running the whole search
- Faster reading of both the Idealista dataset and the input form

#### 🎯 Use Cases

- Market analysts checking coverage before exporting a city dataset to CSV
- Lead-gen teams re-running only the agency slugs that came back empty
- Property investors sharing the best price-per-m2 find from a run without opening the dataset

### \[2026-08-23]

#### 🏢 Agency Profiles Bill at Their Published Rate

- **An agency profile bills as an agency profile** - A profile is a bigger unit of work than a single listing, and it now charges the agency-profile rate shown on the pricing page rather than the per-property rate. Slugs that fail are still never charged.
- **Run report in the Output tab** - Every run's HTML summary is now linked from the Output tab, next to the property data.
- **Ask an AI agent for it by name** - The Idealista scraper is discoverable over MCP, so Claude, ChatGPT or Cursor can run a Spanish, Italian or Portuguese property search for you and hand back a table.

#### 💎 User Benefits

- Pricing that matches the pricing page, with no surprises either way
- Property data and the run summary reachable from the same screen
- A property search you can trigger in plain language from an AI assistant

#### 🎯 Use Cases

- Agencies building contact lists over MCP without touching the Console
- Analysts pulling a Madrid or Lisbon dataset straight into an AI workflow

### \[2026-07-22]

#### 🏢 Fixed: Property Category now actually filters

- **Buildings, Offices, Lands, Garages, Rooms, Storage Rooms, Commercial and New Homes searches return that category.** The Property Category selector was being ignored, so every location search returned homes regardless of the category picked. Selecting 🏢 Buildings in Madrid now returns buildings (159 listings) instead of homes (17,600+).
- **Unexpected data-source replies no longer look like "0 properties found."** When a reply cannot be read, the run says so instead of finishing successfully with an empty dataset.

### \[2026-07-02]

#### 🏢 New: Agency Profiles Mode

- **Agency Profiles from Slugs or URLs** - Fill the new `agencySlugs` field with agency slugs (or full agency page URLs) and get one structured profile per agency: commercial name, phone, office address with GPS, active-since year, languages, and total active listings
- **Listings-by-Location Breakdown** - Each profile includes the agency's portfolio footprint by province, municipality, and district (sale or rent, following your Operation setting)
- **Works with Your Search Results** - Every property row already carries an `agencyUrl`; paste those straight back in to enrich the agencies behind the listings
- **Fair Pricing** - $0.003 per agency profile (same rate as a property), PAID tier

#### 💎 User Benefits

- Build agency contact lists for a city without copying data by hand
- See which agencies dominate a neighborhood before reaching out
- Failed slugs never bill you — you pay only for delivered profiles

#### 🎯 Use Cases

- Lead generation targeting the most active agencies in a market
- Competitor mapping: portfolio size and coverage per agency
- Enriching scraped listings with the office behind each ad

### \[2026-06-08]

#### 🛡️ Reliability

- **Search-by-URL is steadier** - When a search link's location can't be read on the first try (an intermittent anti-bot block), the scraper now retries the lookup with a fresh session instead of giving up — so the same URL no longer returns an empty result on a transient hiccup.

### \[2026-06-07]

#### 🚀 Three New Ways to Search — URL, Map Area & Deep Profiles

- **Search by URL** - Paste any Idealista search link — location and filters detected automatically
- **Draw-an-Area (Polygon) Search** - Every listing inside a hand-drawn map shape, as full property cards
- **Deep Single-Property Profiles** - Energy rating, year built, community fees & IBI, price-change history, floor-plan & 3D-tour links
- **Spain, Italy & Portugal** - Every search mode works across all three Idealista markets

#### 🛡️ Reliability Upgrade

- **Self-Healing Location IDs** - Outdated location codes resolve automatically — old bookmarks, saved tasks, and CSV lists keep working
- **Rock-Solid Under Load** - Automatic retry with smart backoff absorbs traffic spikes; parallel runs no longer drop pages
- **Clear Errors** - Invalid locations return an explicit message instead of silent empty results

#### 💎 User Benefits

- Skip location-code lookups — paste a URL or draw on the map and run
- Cleaner datasets at any scale: fewer error rows, more properties
- Data a standard search can't give you: exact map boundaries and premium property details

#### 🎯 Use Cases

- Property investors drawing a precise neighborhood boundary and pulling every listing inside it
- Buyer's agents exporting a client's saved Idealista search to a spreadsheet in seconds
- Market analysts comparing energy ratings, build years, and price history like-for-like

### \[2025-02-18]

#### 🆕 CSV Bulk Upload - Super Easy Data Entry!

- **CSV File Upload** - Upload bulk locations via CSV file (PAID tier)
- **No Headers Required** - Works with or without header row
- **Flexible Column Names** - Supports `locationId`, `location_id`, or `id` / `locationName`, `location_name`, or `name`
- **Excel/Google Sheets Friendly** - Create locations in spreadsheet, save as CSV, upload
- **Automatic Duplicate Detection** - Removes duplicate locationIds automatically
- **Smart Header Detection** - Auto-detects if CSV has headers or assumes column order

#### 💎 User Benefits

- Bulk location entry is now as easy as copying from Excel
- No need to format JSON manually
- Works with any spreadsheet software
- Perfect for managing large location lists

#### 🎯 Use Cases

- Real estate agents analyzing multiple neighborhoods at once
- Property investors scanning entire cities/regions
- Market research across multiple geographic areas

### \[2024-11-05]

#### 🆕 Modular Architecture & Enhanced Reliability

- **Actionable Error Messages** - All errors now include specific suggestions for resolution
- **Better Location Detection** - More robust URL parsing with fallback patterns
- **Enhanced Input Validation** - Clear feedback for invalid parameters
- **Centralized Configuration** - All magic numbers moved to config files

#### 💎 User Benefits

- Faster troubleshooting when inputs need correction
- More reliable location extraction from Idealista URLs
- Less time spent debugging configuration issues
- Cleaner codebase for faster feature development

#### 🎯 Use Cases

- Quick error resolution when location IDs are incorrect
- Automated location detection from URLs (BETA feature)

### \[2024-10-15]

#### 🚀 Tiered Pricing & Smart Filtering

- **FREE Tier**: Generous monthly allowance to test before you scale
- **PAID Tier**: Unlimited properties with 5 concurrent runs
- **Cleaner Searches** - Only your chosen filters are applied — no noise, faster results
- **Monthly Limits** - Proper enforcement for FREE tier

#### 💎 User Benefits

- Predictable pricing with generous FREE tier allowance
- Pay only for what you use with per-property pricing
- Faster API calls with optimized payloads
- Clear visibility into monthly usage

#### 🎯 Use Cases

- Testing the scraper with FREE tier before upgrading
- Large-scale market analysis with PAID tier
- Budget-controlled scraping with monthly caps

### \[2024-10-01]

#### 🎉 Launch: Smart Idealista Scraper

- **Zero Technical Skills Required** - Just enter location and filters
- **API-Reliable** - No breakage from website updates
- **Best Price on Market** - Pay-per-property with a 33% bonus (charge 30, deliver 40)
- **Multi-Country Support** - Spain, Italy, Portugal property listings
- **64+ Search Filters** - Price, size, bedrooms, amenities, and more

#### 💎 User Benefits

- Scraping just works, no technical maintenance needed
- 33% more properties than you pay for (40 delivered vs 30 charged)
- Export to JSON/CSV for easy analysis
- Multi-language support (Spanish, Italian, Portuguese)

#### 🎯 Use Cases

- Real estate market research and price comparison
- Property investment analysis across regions
- Automated monitoring of new listings in target areas
- Competitive analysis for real estate professionals
