/idealista/properties/search

POST /api/idealista/properties/search

Price: 10 credits

Search Idealista property listings in Portugal (idealista.pt) or Italy (idealista.it), for sale or to rent, across homes, land, garages, offices, buildings, storage rooms, commercial units and new developments. Narrows by dwelling sub-type, room and bathroom count, condition, energy band, storey, amenities, price range and floor area, and orders by price, price per m², area, storey, publication date or price cut. Returns listing cards with title, price with any recorded discount, price per m², area, rooms, storey, amenities, photos, the advertiser description and the selling agency.

How to use it

Portugal and Italy only — set `domain` to pt (idealista.pt, the default) or it (idealista.it). Spain is not covered. `location` on pt is a plain accent-folded municipality name ('Vila Nova de Gaia'); on it the slug pairs comune and provincia ('milano-milano', 'forli-forli-cesena'), and a single bare word is doubled for you, which is right for most provincial capitals but not where the province differs. Widen to the whole district or province with the '-distrito' (pt) or '-provincia' (it) suffix — usually two to three times the listings. `rooms` and `home_types` are country-specific and prefixed pt_/it_; passing a value from the wrong country is rejected rather than ignored. Note the two room systems count different things: pt_t2 is two BEDROOMS, it_bilocale is two ROOMS in total, so it_bilocale is the smaller home. Filters intersect, so stacking several narrows fast and an over-constrained query returns 412 rather than an empty list. `property_type` homes covers flats and houses together; narrow with `home_types`. Renting land (pt) and buying rooms (it) are the only operation/property-type pairs idealista does not publish and are rejected. Some features are tied to one operation and are rejected with a message naming which; the amenity, bathroom, condition, energy and storey filters belong to the homes feed, so pairing them with another `property_type` answers 412. One query reaches at most 1800 listings however many match, so to cover a large city split it by `zone`, price band or `home_types` rather than raising `count`.

Parameters

Request body

Response

Errors

Response headers