casa.it APIcasa.it ↗
Search Casa.it property listings by location, price, size, and type. Retrieve listing details, photos, publisher info, and location autocomplete via 5 endpoints.
curl -X GET 'https://api.parse.bot/scraper/2fb52193-7159-4b0c-b042-5bd783d23675/get_location_suggestions?query=Milano' \ -H 'X-API-Key: $PARSE_API_KEY'
Get location autocomplete suggestions for a search query. Returns locations (cities, provinces, regions, zones, metro lines) with their hkey identifiers for use in search endpoints.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Search query for location (e.g., 'Roma', 'Milano') |
{
"type": "object",
"fields": {
"data": "array of location objects with id, name, hkey, type, lat, lon, slug, level, listings_count",
"status": "string indicating success"
},
"sample": {
"data": [
{
"id": "IT-LAZ-RM",
"lat": 41.8518,
"lon": 12.631,
"hkey": "ed427fcb",
"name": "Roma",
"slug": "roma",
"type": "province",
"level": 6,
"listings_count": "44.938"
},
{
"id": "IT-LAZ-058091",
"lat": 41.8796,
"lon": 12.4722,
"hkey": "a0d22860",
"name": "Roma",
"slug": "roma",
"type": "town",
"level": 9,
"listings_count": "22.595"
}
],
"status": "success"
}
}About the casa.it API
The Casa.it API gives developers access to Italy's real estate listings across 5 endpoints, covering location autocomplete, paginated property search, listing details, and property type filters. The search_listings endpoint accepts filters for price, room count, size in square meters, and sort order, while get_listing_detail returns the full listing record including description, media, address, and publisher data.
Endpoints and Data Coverage
The API exposes five endpoints for working with Italian real estate data from Casa.it. get_location_suggestions accepts a text query and returns matching places — cities, provinces, regions, zones, and metro lines — each with an hkey identifier, geographic coordinates, and a listings_count. That hkey is the key input for scoping searches to a specific area in both search_listings and search_mountain_homes.
Search and Filtering
search_listings accepts POST requests with filters including price_max, mq_min, mq_max, rooms, bathrooms, and sort (relevance, price ascending, or price descending). Results are paginated via page and size parameters. The response includes a list array of listing objects, a total count, paginator metadata, and resolvedLocations confirming how the location input was interpreted. search_mountain_homes targets a specific subset of rural property types — baite, bungalow, chalet, trulli — and accepts location_hkey, price bounds, and size bounds. For most use cases, search_listings with the appropriate property type filter covers equivalent ground.
Listing Detail and Reference Data
get_listing_detail takes a numeric listing_id and returns the full property record: propertyType, address, price, size, rooms, description, media (photos), publisher, features, and more. If the listing no longer exists, the response includes a stale_input field with kind input_not_found. get_property_types returns a static reference list of residential property type labels and their corresponding filter values for use in search requests.
- Build a cross-border property search tool filtering Italian listings by price, region, and size
- Aggregate listing data to track price trends across Italian cities using
search_listingswithprice_maxand location filters - Populate a location autocomplete widget using
get_location_suggestionswith itsname,type, andlat/lonfields - Monitor individual listings for price or status changes by polling
get_listing_detailwith a storedlisting_id - Create a rural property finder surfacing trulli, chalet, and baita listings via
search_mountain_homes - Index Casa.it publisher contact data and listing photos from the
publisherandmediafields in listing detail responses - Enumerate available property type filter values via
get_property_typesto dynamically populate a search UI
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 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.
Does Casa.it have an official developer API?+
What does `get_location_suggestions` return beyond a place name?+
id, name, hkey, type (city, province, region, zone, or metro line), lat, lon, slug, level, and listings_count. The hkey value is what you pass as location_hkey in search endpoints.Does `get_listing_detail` return rental listings, or only properties for sale?+
propertyType and related fields in the response distinguish the listing's category. Filtering searches by transaction type (sale vs. rent) is not currently an explicit parameter in search_listings. You can fork this API on Parse and revise it to add a transaction-type filter to the search endpoint.Is there a way to search by neighborhood or draw a map polygon instead of using an hkey?+
location_hkey values returned by get_location_suggestions for geographic scoping. Free-form polygon or bounding-box search is not currently exposed. You can fork this API on Parse and revise it to add coordinate-based or bounding-box search if the underlying data supports it.How does pagination work in `search_listings`?+
page (integer) and size (results per page) as POST body parameters. The response includes a paginator object with pagination metadata and a total integer for the full result count matching your filters.