# Property

> **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. Every property is one record with its full price and market history. [How the property graph is built](/docs/property-graph).

Every field of the Property entity in the export files, with its type and meaning.

Part of [Data Export](/docs/data-export). Files under `propertys/`.

## Fields

- `type` (string, required): Property type.
- `type_group` (string, required): Property type group.
- `title` (string, required): Property title.
- `business_type` (string[], required): Operation type. Values: `sale`, `rent`.
- `changed_at` (string, required): The date and time when the property was last updated.
- `created_at` (string, required): The date and time when the property was added.
- `sold_at` (string, required): Date when the property was sold.
- `rented_at` (string, required): Date when the property was rented.
- `sale_hold_at` (string, optional, nullable): Date when the property was put on hold on the sales market.
- `rent_hold_at` (string, optional, nullable): Date when the property was put on hold on the rental market.
- `location_id` (integer, required): ID of the location.
- `locations_structure` (integer[], required): Location ids of parent locations (including listing location) up to the country.
- `zip_codes` (string[], required): The location zip codes.
- `zip_code` (string, optional, nullable): The location zip code.
- `address` (string, required): Property address.
- `coordinates` (object, required): Property coordinates.
  - `longitude` (number, required): Longitude.
  - `latitude` (number, required): Latitude.
- `total_area` (integer, required): Total area.
- `plot_area` (integer, required): Plot area.
- `terrace_area` (integer, required): Terrace area.
- `bedrooms` (integer, required): Number of bedrooms.
- `bathrooms` (integer, required): Number of bathrooms.
- `rooms` (integer, required): Number of rooms.
- `construction_year` (integer, required): Construction year.
- `sale_price` (integer, required): Current sale price, in the currency specified in the `sale_currency` field.
- `sale_status` (string, required): Current sale status of the property. Values: `active`, `reserved`, `sold`, `hold`, `none`.
- `sale_currency` (string, required): Sale price currency code.
- `rent_price` (integer, required): Current rent price, in the currency specified in the `rent_currency` field.
- `rent_status` (string, required): Current rent status of the property. Values: `active`, `reserved`, `rented`, `hold`, `none`.
- `rent_currency` (string, required): Rent price currency code.
- `features` (object, required): Property features.
  - `views` (string[], optional, nullable): List of views from the property. Values: `water`, `landscape`, `city`, `golf`, `park`.
  - `directions` (string[], optional, nullable): List of cardinal directions the property faces. Values: `north`, `south`, `east`, `west`.
  - `characteristics` (string[], optional, nullable): Property characteristics. Values: `balcony`, `elevator`, `garage`, `garden`, `parking`, `storage`, `swimming_pool`, `terrace`, `rental_license`, `furniture`, `no_elevator`, `rented_out`, `life_annuity`, `business_transfer`, `smoke_outlet`.
  - `floor` (string, optional, nullable): Floor type. Values: `no_floor`, `ground`, `middle`, `top`.
  - `orientation` (string, optional, nullable): Property view orientation. Values: `interior`, `exterior`.
- `condition` (string, required): Property condition.
- `energy_certificate` (string, required): Energy certificate. Values: `UNKNOWN`, `A`, `A+`, `B`, `C`, `D`, `E`, `F`, `G`, `H`.
- `is_private` (boolean, required): Whether the property is listed by a private individual, as opposed to an agent or a professional.
- `property_id` (integer, required): ID of the property.
- `property_unit_id` (integer, required): Property sub-identifier. Along with the property_id, it ensures the uniqueness of the property.
- `primary_listing_id` (integer, required): Primary listing (ad) ID of the property which is defined after the matching into property.
- `floor_number` (integer, required): Exact floor number.
- `rent_period` (string, required): Rent period. Values: `day`, `week`, `month`, `year`, `none`, `fortnight`.
- `sale_time_on_market` (object, required): Information about the property last activity on the sales market.
  - `date_start` (string, required): Start date of activity on the market.
  - `date_end` (string, required): End date of activity on the market.
  - `days_on_market` (integer, required): Number of days property was/is on the market.
  - `has_untracked_period` (boolean, required): Whether the property was already on the market when it started being tracked.
- `rent_time_on_market` (object, required): Information about the property last activity on the rental market.
  - `date_start` (string, required): Start date of activity on the market.
  - `date_end` (string, required): End date of activity on the market.
  - `days_on_market` (integer, required): Number of days property was/is on the market.
  - `has_untracked_period` (boolean, required): Whether the property was already on the market when it started being tracked.
- `listings_ids` (integer[], required): List of listing (ad) ID of the property.
- `administrative_level` (string, required): Location administrative level.
- `rent_price_base` (integer, required): Current rent price, in Euros.
- `rent_price_per_sqm` (number, required): Current rent price per square meter, in the currency specified in the `rent_currency` field.
- `sale_price_base` (integer, required): Current sale price, in Euros.
- `sale_price_per_sqm` (number, required): Current sale price per square meter, in the currency specified in the `sale_currency` field.
- `sale_price_last_change` (object, required): Information about the last change of sale price.
  - `alert_date` (string, required): Date of the change.
  - `old_value_int` (integer, required): Value before change.
  - `new_value_int` (integer, required): Value after change.
- `rent_price_last_change` (object, required): Information about the last change of rent price.
  - `alert_date` (string, required): Date of the change.
  - `old_value_int` (integer, required): Value before change.
  - `new_value_int` (integer, required): Value after change.
- `appeared_at` (string, required): Creation date and time of the first listing.
