Marketing attributes and characteristics

Source-reviewed draft; deployment and release verification pending.

Draft — source-reviewed on 22 October 2026. Inventories describe current source; live registry contents and deployment are unverified.

view_types and catalogs appear on summaries and detail. Physical characteristics are detail-only under characteristics. Do not assume every displayed detail characteristic is a supported search filter.

Views

Supported view_types values are SEA, GARDEN, MOUNTAIN, STREET, NEIGHBORHOOD, POOL, SEA_AND_COAST, PANORAMIC_SEA, PANORAMIC_SEA_AND_ISLANDS, MOUNTAIN_AND_SEA, POOL_AND_GARDEN and STREET_AND_MOUNTAIN.

Combined values are real selections, not strings to split on underscores. Use explicit translated labels in a UI mapping. view_types: [] is a valid empty collection. Marketing offers such as Exclusive or Seafront Property come from Catalog memberships, not deprecated flags.

Complete public characteristic field inventory

Every field inside characteristics is optional and nullable in the public schema; the current projection omits unpopulated values. The object itself is required on detail and can be empty. false and 0 are meaningful populated values.

FieldsWire type / unit
floorString; do not assume numeric floors only.
toiletsInteger count.
living_area_m2, outdoor_area_m2, terrace_area_m2, pool_area_m2, garden_area_m2Numbers in square metres.
built_year, last_renovated_yearIntegers.
parking_spacesInteger count.
features_conservation, pool_type, parking_type, garden_type, kitchen_type, furnishing_status, terrace_glazingStrings with current canonical values listed below.
window_featuresArray of strings with canonical values listed below.
is_renovated, is_new_constructionBooleans.
has_terrace, has_garden, has_air_conditioning, has_storage, has_lift, has_wardrobesBooleans.
has_terrace_awning, has_jacuzzi, has_security_door, has_double_glazing, has_alarm, has_fireplace, has_laundry_room, has_solarium, has_home_cinemaBooleans.

bedrooms, bathrooms and total_area_m2 are top-level public fields rather than members of this object. has_pool and has_parking are search predicates derived from their respective type values, not characteristic response fields.

Current canonical controlled values

FieldValues
features_conservationNEW, GOOD, TO_RESTORE
pool_typePUBLIC_HEATED, PUBLIC_UNHEATED, PRIVATE_HEATED, PRIVATE_UNHEATED, NO_POOL
parking_typePRIVATE, PUBLIC, PARKING_SPACE, NO_PARKING, COMMUNAL, PRIVATE_MULTI_CAR_GARAGE
garden_typeCOMMUNAL, PRIVATE
kitchen_typeINDEPENDENT, AMERICAN
furnishing_statusFURNISHED, PARTIALLY_FURNISHED, UNFURNISHED
terrace_glazingGLAZED, NOT_GLAZED
window_featuresALUMINUM, PVC, BLINDS

The public characteristic DTO currently types these as strings/string arrays rather than response enums. The public reference endpoint does not enumerate these characteristic choices. Use this source-reviewed inventory for initial labels, and tolerate unknown strings safely rather than crashing or asserting a stronger wire guarantee. Do not fetch authenticated CRM metadata from the website.

Synthetic detail fragment

{
  "characteristics": {
    "floor": "2",
    "living_area_m2": 80,
    "terrace_area_m2": 15,
    "pool_type": "PUBLIC_UNHEATED",
    "parking_type": "NO_PARKING",
    "kitchen_type": "AMERICAN",
    "window_features": ["PVC", "BLINDS"],
    "has_lift": true,
    "has_fireplace": false
  }
}

This fragment is synthetic and is not a complete detail response. A UI can derive a formatted amenities list from these values; that list is a display model, not a new response field. Omit unknown amenities or show an intentional unknown state. Do not render missing booleans as “No.”

Related operations

GET /api/v1/public/properties/{public_id} returns characteristics. POST /api/v1/public/properties/search supports only the filters documented in Search and map privacy. GET /api/v1/public/property-reference lists views and catalog metadata.


Did this page help you?