Idealista Scraper API avatar

Idealista Scraper API

Pricing

Pay per event + usage

Go to Apify Store
Idealista Scraper API

Idealista Scraper API

πŸ’° $0.5 per 1,000 results. Scrape Idealista properties & listings from Spain (.com), Portugal (.pt) & Italy (.it). Supports property URLs + search/listing URLs. Fast mobile API extraction with real-time NDJSON streaming. Standby mode for instant responses.

Pricing

Pay per event + usage

Rating

4.8

(15)

Developer

FlowExtract API

FlowExtract API

Maintained by Community

Actor stats

35

Bookmarked

829

Total users

144

Monthly active users

2.4 days

Issues response

12 hours ago

Last modified

Share

🏠 Idealista API Scraper

Fast, reliable property scraper for Idealista.com, Idealista.pt, and Idealista.it . Optimized for speed and accuracy with multi-country support.

Now supports both individual property URLs and listing/search URLs!


🎯 What This Actor Extracts

Complete property intelligence from Idealista listings:

πŸ“‹ Core Property Data

  • Property Details: ID, title, description, address, and web link
  • Pricing: Price amount with currency formatting (€/month or €)
  • Specifications: Rooms, bathrooms, constructed area, usable area
  • Property Type: Extended property type (flat, house, villa, etc.)
  • Status: Active/inactive listing status
  • Listing Updates: Last modification timestamp

πŸ–ΌοΈ Visual Content

  • Image Gallery: High-resolution property photos with captions
  • Thumbnail: Primary property image
  • Multimedia: Video content when available
  • Professional Photos: Idealista-made professional imagery
  • 360Β° Tours: Virtual tour availability

🏒 Location & Contact

  • Address: Full street address with administrative levels
  • GPS Coordinates: Latitude and longitude for mapping
  • Location Details: City, region, district information
  • Contact Name: Property owner or agent name
  • Phone Number: Contact phone with country code
  • User Type: Private owner or professional agent
  • Communication: Chat and form availability

πŸ—οΈ Building & Amenities

  • Building Features: Elevator, parking availability
  • Exterior Access: Garden, terrace availability
  • Condition: Good/bad/unknown property status
  • Floor Info: Floor number and building details
  • Energy Performance: Energy efficiency when available

⚑ Advanced Features

  • Multi-country Support: Spain (.com), Portugal (.pt), Italy (.it)
  • Auto Language Detection: Extracts language from URL
  • Auto Country Routing: Detects correct API endpoint
  • Mixed URL Support: Property URLs and listing/search URLs in one request
  • Listing URL Parsing: Automatic search payload generation via deeplinks API
  • Configurable Results: Control max properties per listing URL
  • Error Tracking: Failed items with detailed error messages
  • Pagination Support: Multi-page property collection
  • Real-time Streaming: NDJSON format in Standby mode

🌐 Supported URL Types

Individual Property URLs

Extract data from a single property page:

  • https://www.idealista.com/en/inmueble/82100417/
  • https://www.idealista.pt/fr/imovel/33939171/
  • https://www.idealista.it/it/immobile/34613312/

Listing/Search URLs (NEW in v3.3)

Scrape multiple properties from a search results page:

  • https://www.idealista.com/en/venta-viviendas/balears-illes/?ordenado-por=precios-asc
  • https://www.idealista.pt/fr/comprar-casas/nordeste/achadinha/
  • https://www.idealista.it/pt/vendita-case/alice-castello-vercelli/

The actor automatically detects which type of URL you provide and handles each accordingly.


πŸ“Š Two Operation Modes

⚑ NORMAL Mode (Batch Processing)

Process property URLs and listing URLs in a single actor run:

{
"Property_urls": [
{ "url": "https://www.idealista.com/en/venta-viviendas/balears-illes/?ordenado-por=precios-asc" },
{ "url": "https://www.idealista.com/en/inmueble/82100417/" },
{ "url": "https://www.idealista.pt/fr/imovel/33939171/" },
{ "url": "https://www.idealista.it/it/immobile/34613312/" }
],
"desiredResults": 10
}

In this example, the actor returns:

  • Up to 10 properties from the listing URL (/venta-viviendas/balears-illes/)
  • 1 property each from the 3 individual property URLs
  • Total: up to 13 properties

Output: Dataset with complete property data for all URLs


ACTOR STANDBY

πŸ”„ STANDBY Mode (Real-Time API)

Keep the actor running as an HTTP server for instant property extraction:

Traditional Run:

  1. ⏳ Start actor (10-30 seconds)
  2. πŸ” Extract property (5-15 seconds)
  3. πŸ“Š Return results
  4. πŸ›‘ Actor stops

Standby Mode:

  1. πŸ” Extract instantly (5-15 seconds)
  2. πŸ“Š Return results immediately
  3. πŸ”„ Stay ready for next request

Response: 3x faster with zero startup overhead!

Standby Endpoint Example:

curl -X POST https://dz-omar--idealista-scraper-api.apify.actor/ \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-d '{
"Property_urls": [
{ "url": "https://www.idealista.com/en/venta-viviendas/balears-illes/" },
{ "url": "https://www.idealista.com/en/inmueble/82100417/" }
],
"desiredResults": 10
}'

βœ… Input Schema

Input Fields:

FieldTypeRequiredDefaultDescription
Property_urlsarrayβœ… Yesβ€”Array of property or listing URLs
desiredResultsintegerNo10Max properties per listing URL (min: 10)

Example Input (Mixed URLs):

{
"Property_urls": [
{ "url": "https://www.idealista.com/en/venta-viviendas/balears-illes/?ordenado-por=precios-asc" },
{ "url": "https://www.idealista.com/en/inmueble/82100417/" },
{ "url": "https://www.idealista.pt/fr/imovel/33939171/" },
{ "url": "https://www.idealista.it/it/immobile/34613312/" }
],
"desiredResults": 11
}

How it works:

  • The listing URL (/venta-viviendas/...) returns up to desiredResults (11) properties
  • Each property URL (/inmueble/, /imovel/, /immobile/) returns exactly 1 property
  • Total output: up to 14 properties (11 + 3)

STANDBY Mode Input:

Same format, sent as POST body to the standby endpoint.


πŸ“€ Sample Output

Successful Extraction:

{
"adid": 82100417,
"price": 500,
"priceInfo": {
"amount": 500,
"currencySuffix": "€/month"
},
"operation": "rent",
"propertyType": "homes",
"extendedPropertyType": "flat",
"ubication": {
"title": "Calle Everluz, 1",
"latitude": 37.1827492,
"longitude": -6.9736586,
"administrativeAreaLevel2": "Punta Umbria",
"administrativeAreaLevel1": "Huelva"
},
"moreCharacteristics": {
"roomNumber": 1,
"bathNumber": 1,
"constructedArea": 60,
"usableArea": 55,
"exterior": true,
"lift": true,
"garden": true,
"status": "good"
},
"multimedia": {
"images": [
{
"url": "https://img4.idealista.com/...",
"tag": "terrace",
"localizedName": "Terrace"
}
],
"videos": []
},
"contactInfo": {
"contactName": "juani",
"userType": "private",
"phone1": {
"formattedPhoneWithPrefix": "+34 608 12 39 91"
},
"professional": false
},
"detailWebLink": "https://www.idealista.com/inmueble/82100417/",
"country": "es",
"status": "success",
"scrapedAt": "2026-02-04T12:30:45.123Z"
}

Failed Extraction:

{
"url": "https://www.idealista.com/en/inmueble/invalid/",
"propertyId": null,
"status": "failed",
"error": "Could not extract property ID from URL",
"scrapedAt": "2026-02-04T12:30:45.123Z"
}

πŸ” Authentication & Proxy

Proxy Configuration

Free Users:

Automatic Apify residential proxy (no configuration needed)

Premium proxy

Stream Results to File

curl -X POST "https://dz-omar--idealista-scraper-api.apify.actor?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"Property_urls": [
{"url": "https://www.idealista.com/en/venta-viviendas/balears-illes/"},
{"url": "https://www.idealista.com/en/inmueble/82100417/"}
],
"desiredResults": 20
}' > property_data.ndjson

Health Check

$curl -X GET "https://dz-omar--idealista-scraper-api.apify.actor?token=YOUR_APIFY_TOKEN/health"

Using Token in Query Parameter

curl -X POST "https://dz-omar--idealista-scraper-api.apify.actor?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"Property_urls": [
{"url": "https://www.idealista.com/en/inmueble/82100417/"}
]
}'

🎯 Perfect For

Single Property Analysis:

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

Bulk Operations:

  • πŸ“Š Market research and trend analysis
  • 🏒 Agency monitoring and tracking
  • πŸ“ˆ Investment portfolio management
  • πŸ”„ Automated listing updates
  • πŸ—ΊοΈ Regional property scanning via listing URLs

πŸ“ˆ Performance Metrics

MetricValue
Typical Response Time5-15 seconds per property
Standby Startup0 seconds (pre-loaded)
API Success Rate99%+
Retry Coverage3 automatic attempts
Memory Usage128-512 MB configurable
Concurrent RequestsFull rate limit support

πŸ—οΈ Architecture Highlights

STANDBY Mode Implementation:

  • Express.js HTTP server
  • NDJSON streaming responses
  • Mixed URL handling (property + listing)
  • Real-time progress updates
  • Graceful error handling
  • Automatic batch processing

Listing URL Processing:

  • Deeplinks API integration for URL β†’ payload conversion
  • Automatic pagination with configurable limits
  • Batch streaming in STANDBY mode

Data Quality:

  • 6 optimized dataset views
  • Field validation
  • Error tracking
  • Status indicators
  • Timestamp tracking

πŸ“Š Status Codes

StatusMeaningAction
successProperty extracted successfullyUse data
failedExtraction failedCheck error message
migratingServer is migratingRetry request
abortingServer shutting downRestart actor

πŸ’‘ Pro Tips

  1. Use Standby for real-time needs - 3x faster response
  2. Mix URL types - Combine property and listing URLs in one request
  3. Set desiredResults wisely - Higher values = more data but longer runtime
  4. Batch requests efficiently - Multiple URLs in one call
  5. Monitor error view - Catch issues early

🀝 Support & Resources

πŸ“ž Support

Get Help

Social Media

🎬 Video & Media

🏠 Real Estate

πŸ“š Education & Community

πŸ› οΈ Developer Tools

πŸ“± Social Media


  • Public Data Access: Only processes publicly available data
  • Rate Limiting: Respects service limits and terms of use
  • Data Protection: No storage of personal information or unauthorized data collection
  • Commercial Use: Suitable for business intelligence and research applications