Discover/Idealista API
live

Idealista APIidealista.pt

Search and retrieve Portugal property listings from Idealista.pt. Filter by location, price, size, bedrooms, and coordinates. Track price changes across multiple properties.

Endpoint health
verified 19h ago
get_property_details
search_properties
track_price_changes
3/3 passing latest checkself-healing
Endpoints
3
Updated
22d ago

What is the Idealista API?

The Idealista.pt API gives developers access to Portugal's property market through 3 endpoints covering listing search, full property details, and price-change tracking. With search_properties, you can query by city, bounding coordinates, bedroom count, price range, and square meters — getting back up to 30 paginated listings per request, each identified by a property_code that feeds directly into get_property_details or track_price_changes.

Try it
Page number for pagination
Coordinates 'lat,lon' for circular search (e.g., '38.6979,-9.4215')
Radius in meters from center (e.g., '5000')
Number of bedrooms (e.g., '1', '2', '3')
Location name for the search (e.g., 'lisboa', 'porto', 'coimbra')
Maximum size in sqm
Minimum size in sqm
Maximum price in EUR
Minimum price in EUR
Operation type: 'comprar' (buy) or 'arrendar' (rent)
Property type: 'casas', 'quarteis-escritorios', 'garagens'
api.parse.bot/scraper/e54f0efd-0b6f-46e6-9088-7af104a1a037/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/e54f0efd-0b6f-46e6-9088-7af104a1a037/search_properties?page=1&location=lisboa&operation=comprar&property_type=casas' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace idealista-pt-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

from parse_apis.idealista_portugal_api import Idealista, Operation, PropertyType

idealista = Idealista()

# Search for houses to buy in Lisbon
for listing in idealista.properties.search(
    location="lisboa",
    operation=Operation.BUY,
    property_type=PropertyType.HOUSES,
    max_price=800000,
):
    print(listing.title, listing.price, listing.property_code)

    # Navigate from summary to full details
    full = listing.full()
    print(full.description, full.update_date)
    break

# Get a specific property by code
prop = idealista.properties.get(property_code="34665653")
print(prop.title, prop.price, prop.description)

# Track prices for multiple properties
for status in idealista.properties.track(property_codes="34665653,35043589"):
    print(status.property_code, status.status, status.price)
All endpoints · 3 totalmissing one? ·

Search for property listings in Portugal with flexible filters including location, price range, size, bedrooms, and coordinate-based radius search. Returns paginated results with up to 30 listings per page. Each listing includes a property_code usable with get_property_details for full information.

Input
ParamTypeDescription
pageintegerPage number for pagination
centerstringCoordinates 'lat,lon' for circular search (e.g., '38.6979,-9.4215')
radiusstringRadius in meters from center (e.g., '5000')
bedroomsstringNumber of bedrooms (e.g., '1', '2', '3')
locationstringLocation name for the search (e.g., 'lisboa', 'porto', 'coimbra')
max_sizeintegerMaximum size in sqm
min_sizeintegerMinimum size in sqm
max_priceintegerMaximum price in EUR
min_priceintegerMinimum price in EUR
operationstringOperation type: 'comprar' (buy) or 'arrendar' (rent)
property_typestringProperty type: 'casas', 'quarteis-escritorios', 'garagens'
Response
{
  "type": "object",
  "fields": {
    "url": "string - full URL of the search page",
    "listings": "array of property listing objects with property_code, title, url, price, location, details, time_on_market, and thumbnail",
    "location": "string - location used in the search",
    "current_page": "string - page number",
    "total_on_page": "integer - count of listings returned on this page"
  },
  "sample": {
    "data": {
      "url": "https://www.idealista.pt/comprar-casas/lisboa/",
      "listings": [
        {
          "url": "https://www.idealista.pt/imovel/35043589/",
          "price": "2.425.000€",
          "title": "Apartamento T4 na Estrada das Laranjeiras, Entrecampos, Avenidas Novas",
          "details": [
            "Garagem incluída",
            "T4",
            "323 m² área bruta"
          ],
          "location": "",
          "thumbnail": "https://img4.idealista.pt/blur/591_420_mq/0/id.pro.pt.image.master/27/c3/9a/318252692.jpg",
          "property_code": "35043589",
          "time_on_market": ""
        }
      ],
      "location": "lisboa",
      "current_page": "1",
      "total_on_page": 30
    },
    "status": "success"
  }
}

About the Idealista API

Searching Listings

search_properties accepts flexible combinations of filters: a location string (e.g. 'lisboa', 'porto'), a center coordinate pair with a radius in meters for circular searches, min_size/max_size in square meters, max_price in EUR, and a bedrooms count. Results are paginated — use the page parameter to step through them. Each listing object in the listings array returns a property_code, title, url, price, location, details summary, time_on_market, and a thumbnail URL.

Property Details

get_property_details takes a single property_id (the property_code from search results) and returns the full listing record: a description text block, a structured details object of key-value pairs, a features array of amenity strings, an images array of full-resolution URLs, the formatted price, and an update_date showing when the listing was last modified on Idealista.pt. This endpoint is the right place to pull data for individual property pages or enrichment pipelines.

Tracking Price Changes

track_price_changes accepts a comma-separated list of up to 10 property codes and returns a changes array. Each entry carries the property_code, a status field ('active', 'inactive', 'blocked', or 'error'), and the current price (or null if the listing is no longer live). This is useful for monitoring a shortlist of properties over time — an 'inactive' status indicates the listing has been removed, while 'blocked' means the property is not currently accessible.

Coverage and Scope

All three endpoints are scoped to Idealista.pt, which covers Portugal. Rental listings and commercial property are not currently exposed — the endpoints return residential sale listings. The search_properties response includes a total_on_page count but does not return a total result count across all pages, so iteration requires stepping through pages until results drop off.

Reliability & maintenanceVerified

The Idealista API is a managed, monitored endpoint for idealista.pt — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when idealista.pt changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official idealista.pt API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
19h ago
Latest check
3/3 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a property alert system that uses track_price_changes to notify users when a saved listing drops in price or goes inactive
  • Aggregate Lisbon or Porto listings by coordinate radius to display on a map using center and radius filter parameters
  • Populate a property comparison tool with structured details and features data from get_property_details
  • Feed a real estate investment model with filtered listings by min_size, max_price, and bedrooms from search_properties
  • Monitor listing freshness using the update_date field returned by get_property_details
  • Build a portfolio tracker for a shortlist of properties by polling track_price_changes periodically across up to 10 property codes
  • Extract property images via the images array for visual catalogues or machine learning datasets
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Idealista have an official developer API?+
Idealista does offer an official API for qualified partners and developers in some markets. Details are available at https://developers.idealista.com — however, access is application-based and restricted. This Parse API provides an alternative route to Portugal listing data without requiring partner approval.
What does `track_price_changes` actually return, and what does each status mean?+
track_price_changes returns a changes array with one entry per property code you submit (up to 10). Each entry has a status field: 'active' means the listing is live and includes a current price; 'inactive' means the listing has been removed from Idealista.pt; 'blocked' means the listing exists but is not currently accessible; 'error' indicates a lookup problem. The price field is null for anything other than 'active'.
Does `search_properties` return the total number of results across all pages?+
No. The response includes total_on_page, which is the count of listings on the current page, and current_page, but there is no field for the overall result count. To iterate through all results, increment the page parameter until total_on_page returns fewer than the maximum (30) or zero listings.
Does the API cover rental listings or commercial properties in Portugal?+
Not currently. The three endpoints return residential sale listings on Idealista.pt. Rental or commercial property data is not exposed. You can fork this API on Parse and revise the endpoints to target those listing categories.
Can I search properties outside Portugal using this API?+
Not currently. Coverage is scoped to Idealista.pt, which is the Portugal-specific domain. Idealista also operates in Spain and Italy under separate domains, but those are not covered here. You can fork this API on Parse and revise it to target the Idealista domains for other countries.
Page content last updated . Spec covers 3 endpoints from idealista.pt.
Related APIs in Real EstateSee all →
idealista.com API
Access data from idealista.com.
idealista.it API
Search and retrieve property listings from Idealista.it, Italy's leading real estate platform. Access listings for sale, rent, and new construction across Italian cities, with full property details and photos.
imovirtual.com API
Search and browse real estate listings across Portugal, view detailed property information including prices and specifications, and discover new housing developments. Find your ideal home by accessing comprehensive market data all in one place.
casasapo.pt API
Search and browse Portuguese real estate listings from Casa Sapo for both sale and rent, view detailed property information, access bank-owned properties, and analyze market statistics to make informed decisions. Track new listings and price reductions to stay updated on the latest opportunities in the Portuguese property market.
olx.pt API
Search and monitor real estate listings and business advertisements from OLX Portugal with advanced filtering and pagination options. Get detailed information about specific listings including prices, descriptions, and seller details to find exactly what you're looking for.
imovelweb.com.br API
Search and browse detailed real estate listings on imovelweb.com.br by city, state, and neighborhood. Retrieve structured property data including pricing, size, room counts, features, and full listing descriptions — ready for analysis, comparison, or portfolio tracking.
zapimoveis.com.br API
Search and filter real estate listings across Brazil on ZAP Imóveis — the country's largest property portal. Retrieve listings for sale or rent with detailed attributes including price, location, size, bedrooms, bathrooms, parking, and amenities. Supports location autocomplete, property type discovery, and full listing detail retrieval.
portalinmobiliario.com API
Search and analyze property listings from Chile's top real estate platform, accessing detailed information like prices in UF or CLP, room and bathroom counts, square footage, and locations for apartments, houses, and other properties. Quickly compare available properties and gather market data to find your ideal home or investment opportunity.