Properties Distribution
POST
https://api.casafari.com/market-analytics-api/distributions/propertiesBearer token44 parameters
Send Authorization: Bearer $CASAFARI_TOKEN; see how to get a token.
Over MCP: no tool does this. MCP and REST compared.
Description
Returns the properties lightweight data sample and distribution quartiles.
Lightweight data includes only price and location data.
Request body
Content type application/json. Required. Type: object.
typesstring[]requiredThe list of property types by type groups: apartment: ["apartment", "studio", "duplex", "penthouse", "dachgeschosswohnung", "etagenwohnung", "erdgeschosswohnung"] house: ["country_house", "house", "palace", "townhouse", "villa", "country_estate", "chalet", "bungalow", "family_house", "reihenhaus", "reihenendhaus", "reihenmittelhaus", "einfamilienhaus", "zweifamilienhaus", "landwirtschaftliche_betriebe"] room: ["room"] building: ["apartment_building", "office_building", "mix_use_building"] investment: ["retail", "office", "industrial", "warehouse", "hotel", "building", "other_commercial", "restaurant", "werkstatt"] development: ["apartment_development", "house_development"] plot: ["urban_plot", "rural_plot"] other: ["parking", "garage", "other"] Note that you can select multiple types only from one property type group. The list of property types specific to certain countries: apartment: ○ dachgeschosswohnung: Germany ○ etagenwohnung: Germany ○ erdgeschosswohnung: Germany house: ○ family_house: Germany ○ reihenhaus: Germany ○ reihenendhaus: Germany ○ reihenmittelhaus: Germany ○ einfamilienhaus: Germany ○ zweifamilienhaus: Germany ○ landwirtschaftliche_betriebe: Germany investment: ○ restaurant: Germany ○ werkstatt: Germany plot: ○ urban_plot: Italy, Germany, Portugal, Spain, France ○ rural_plot: Italy, Germany, Portugal, Spain, France
42 allowed values
apartment studio duplex penthouse dachgeschosswohnung etagenwohnung erdgeschosswohnung country_house house palace townhouse villa country_estate chalet bungalow family_house reihenhaus reihenendhaus reihenmittelhaus einfamilienhaus zweifamilienhaus landwirtschaftliche_betriebe retail office industrial warehouse hotel building other_commercial restaurant werkstatt urban_plot rural_plot room parking garage other apartment_building office_building mix_use_building apartment_development house_developmentat least 1 item
business_typestringrequiredsale rentprice_rangeobjectnullable2 properties
minintegernullable1–2147483647
maxintegernullable1–2147483647
price_per_sqm_rangeobjectnullable2 properties
minintegernullable1–2147483647
maxintegernullable1–2147483647
rooms_rangeobjectnullable2 properties
minintegernullable1–15000
maxintegernullable1–15000
bedrooms_rangeobjectnullable2 properties
minintegernullable0–15000
maxintegernullable0–15000
bathrooms_rangeobjectnullable2 properties
minintegernullable1–15000
maxintegernullable1–15000
total_area_rangeobjectnullable2 properties
minintegernullable1–1000000
maxintegernullable1–1000000
plot_area_rangeobjectnullable2 properties
minintegernullable1–1000000
maxintegernullable1–1000000
construction_year_rangeobjectnullable2 properties
minintegernullable1–3000
maxintegernullable1–3000
characteristicsobjectnullable2 properties
must_havestring[]Include only properties that have all these characteristics.
balcony elevator no_elevator garage garden parking storage swimming_pool terrace rental_license furniture rented_out life_annuityexcludestring[]Exclude properties that contain any of these characteristics.
balcony elevator no_elevator garage garden parking storage swimming_pool terrace rental_license furniture rented_out life_annuityconditionsstring[]Property conditions, as returned by the GET /api/v1/references/conditions endpoint.
used ruin very-good new otherat least 1 item
privatebooleanWhether the property is listed by a private individual, as opposed to an agent or a professional.
bankbooleanWhether the property is owned by the bank.
auctionbooleanWhether the property is the subject of an auction.
default false
exclude_outliersbooleanExclude properties that are significantly underpriced or overpriced compared to similar properties.
default false
custom_location_boundaryobjectrequired3 properties
location_idsinteger[]List of location IDs.
1–10 items1–2147483647
polygonobject[]List of geo-points to search within. Polygon must contain at least 4 points. First and last points must match.
at least 4 items
2 properties
latitudenumberrequired-90–90
longitudenumberrequired-180–180
circleobjectCircle boundary to search within.
2 properties
distanceintegerrequiredMaximum distance in meters from the requested
target_point to the properties.50–50000
target_pointobjectrequiredTarget point coordinates to search around.
2 properties
latitudenumberrequired-90–90
longitudenumberrequired-180–180
Example request
Placeholders only: replace the token and the values with your own.
curl -X POST "https://api.casafari.com/market-analytics-api/distributions/properties" \
-H "Authorization: Bearer $CASAFARI_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"types": [
"apartment"
],
"business_type": "sale",
"custom_location_boundary": {
"location_ids": [
1
]
}
}'Responses
200 Successful Response
Type: object.
Show the response shape (13 fields)
propertiesobject[]requiredList of properties that participated in the distribution.
6 properties
property_idintegerrequiredID of the property.
property_unit_idintegerrequiredProperty sub-identifier. Along with the property_id, it ensures the uniqueness of the property.
priceintegerrequiredprice_per_sqmnumberrequiredlocation_idintegerrequiredcoordinatesobjectrequired2 properties
latitudenumberrequired-90–90
longitudenumberrequired-180–180
quartilesobjectrequiredThe quantiles that divide the properties distribution into four parts.
3 properties
lowernumberrequired25th percentile. The lowest 25% of distribution data is below this point.
meannumberrequired50th percentile or median. The lowest 50% of distribution data is below this point.
uppernumberrequired75th percentile. The lowest 75% of distribution data is below this point.
204 No Content
No body.
400 Bad Request
Type: object.
Show the response shape (3 fields)
messagestringrequirederrorsstring[]nullabledetailsstringnullable422 Validation Error
Type: object.
Show the response shape (6 fields)
detailobject[]5 properties
loc(string | integer)[]requiredmsgstringrequiredtypestringrequiredinputanyctxobject