Idealista Property Search & Discovery avatar

Idealista Property Search & Discovery

Pricing

Pay per usage

Go to Apify Store
Idealista Property Search & Discovery

Idealista Property Search & Discovery

Search Idealista properties by location with filters, pagination & sorting. Sale or rent, homes, offices, land. Get structured listings with prices, features & URLs.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

axly

axly

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 days ago

Last modified

Share

Search properties using Idealista location IDs with pagination and filtering. Production-ready with input validation, rate limiting, and Retry-After support.

Input

  • locationIds (required): Array of location IDs from the Location Resolver actor
  • country: es, it, pt, fr (default: es)
  • filters: operation (sale/rent), propertyType, minPrice, maxPrice, minRooms, maxRooms, minBathrooms, maxBathrooms, minSize, maxSize
  • pagination: max_results (1–50000), limit (1–100), max_pages (1–500)
  • custom_extractor: Optional JavaScript function to customize each property object. Use only trusted input.
  • apiCredentials: Optional override for API credentials (prefer Apify secrets for sensitive values)

Output

  • properties: Array of property objects (id, title, price, location, features, images, etc.)
  • pagination: total_results, total_available, pages_fetched, items_per_page
  • metadata: search_criteria, execution_time_ms, api_requests_made

Robustness

  • Input validation: Zod schema; clear errors for invalid or missing required fields
  • Rate limiting: 2s between requests, 5s between pages
  • Retries: Exponential backoff (1s, 2s, 4s) with up to 3 attempts per page
  • Retry-After: Honors HTTP Retry-After header (429 or 5xx) with a 2-minute cap
  • Logging: Start, per-location progress, completion with counts and timing
  • Secrets: Pass credentials via input or Apify secrets; no sensitive data in logs
  • Error handling: Graceful failure with sanitized messages; Actor.fail() for unrecoverable errors