Idealista Scraper API avatar
Idealista Scraper API

Pricing

Pay per event

Go to Store
Idealista Scraper API

Idealista Scraper API

Developed by

dz_omar

dz_omar

Maintained by Community

Extracts structured property data (price, features, contact info, images) from any Idealista.com/.pt/.it listing URL. Outputs clean JSON for real estate analysis, market research, and automation workflows. Handles anti-bot protections automatically.

4.8 (5)

Pricing

Pay per event

5

Total users

48

Monthly users

31

Runs succeeded

>99%

Last modified

11 days ago

🏘️ Idealista Property Scraper API

Extract comprehensive real estate data from single Idealista property listings across Spain, Portugal, and Italy with unparalleled detail and accuracy.

Perfect for real estate analysts, content creators, investors, and SEO professionals who need structured property data without coding complexity.


πŸ”Ž What This Actor Extracts

This scraper provides complete property intelligence from individual listings:

πŸ“‹ Core Property Data

  • πŸ“Œ Property Details: ID, title, description, location, and listing URL
  • πŸ’° Pricing: Current listing price with currency formatting
  • πŸ“ Specifications: Built area, rooms, bathrooms via propertySpecs
  • 🏒 Property Features: Detailed characteristics array with all property attributes
  • ⚑ Energy Performance: Energy efficiency ratings and labels when available
  • πŸ“… Listing Status: Last update information (e.g., "updated 17 days ago")

πŸ–ΌοΈ Visual Content

  • πŸ“Έ Image Gallery: High-resolution photos with titles, descriptions, and tags
  • πŸ–ΌοΈ Main Image: Primary property photo URL
  • πŸ—ΊοΈ Map Integration: Google Maps static images with GPS coordinates
  • πŸŽ₯ Virtual Tours: 360Β° tour URLs when available
  • πŸ“‹ Floor Plans: Architectural layouts marked with isPlan flag

🏒 Agency & Contact Information

  • πŸ›οΈ Agency Details: Professional name, location, logo, and website
  • πŸ“ž Contact Methods: Phone numbers, chat/form availability flags
  • πŸ”— Reference: Property reference number and agency type
  • πŸ“ Map Location: Agency location data when available

πŸ—οΈ Building & Amenities

  • 🏠 Building Features: Elevator, parking, construction details
  • 🌿 Amenities: Swimming pool, garden, terrace, air conditioning
  • 🎯 Property Specs: Structured data for rooms, bathrooms, area, and boolean amenities

βš™οΈ One URL Per Run

This actor is built for one listing per run. Want to extract 10 listings? Just call the actor 10 times β€” either manually or automatically.

⚠️ Perfect for automation: developers can loop through multiple URLs and call this actor via API.


πŸ”— Need Bulk Extraction?

Looking to scrape hundreds or thousands of properties at once?

Check out our Idealista Bulk Property Scraper which:

  • πŸš€ Processes multiple search URLs in a single run
  • πŸ“ˆ Extracts unlimited properties (bypasses Idealista's 1,800-property limit)
  • πŸ€– Uses this API internally for individual property extraction
  • πŸ’° More cost-effective for large-scale operations

🌐 Supported Domains

You can use this actor on any public Idealista property URL such as:

  • https://www.idealista.pt/en/imovel/33826216/
  • https://www.idealista.com/en/inmueble/106316721/
  • https://www.idealista.it/en/immobile/30856200/

βœ… Sample Input

Only one field is required: a property URL.

{
"Url": "https://www.idealista.it/en/immobile/30856200/",
"proxyConfig": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
},
"maxRetries": 2,
"timeout": 30,
"saveMapImages": true,
"includeGallery": true,
"extractContactInfo": true
}

πŸ“Š Sample Output

{
"id": "30856200",
"Url": "https://www.idealista.it/en/immobile/30856200/",
"title": "Villa for sale in Sud",
"price": "2950000 €",
"description": "In a valley between the Langhe and Monferrato areas, on the outskirts of Asti, there is this prestigious residential complex with 13.5 hectares of grounds for sale...",
"location": "Asti",
"characteristics": [
"Villa",
"1,750 mΒ² built",
"10 rooms",
"9 bathrooms",
"Terrace and balcony",
"Garage and parking space included in the price",
"Second hand/good condition",
"Built in 1700",
"Energy efficiency rating: (ECI not indicated)"
],
"building": [],
"energyPerformance": {},
"amenities": [
"Swimming pool",
"Garden"
],
"energyLabel": null,
"updatedAt": "Listing updated 17 days ago",
"MainImage": "https://img4.idealista.it/blur/WEB_DETAIL_TOP-L-L/0/id.pro.it.image.master/7c/38/32/671000685.jpg",
"virtualTourUrl": null,
"propertySpecs": {
"rooms": 10,
"constructedArea": 1750,
"bathrooms": null,
"garden": false,
"pool": false,
"terrace": false
},
"contactInfo": {
"reference": "RIF.8291",
"professionalName": "Lionard Luxury Real Estate",
"location": "Firenze",
"logo": "https://st3.idealista.it/09/5a/3a/lionard-luxury-real-estate.gif",
"agencyWebsite": "https://idealista.it/en/pro/lionard-luxury-real-estate/",
"contactMethods": {
"chatAvailable": true,
"phoneAvailable": true,
"formAvailable": true
},
"ownerType": "agency",
"mapLocation": null,
"phones": "+39 055 093 1648"
},
"gallery": [
{
"url": "https://img4.idealista.it/blur/WEB_DETAIL/0/id.pro.it.image.master/c3/b3/08/671000686.jpg",
"title": "Image Surroundings of villa in Sud",
"description": "Surroundings",
"tag": "Surroundings",
"isPlan": false
}
],
"Map": {
"src": "https://maps.googleapis.com/maps/api/staticmap?size=720x492&center=44.88689670%2C8.17289030&maptype=roadmap&channel=map_detail&scale=1&zoom=16&key=AIzaSyD-RjDXMztXd5rsu4zFG44V1kkMpdk3Hyc&signature=dRMZ7n5UatGmg-XwYgToqN2ERP4=",
"title": "Map of the area",
"addressVisibility": "HIDDEN"
},
"mapImagePath": "https://api.apify.com/v2/key-value-stores/undefined/records/30856200.jpg",
"scrapedAt": "2025-07-03T10:25:28.408Z",
"status": "success"
}

πŸ–ΌοΈ Live Results View

Idealista Scraper Results Real-time view of extracted property data in the Apify console


πŸ”§ Integration & Automation

API Integration

This actor is designed to be called programmatically:

// Example: Scraping multiple properties in a loop
const propertyUrls = [
"https://www.idealista.it/en/immobile/30856200/",
"https://www.idealista.com/en/inmueble/106316721/",
"https://www.idealista.pt/en/imovel/33826216/"
];
for (const url of propertyUrls) {
const run = await apifyClient.actor("dz_omar/idealista-scraper-api").call({
Url: url,
proxyConfig: {
useApifyProxy: true,
apifyProxyGroups: ["RESIDENTIAL"]
},
maxRetries: 2,
timeout: 30,
saveMapImages: true,
includeGallery: true,
extractContactInfo: true
});
const { items } = await apifyClient.dataset(run.defaultDatasetId).listItems();
console.log(items[0]); // Property data
}

Used by Bulk Scraper

The Idealista Bulk Property Scraper uses this API internally to:

  1. Process search result pages
  2. Navigate through property listings
  3. Extract detailed data from each property
  4. Aggregate results into comprehensive datasets

🎯 Output Data Structure

Key Fields Explained:

  • id: Unique property identifier from Idealista
  • characteristics: Array of property features (size, rooms, condition, etc.)
  • building: Building-specific features (elevator, parking, etc.)
  • energyPerformance: Energy efficiency data object
  • amenities: Property amenities (pool, garden, AC, etc.)
  • propertySpecs: Structured specifications with boolean flags
  • contactInfo: Complete agency information with contact methods
  • gallery: Image array with titles, descriptions, and tags
  • Map: Google Maps integration with coordinates
  • mapImagePath: Path to saved map image in key-value store

πŸ’‘ Who Is This For?

Single Property Analysis:

  • πŸ§‘β€πŸ’Ό Real estate agencies analyzing specific listings
  • πŸ“ˆ Investors evaluating individual properties
  • πŸ” Content creators gathering specific property data
  • πŸ€– Developers building targeted automation
  • πŸ“± Apps requiring individual property lookups

Bulk Operations:


πŸ“š Configuration Options

Input Parameters:

  • Url (required): Single property URL to scrape
  • proxyConfig: Proxy settings (RESIDENTIAL recommended)
  • maxRetries: Number of retry attempts (default: 2)
  • timeout: Request timeout in seconds (default: 30)
  • saveMapImages: Save map images to storage (default: true)
  • includeGallery: Extract image gallery (default: true)
  • extractContactInfo: Include agency details (default: true)

Proxy Requirements

Proxies are required for reliable operation. Recommended configuration:

"proxyConfig": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}

πŸ’° Pricing

Single Property Extraction:

  • Actor Initialization: $0.001 per run
  • Property Data Extracted: $0.002 per successful extraction
  • Total: $0.003 per property

Bulk Operations:

For extracting multiple properties, consider the Idealista Bulk Scraper which offers:

  • One-time setup fee of $0.005
  • Same $0.003 per property cost
  • Automated workflow management
  • Resume capability for large extractions

This actor:

  • Respects robots.txt directives
  • Implements rate limiting to avoid server overload
  • Only extracts publicly available data
  • Does not bypass paywalls or login requirements
  • Follows Idealista's terms of service

🀝 Support & Contact

For assistance or custom implementations:



πŸ“‹ Changelog

Version 1.0.6 (Current)

  • βœ… Complete property data extraction
  • βœ… Enhanced agency contact information
  • βœ… Google Maps integration with image saving
  • βœ… Rich image gallery with metadata
  • βœ… Energy performance data
  • βœ… Listing update tracking
  • βœ… Robust error handling and retries