Platform
Get started

Casafari is the AI agent-native real estate data intelligence platform. The most complete property index in Europe: a deduplicated, cleaned property graph of residential and commercial property, for sale and for rent, in 16 countries.The most complete property index in Europe: a deduplicated, cleaned property graph.

How the graph is built

Value and compare · Use case

How do I find comparables for a shop, office, warehouse or plot?

To find comparables for a shop, office, warehouse or plot, call comps_get-comparables from Casafari's Comparables & Valuation product with types from the investment group (such as retail, office, warehouse) or the plot group (urban_plot, rural_plot). Give total_area for commercial types or plot_area for plots; the tool returns comparables, statistics and estimated prices.

Products: Comparables & Valuation, References

Short answer

The same comps_get-comparables tool that values homes covers the investment group (retail, office, industrial, warehouse, hotel, restaurant, werkstatt, other_commercial) and the plot group (urban_plot, rural_plot). Commercial types require total_area and plot types require plot_area, unless the target is a Spanish cadastral reference.

Steps

Pick types from one group: investment, plot or building

  1. Call list_servers if this is your first use of Comparables & Valuation.
  2. Choose comparables_types from a single group: investment (the commercial types above), plot (urban_plot, rural_plot) or building (apartment_building, office_building, mix_use_building). The schema allows several types only from one group.

Set total_area for commercial types or plot_area for plots (required unless a cadastral reference is given)

  1. Set total_area in square metres (5 to 10000000) for hotel, industrial, office, other_commercial, restaurant, retail, warehouse and werkstatt. Set plot_area in square metres (20 to 10000000) for rural_plot and urban_plot. Both can be omitted when target_point.cadastral_reference is given (Spain only).

Choose a wider radius, 2 to 5 km, outside dense centres

  1. Set location_boundary.circle.distance in kilometres (0.05 to 50). The tool advises 0.5 to 1 km in urban areas and 2 to 5 km in rural ones; commercial and land evidence is often sparse, so start wider outside city centres.

Check country availability per type with GET /api/v1/references/types

  1. The schema says country availability per type comes from GET /api/v1/references/types, a REST operation for Casafari client accounts (sign in with POST /login). Then call comps_get-comparables.

Example: an urban plot

A land buyer asks their assistant: "Find comparable urban plots of 800 m2 within 3 km of Cascais, Portugal." The assistant calls list_servers, then comps_get-comparables:

json
{
  "comparables_count": 20,
  "location_boundary": {
    "circle": {
      "target_point": { "address": "Cascais, Portugal" },
      "distance": 3
    }
  },
  "operation": "sale",
  "comparables_types": ["urban_plot"],
  "plot_area": 800
}

Condensed response (values depend on the market when you call):

json
{
  "results": [ { "type": "urban_plot", "plot_area": "...", "total_area": "...", "sale_price": "...", "sale_price_per_sqm": "...", "similarity_score": "...", "distance": "...", "is_outlier": "..." } ],
  "statistics": { "average_price": "...", "average_price_per_sqm": "...", "average_time_on_the_market": "...", "sold_or_rented_in_last_six_months": "..." },
  "estimated_prices": { "fast_sell_price": "...", "fair_market_price": "...", "out_of_market_price": "...", "fair_market_price_per_sqm": "..." },
  "casafari_link": "..."
}

How to read the result

Price per m² for land versus built area

Each result returns plot_area, total_area and living_area separately. Casafari's documentation does not state which area sale_price_per_sqm divides by for a plot, so for a land price per m² divide sale_price by plot_area yourself, and compare plots only with plots. For shops, offices and warehouses, compare on total_area, the field the request requires.

statistics.average_time_on_the_market for commercial liquidity

average_time_on_the_market is the average number of days on the market for the comparables found: a long figure signals a slow segment where a quick deal needs a price nearer fast_sell_price. sold_or_rented_in_last_six_months shows how much recent evidence exists in the requested location; a low count means the estimate rests on few properties.

Limits

comps_get-comparables is available to Casafari clients with MCP access, using their Casafari account; self-serve access for new users is coming soon. GET /api/v1/references/types is for Casafari client accounts. Prices, quotas and rate limits are not published in these docs; ask Casafari. See also Does Casafari cover rentals and commercial property? and the Comparables & Valuation product page.

Area Insights tools analyse apartment and house groups only, so area context for commercial comes from comparables statistics

The Area Insights MCP tools accept type_group apartment or house only. For commercial property and land, use the statistics block of the comparables response as your area context.

Types cannot be mixed across groups

A shop and a plot, or an office unit (investment group) and an office building (building group), need separate requests. Apart from the Spain-only cadastral reference input, the tool's description names no per-market coverage.

Questions

Which type group do apartment buildings and office buildings belong to?

Apartment buildings, office buildings and mixed-use buildings belong to the building group: apartment_building, office_building and mix_use_building. You can combine these three in one comps_get-comparables request, but not with types from the investment or plot groups. A single office unit belongs to the investment group, so an office unit and an office building need separate requests.

Is plot or family_house still accepted?

The schema still lists plot and family_house but marks both as DEPRECATED. Use urban_plot or rural_plot for land, and a specific house type such as house, villa, townhouse, chalet or einfamilienhaus instead of family_house. New integrations should not rely on deprecated values, and the specific types also make comparables easier to interpret.

Not with the Area Insights MCP tools: their type_group accepts only apartment or house. For commercial property, the area context comes from the statistics block of comps_get-comparables: average price, average price per m², average time on the market and the number of properties sold or rented in the last six months in the requested location.

Can I filter commercial comparables by energy rating?

Yes, comps_get-comparables takes energy_ratings, a list of ratings from A+ to H plus Unknown, whatever the type group. Each comparable returns its energy_rating. Filtering narrows the set, and for commercial assets with sparse evidence that can leave few comparables, so include Unknown or drop the filter when results are thin.

All use cases

Tip: add .md to any URL to read it as Markdown.