Discover/Casavo API
live

Casavo APIcasavo.it

Access Casavo.it property listings, photos, details, and location data across Italian cities via 6 endpoints. Search by city, get full listing details, and retrieve photos.

Endpoint health
verified 3d ago
get_listing_detail
search_listings
search_listings_by_city
get_property_valuation
get_all_listings
6/6 passing latest checkself-healing
Endpoints
6
Updated
26d ago

What is the Casavo API?

The Casavo.it API gives developers structured access to Italian real estate listings across all major cities through 6 endpoints. Use search_listings to query properties by city slug with pagination, get_listing_detail to retrieve full property data including coordinates, room count, and street address, and get_listing_photos to pull every photo URL associated with a specific listing.

Try it
City slug in lowercase (e.g. 'milano', 'roma', 'bologna'). Omitting returns listings from all cities.
Page number for pagination (1-based).
api.parse.bot/scraper/589ef79a-5ad5-4d3c-b45f-944b8fd70afa/<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/589ef79a-5ad5-4d3c-b45f-944b8fd70afa/search_listings?city=milano&page=1' \
  -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 casavo-it-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.

"""Walkthrough: Casavo.it SDK — search Italian property listings, drill into details."""
from parse_apis.casavo_it_real_estate_api import Casavo, ListingNotFound

client = Casavo()

# Browse all listings across Italy, capped at 5 total items.
for listing in client.listingsummaries.all(limit=5):
    print(listing.title, listing.city, listing.price)

# Search by city — take one item and navigate to full details.
hit = client.listingsummaries.by_city(city="milano", limit=1).first()
if hit:
    detail = hit.details()
    print(detail.title, detail.price, detail.surface, detail.street)

    # Get photos for the listing
    photos = detail.photos()
    print(photos.count, photos.listing_id)
    for photo in photos.photos[:2]:
        print(photo.url, photo.is_main)

# Search locations for boundary polygons
for loc in client.locations.search(address="Roma", limit=3):
    print(loc.name, loc.type, loc.id)

# Typed error handling for a non-existent listing
try:
    bad = client.listingsummaries.search(city="milano", limit=1).first()
    if bad:
        bad.details()
except ListingNotFound as exc:
    print(f"listing gone: {exc.listing_id}")

print("exercised: listingsummaries.all / by_city / search / details / photos / locations.search")
All endpoints · 6 totalmissing one? ·

Search for property listings with optional city filter and pagination. Returns paginated results sorted by publication date. Each page contains up to 18 listings. When city is omitted, returns listings from all cities.

Input
ParamTypeDescription
citystringCity slug in lowercase (e.g. 'milano', 'roma', 'bologna'). Omitting returns listings from all cities.
pageintegerPage number for pagination (1-based).
Response
{
  "type": "object",
  "fields": {
    "listings": "array of listing summary objects",
    "total_count": "integer total number of matching listings",
    "total_pages": "integer total number of pages",
    "current_page": "integer current page number (1-based)"
  }
}

About the Casavo API

Searching and Browsing Listings

The search_listings and search_listings_by_city endpoints both return paginated arrays of listing summary objects. Each summary includes objectID, titre, typeBien, ville, codePostal, surface, prix, nbPieces, and nbBedrooms. Results are sorted by publication date. The city parameter accepts Italian city slugs such as milano, roma, bologna, and genova. To browse the entire catalogue without a city filter, use get_all_listings with an optional page parameter. All three endpoints return total_count, total_pages, and current_page alongside the listings array.

Listing Detail and Photos

get_listing_detail accepts a listing_id (the objectID from search results) and returns a richer set of fields: city, type (villa, flat, etc.), price in euros, title, street, nbRooms, surface in m², latitude, and a pictures array with dir and name fields. For full-resolution image URLs, get_listing_photos returns an array of photo objects each containing a url string and an is_main boolean flag identifying the primary photo, along with a count of total photos.

Location Search

get_property_valuation accepts an address string — a city or municipality name such as Milano or Roma — and returns an array of location objects. Each object includes an id, name, type (either municipality or submunicipality), and a geom field containing encoded polygon geometries representing the boundary of that location. This is useful for mapping coverage areas or resolving location IDs for further queries.

Reliability & maintenanceVerified

The Casavo API is a managed, monitored endpoint for casavo.it — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when casavo.it 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 casavo.it 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
3d ago
Latest check
6/6 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
  • Aggregate Italian property listings by city to build a regional market overview using prix and surface fields.
  • Display listing photo galleries by calling get_listing_photos and filtering results where is_main is true for thumbnail selection.
  • Map property locations using latitude coordinates returned by get_listing_detail.
  • Track inventory changes by monitoring total_count across repeated calls to search_listings_by_city.
  • Resolve municipality boundary polygons via get_property_valuation for choropleth map overlays.
  • Filter listings by property type using the typeBien field from search results to separate villas from flats.
  • Build a price-per-square-meter calculator using prix and surface fields from listing summaries.
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 Casavo have an official public developer API?+
Casavo does not publish a public developer API or documented data feed for third-party use. This Parse API provides structured access to the data available on casavo.it.
What is the difference between `search_listings` and `search_listings_by_city`?+
search_listings accepts an optional city parameter, so omitting it returns listings across all cities. search_listings_by_city requires a city slug and is purpose-built for single-city queries. Both return the same listing summary fields and the same pagination metadata (total_count, total_pages, current_page).
Does the API return rental listings or only properties for sale?+
The endpoints exposed here cover the listings available on casavo.it, which focuses on properties for sale. Rental listings are not part of the current API. You can fork this API on Parse and revise it to target rental data if that becomes available on the source.
Is longitude data available for mapping listing locations?+
get_listing_detail currently returns latitude but the response spec does not include a separate longitude field. For polygon-level geography, get_property_valuation returns encoded boundary geometries per municipality. You can fork this API on Parse and revise it to surface longitude if it appears in the source data.
How current is the listing data, and are sold or removed properties accessible?+
Results from search_listings and related endpoints reflect currently published listings sorted by publication date. The API does not expose a history of delisted or sold properties. You can fork it on Parse and revise it to add a historical tracking endpoint if that data becomes available on the source.
Page content last updated . Spec covers 6 endpoints from casavo.it.
Related APIs in Real EstateSee all →
casa.it API
Search and browse property listings from Casa.it, Italy's real estate marketplace. Retrieve listings by location, price, size, property type, and transaction type (sale or rent), and fetch full details for individual properties including descriptions, photos, features, and publisher information.
tecnocasa.it API
Search and browse properties listed on Tecnocasa.it — Italy's largest real estate franchising network. Retrieve detailed property information including specifications, photos, pricing, and energy data. Look up agency contact details and use location autocomplete to refine searches by province, region, or city across Italy.
immobiliare.it API
Search Italian property listings for sale or rent, browse real estate agencies, and explore price trends across Italian cities — all via immobiliare.it.
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.
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.
vivareal.com.br API
Search for properties across Brazil's real estate marketplace and access detailed listings with photos, amenities, contact information, and agency portfolios. Discover homes by location, browse available property types, and connect directly with real estate advertisers.
casasyterrenos.com API
Search and browse real estate listings across Mexico with detailed property information, pricing, and seller contacts from Casas y Terrenos. Find your perfect home or land by accessing comprehensive property details and comparing available options in one place.
properati.com.ar API
Search and browse real estate listings in Argentina with detailed property information, including descriptions, prices, and similar properties. Filter listings by property type and operation type (buy, rent, etc.) to find exactly what you're looking for.