Idealista Property Details Extractor avatar

Idealista Property Details Extractor

Under maintenance

Pricing

Pay per usage

Go to Apify Store
Idealista Property Details Extractor

Idealista Property Details Extractor

Under maintenance

Extract full property details from Idealista by ID: descriptions, specs, energy certificates, multimedia URLs & contact info. Enrich your property database.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

axly

axly

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

3

Monthly active users

a month ago

Last modified

Share

๐Ÿ“‹ Idealista Property Details Extractor

Purpose: Extract comprehensive property details, descriptions, and specifications by property ID

Version: 1.0.0

Pricing: Per-property ($0.10 per 100 properties, $100-500 monthly revenue)

๐ŸŽฏ Features

  • Comprehensive Data Extraction: Property details, descriptions, specifications, multimedia, and statistics
  • Multi-language Support: en, es, it, pt, fr
  • Multi-country Support: ๐Ÿ‡ช๐Ÿ‡ธ es, ๐Ÿ‡ฎ๐Ÿ‡น it, ๐Ÿ‡ต๐Ÿ‡น pt, ๐Ÿ‡ซ๐Ÿ‡ท fr
  • Rate Limiting: Built-in rate limiting (1 request/second) with exponential backoff
  • Error Handling: Robust error handling with retry logic and graceful failures
  • Custom Extractors: Optional JavaScript functions for custom data processing

๐Ÿ“ฅ Input Schema

FieldTypeRequiredDefaultDescription
propertyIdsstring[]โœ…-Array of property IDs to fetch details for
countrystringโŒ"es"Country code (es, it, pt, fr)
languagestringโŒ"en"Language for property descriptions
includeMultimediabooleanโŒtrueInclude image/video URLs
includeStatsbooleanโŒfalseInclude property statistics
max_concurrentintegerโŒ2Maximum concurrent requests (1-5)
custom_extractorstringโŒ-Optional JavaScript function for custom processing

๐Ÿ“ค Output Schema

Returns an object with a properties array containing detailed property information:

{
"properties": [
{
"id": "string",
"title": "string",
"description": "string",
"price": {
"amount": "number",
"currency": "string"
},
"location": {
"address": "string",
"coordinates": {
"latitude": "number",
"longitude": "number"
}
},
"features": "object",
"multimedia": {
"images": "array",
"videos": "array",
"plans": "array"
},
"contact": "object",
"energyCertificate": "object"
}
]
}

๐Ÿ”ง Implementation Details

API Methods Used

  • api.createPropertyDetailsRequest(propertyId, language, quality) - Property details
  • api.parsePropertyDetailsResponse(response) - Parse details response
  • api.createPropertyMultimediaRequest(propertyId) - Multimedia data
  • api.parsePropertyMultimediaResponse(response) - Parse multimedia response
  • api.createPropertyStatsRequest(propertyId) - Property statistics
  • api.parsePropertyStatsResponse(response) - Parse stats response

Rate Limiting

  • Per Request: 1 second minimum delay
  • Concurrent: Max 5 concurrent requests
  • Retry Logic: Exponential backoff (1s, 2s, 4s)

Error Handling

  • Network errors: Retry with exponential backoff (max 3 attempts)
  • Auth errors: Automatic re-authentication
  • Rate limits: Increased delays on rate limit errors
  • Parsing errors: Logged and skipped
  • Custom extractor errors: Logged with fallback to original data

๐Ÿš€ Usage Example

// Input
{
"propertyIds": ["12345678", "87654321"],
"country": "es",
"language": "en",
"includeMultimedia": true,
"includeStats": false,
"max_concurrent": 2
}
// Custom extractor example
"custom_extractor": "function(propertyData) { return { ...propertyData, customField: 'value' }; }"

๐Ÿ“Š Performance & Scaling

  • Concurrency: Configurable concurrent processing (1-5)
  • Memory Management: Batch processing to manage memory usage
  • Error Recovery: Continues processing other properties on individual failures
  • Logging: Comprehensive logging for monitoring and debugging

๐Ÿ”’ Production Ready

โœ… Apify Layout: 100% compliant with selected template โœ… Input Validation: Strict INPUT_SCHEMA.json with descriptions and validation โœ… Error Handling: Comprehensive error handling with Actor.fail() and Actor.exit() โœ… Rate Limiting: Built-in rate limiting with exponential backoff โœ… Logging: Comprehensive logging via Actor.log โœ… Secrets: No hardcoded credentials (uses API client configuration) โœ… Async Handling: Proper async usage with resource cleanup โœ… Local Testing: apify run succeeds with sample input โœ… Linting: ESLint configuration with zero errors โœ… Documentation: Auto-generated README from design specifications


Ready for production deployment! ๐Ÿš€

This actor is fully compliant with the Idealista API reverse-engineering specifications and Apify production standards.