{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "title": "Ts-Immo Property",
  "description": "Model of Ts-Immo real estates",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique identifier for a property",
      "text-indexed": true,
      "primary-key": true
    },
    "stream_id": {
      "type": "string",
      "description": "The Ts-Immo Stream ID",
      "text-indexed": true,
      "indexed": true
    },
    "crm_source": {
      "type": "string",
      "description": "The CRM where the property is issued",
      "text-indexed": true,
      "indexed": true
    },
    "hidden": {
      "type": "boolean",
      "description": "The property is explicitly hidden",
      "text-indexed": false,
      "indexed": true,
      "default": false
    },
    "reference": {
      "type": "string",
      "description": "The agency reference of the property",
      "text-indexed": true,
      "indexed": true
    },
    "crm_reference": {
      "type": "string",
      "description": "The CRM unique identifier for a property",
      "text-indexed": true,
      "indexed": true
    },
    "crm_parent_reference": {
      "type": "string",
      "description": "The CRM unique identifier for a project parent property",
      "text-indexed": true,
      "indexed": true
    },
    "property_url": {
      "type": "string",
      "description": "The final URL of a property ; generally the URL of property's website"
    },
    "featured": {
      "type": "boolean",
      "description": "Is the featured property or not"
    },
    "is_project": {
      "type": "boolean",
      "description": "Is the property a project / new building"
    },
    "parent_id": {
      "type": "string",
      "description": "The ID of the parent property in case of project"
    },
    "crm_type": {
      "type": "string",
      "description": "The CRM type of the property (such as apartment, house...)",
      "alias": "crmType",
      "text-indexed": true,
      "indexed": true
    },
    "type": {
      "type": "string",
      "description": "The TsImmo type of the property (such as apartment, house...)",
      "text-indexed": true,
      "indexed": true,
      "enum": [
        "apartment",
        "commercial",
        "goodwill",
        "house",
        "land",
        "office",
        "parking",
        "program",
        "building",
        "other"
      ]
    },
    "crm_sub_type": {
      "type": "string",
      "description": "The CRM subtype of the property",
      "alias": "crmSubType",
      "text-indexed": true,
      "indexed": true
    },
    "sub_type": {
      "type": "string",
      "description": "The CRM subtype of the property if defined",
      "text-indexed": true,
      "indexed": true,
      "enum": [
        "none",
        "bar_and_nightclub",
        "mas",
        "condo",
        "building",
        "new_program",
        "riad",
        "villa",
        "loft",
        "duplex",
        "penthouse",
        "studio",
        "attic",
        "hotel",
        "casino",
        "cinema",
        "theater",
        "camping",
        "pool",
        "golf",
        "outbuilding",
        "exhibition",
        "depot",
        "kiosk",
        "station_service",
        "garage",
        "cheese_diary",
        "butchery",
        "bakery",
        "hairdressing_salon",
        "laundry",
        "human_services",
        "services",
        "pharmacy",
        "gardening",
        "student_accommodation",
        "healthcare",
        "industrial",
        "leasure_and_sports",
        "restaurant_and_café",
        "investment_property",
        "retail",
        "shop",
        "warehouse",
        "townhouse",
        "cottage",
        "mansion",
        "bastide",
        "farm",
        "estate",
        "agricultural",
        "buildable",
        "not_buildable",
        "recreational",
        "pasture_land",
        "coworking",
        "flex_office",
        "open_office",
        "private_garage",
        "indoor_parking_space",
        "outdoor_parking_space",
        "covered_outdoor_space",
        "semi_detached",
        "terraced",
        "end_of_terrace",
        "forest",
        "pond",
        "sheepfold",
        "cellar",
        "transfer_lease",
        "room",
        "hunting_wood",
        "hunting_property",
        "castle",
        "prestigious_residence",
        "company",
        "business_capital",
        "barn",
        "hamlet",
        "private_hotel",
        "farmhouse",
        "office_space",
        "subdivision",
        "architect_house",
        "country_house",
        "marina",
        "mobile_home",
        "mill",
        "walls",
        "amenity_property",
        "leisure_property",
        "recreation_field",
        "hunting_territory",
        "wine_domain",
        "equestrian_property",
        "barge",
        "middle_class_house",
        "haras",
        "ecuries",
        "contemporary_home",
        "apartment",
        "house",
        "land",
        "parking_box",
        "leasure_land",
        "chalet",
        "garden_level",
        "master_house",
        "bungalow",
        "monastery",
        "commercial_premises",
        "commercial_building",
        "commercial_center",
        "office_building",
        "workshop",
        "library",
        "hospital",
        "laboratory",
        "business_premises",
        "housing_development",
        "old_house",
        "guest_house",
        "twin_house",
        "pavilion",
        "farmland",
        "commercial_land",
        "industrial_land",
        "toulousaine",
        "triplex",
        "provencal_house",
        "storage_room",
        "island",
        "ruin",
        "property",
        "housing_estate",
        "hangar",
        "local",
        "right_to_lease",
        "management",
        "woodshed",
        "bastidon",
        "yacht",
        "narrow_boat",
        "sailing_yacht",
        "catamaran",
        "gite",
        "arcade",
        "borey",
        "factory",
        "serviced_apartment",
        "twin_villa",
        "flat_house",
        "beach_house",
        "berth",
        "ger_district",
        "summer_house",
        "private_island",
        "residential_land",
        "motorboat",
        "ranch",
        "lake",
        "craft_workshop",
        "pavillon",
        "conservation_house",
        "artist_studio",
        "maid_room",
        "plateau",
        "souplex",
        "holding",
        "palace",
        "fort",
        "thatched_cottage",
        "mazet",
        "boat",
        "other"
      ]
    },
    "offer_type": {
      "type": "string",
      "description": "The offer under which the property is defined",
      "text-indexed": true,
      "indexed": true,
      "enum": [
        "rental",
        "sale",
        "auction",
        "seasonal_rental",
        "program",
        "life_annuity_sale",
        "lease_transfer",
        "leasehold"
      ]
    },
    "last_bid_date": {
      "type": "string",
      "description": "The date of the last bid on the property",
      "format": "date"
    },
    "sold_date": {
      "type": "string",
      "description": "When was the property sold",
      "format": "date"
    },
    "rent_details": {
      "type": "object",
      "description": "If the offer type is RENTAL, then gives details about it",
      "properties": {
        "status": {
          "type": "string",
          "description": "The rental status",
          "enum": [
            "available",
            "rented",
            "occupied",
            "to_be_agreed"
          ]
        },
        "rent_period": {
          "type": "string",
          "description": "The rental period",
          "enum": [
            "day",
            "week",
            "fortnight",
            "month",
            "quarterly",
            "bimonthly",
            "half_yearly",
            "yearly"
          ]
        },
        "fees_included": {
          "description": "Are fees included into the price",
          "type": "boolean",
          "alias": "feesIncluded"
        },
        "fees_amount": {
          "description": "The fees amount",
          "$ref": "#/$defs/amount",
          "alias": "feesAmount"
        },
        "inventory_fixtures_amount": {
          "description": "The inventory fixtures amount",
          "$ref": "#/$defs/amount",
          "alias": "inventoryFixturesAmount"
        },
        "guarantee_deposit_amount": {
          "description": "The guaranty deposit amount",
          "$ref": "#/$defs/amount"
        },
        "tenant": {
          "description": "The amount of the current rental",
          "$ref": "#/$defs/amount"
        },
        "furnished": {
          "type": "boolean",
          "description": "Is the property furnished"
        },
        "seasonal_rental": {
          "type": "object",
          "description": "If the offer type is SEASONAL RENTAL, then gives details about it",
          "properties": {
            "comment": {
              "description": "Note on that seasonal rental",
              "$ref": "#/$defs/amount",
              "alias": "feesAmount"
            }
          }
        },
        "rent_control": {
          "type": "object",
          "description": "The french laws implies a control of some rental",
          "properties": {
            "increased_reference_rent": {
              "$ref": "#/$defs/amount",
              "description": "The increased reference rent."
            },
            "base_rent": {
              "$ref": "#/$defs/amount",
              "description": "Base rent without charge"
            },
            "rent_supplement": {
              "$ref": "#/$defs/amount",
              "description": "The rent supplement"
            }
          }
        }
      }
    },
    "life_annuity_details": {
      "type": "object",
      "description": "If the offer type is LIFE_ANNUITY_SALE, then gives details about it",
      "properties": {
        "initial_capital": {
          "description": "The initial capital",
          "$ref": "#/$defs/amount"
        },
        "market_value": {
          "description": "The market value of the real estate",
          "$ref": "#/$defs/amount"
        },
        "life_annuity": {
          "type": "object",
          "description": "The amount related to the life annuity sale",
          "properties": {
            "amount": {
              "$ref": "#/$defs/amount"
            },
            "period": {
              "$ref": "#/$defs/period"
            }
          }
        },
        "occupants": {
          "type": "array",
          "description": "Description of the occupants",
          "items": {
            "type": "object",
            "properties": {
              "birth_date": {
                "type": "string",
                "description": "Date of birth of the occupant",
                "format": "date"
              },
              "age": {
                "type": "integer",
                "description": "Age of the occupant"
              },
              "gender": {
                "type": "string",
                "description": "Gender of the occupant",
                "enum": [
                  "male",
                  "female"
                ]
              }
            }
          }
        }
      }
    },
    "status": {
      "type": "string",
      "description": "Status of the property",
      "text-indexed": true,
      "indexed": true,
      "enum": [
        "available",
        "prospect",
        "under_contract",
        "option",
        "bid",
        "sales_compromise",
        "sold",
        "rented",
        "closed"
      ]
    },
    "crm_status": {
      "type": "string",
      "description": "CRM Status of the property"
    },
    "description": {
      "description": "Description of the property in different lang",
      "$ref": "#/$defs/i18n_text",
      "text-indexed": true
    },
    "short_description": {
      "description": "Short description of the property in different lang",
      "$ref": "#/$defs/i18n_text"
    },
    "title": {
      "description": "Title of the property in different lang",
      "$ref": "#/$defs/i18n_text",
      "text-indexed": {
        "weight": 2
      }
    },
    "garages": {
      "type": "integer",
      "description": "The number of garages of the property",
      "alias": "nbGarages"
    },
    "parkings": {
      "type": "integer",
      "description": "The number of garages of the property",
      "alias": "nbParkings"
    },
    "living_rooms": {
      "type": "number",
      "description": "The number of living rooms of the property (can be x.5 in some countries)",
      "alias": "nbRooms"
    },
    "kitchens": {
      "type": "integer",
      "description": "The number of kitchens of the property"
    },
    "bedrooms": {
      "type": "integer",
      "description": "The number of bedrooms of the property"
    },
    "sleeps": {
      "type": "integer",
      "description": "The number of sleeps of the property"
    },
    "apartments": {
      "type": "number",
      "description": "The number of apartments of the property (for a building)",
      "alias": "nbRooms"
    },
    "bathrooms": {
      "type": "integer",
      "description": "The number of bath rooms of the property"
    },
    "showerrooms": {
      "type": "integer",
      "description": "The number of shower rooms of the property",
      "alias": "shower_rooms"
    },
    "showrooms": {
      "type": "integer",
      "description": "The number of showrooms of the property"
    },
    "toilets": {
      "type": "integer",
      "description": "The number of toilets of the property"
    },
    "storage_rooms": {
      "type": "integer",
      "description": "In case of an industrial/commercial property, the number of storage rooms",
      "alias": "storagerooms"
    },
    "terraces": {
      "type": "integer",
      "description": "Number of terraces"
    },
    "balconies": {
      "type": "integer",
      "description": "Number of balconies"
    },
    "cellars": {
      "type": "integer",
      "description": "Number of cellars"
    },
    "floors": {
      "type": "integer",
      "description": "The number of floors of the property"
    },
    "floor": {
      "type": "string",
      "description": "In case of an apartment, the floor on which the apartment is located"
    },
    "foot_house": {
      "type": "boolean",
      "description": "Is a foot-house property"
    },
    "manufacturing_areas": {
      "type": "integer",
      "description": "In case of an industrial/commercial property, the number of manufacturing areas"
    },
    "standing": {
      "type": "string",
      "description": "The standing of the real estate",
      "enum": [
        "standing",
        "good",
        "luxury",
        "total_luxury",
        "large_ensemble",
        "normal",
        "poor"
      ]
    },
    "general_condition": {
      "$ref": "#/$defs/condition",
      "description": "The general condition of the real estate"
    },
    "interior_condition": {
      "$ref": "#/$defs/condition",
      "description": "The interior condition of the real estate"
    },
    "exterior_condition": {
      "$ref": "#/$defs/condition",
      "description": "The exterior condition of the real estate"
    },
    "roof_condition": {
      "$ref": "#/$defs/condition",
      "description": "The roof condition of the real estate"
    },
    "kitchen_condition": {
      "$ref": "#/$defs/condition",
      "description": "The kitchen condition"
    },
    "bathroom_condition": {
      "$ref": "#/$defs/condition",
      "description": "The bathroom condition"
    },
    "kitchen_type": {
      "type": "string",
      "description": "The type of kitchen",
      "alias": "kitchenType",
      "enum": [
        "none",
        "empty",
        "not_applicable",
        "standard",
        "american",
        "separate",
        "industrial",
        "kitchenette",
        "american_equipped",
        "separate_equipped",
        "equipped_kitchenette",
        "equipped"
      ]
    },
    "crm_kitchen_type": {
      "type": "string",
      "description": "The type of kitchen from CRM"
    },
    "coownership": {
      "type": "object",
      "description": "The property is a coownership",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "The ownership is active"
        },
        "lot_reference": {
          "type": "string",
          "description": "The lot name"
        },
        "lot_count": {
          "type": "integer",
          "description": "The number of lot in the coownership"
        },
        "condominium_syndicate": {
          "type": "string",
          "description": "The condominium syndicate"
        },
        "share": {
          "type": "number",
          "description": "The count of shares in the coownership"
        },
        "under_backup_plan": {
          "type": "boolean",
          "description": "Is the coownership under a backup plan"
        },
        "provisional_administrator": {
          "type": "string",
          "description": "The provisional administrator"
        },
        "syndicat_status": {
          "type": "string",
          "description": "The status of the syndicat of the coownership",
          "enum": [
            "alert",
            "none",
            "recovery"
          ]
        },
        "syndicat_procedure_details": {
          "type": "string",
          "description": "The procedure details of the syndicat of the coownership"
        }
      }
    },
    "orientation": {
      "$ref": "#/$defs/orientation",
      "description": "The main orientation of the property"
    },
    "orientations": {
      "description": "All the orientations of the property",
      "type": "array",
      "items": {
        "$ref": "#/$defs/orientation"
      }
    },
    "garden_orientation": {
      "$ref": "#/$defs/orientation",
      "description": "The main orientation of the garden"
    },
    "terrace_orientation": {
      "$ref": "#/$defs/orientation",
      "description": "The main orientation of the terrace"
    },
    "balcony_orientation": {
      "$ref": "#/$defs/orientation",
      "description": "The main orientation of the balcony"
    },
    "video": {
      "type": "object",
      "description": "Define the different videos related to the property",
      "properties": {
        "video_url": {
          "type": "string",
          "description": "The main video URL"
        },
        "virtual_tour_url": {
          "type": "string",
          "description": "The virtual tour URL of the property"
        },
        "video_360_url": {
          "type": "string",
          "description": "The 360° video URL of the property"
        },
        "video_custom_url": {
          "type": "string",
          "description": "A custom video URL of the property"
        }
      }
    },
    "appointment_service_url": {
      "type": "string",
      "description": "If an appointment service is possible, then the URL allows to schedule an appointment"
    },
    "legal": {
      "type": "object",
      "description": "The legal part of the property",
      "properties": {
        "energy": {
          "type": "object",
          "description": "The energy part of the property",
          "properties": {
            "enabled": {
              "description": "Is the diagnostic mandatory for the given property",
              "type": "boolean"
            },
            "blank": {
              "description": "Is the diagnostic blank",
              "type": "boolean"
            },
            "epc_value": {
              "type": "number",
              "description": "The EPC (Energy performance / DPE in France) rating of the property which provides an indication of how much you may pay in energy bills"
            },
            "epc_category": {
              "type": "string",
              "javaEnums": [
                {
                  "name": "A_PLUS_PLUS"
                },
                {
                  "name": "A_PLUS"
                },
                {
                  "name": "A"
                },
                {
                  "name": "B"
                },
                {
                  "name": "C"
                },
                {
                  "name": "D"
                },
                {
                  "name": "E"
                },
                {
                  "name": "F"
                },
                {
                  "name": "G"
                }
              ],
              "description": "The EPC letter that corresponds to the EPC value",
              "enum": [
                "A++",
                "A+",
                "A",
                "B",
                "C",
                "D",
                "E",
                "F",
                "G",
                "empty",
                "not_applicable"
              ]
            },
            "epc_reference": {
              "type": "string",
              "description": "The EPC reference of the report"
            },
            "total_epc_value": {
              "type": "integer",
              "description": "The Total EPC value"
            },
            "greenhouse_value": {
              "type": "number",
              "description": "The Greenhouse emission ( GES in France ) rating of the property which provides an indication of how much your property impacts the planet"
            },
            "greenhouse_emissions": {
              "type": "string",
              "enum": [
                "A",
                "B",
                "C",
                "D",
                "E",
                "F",
                "G",
                "empty",
                "not_applicable"
              ]
            },
            "diagnostic_date": {
              "description": "For french DPE, date of the diagnostic",
              "type": "string",
              "format": "date"
            },
            "costs_estimation": {
              "description": "For french DPE, estimation of the energetic costs",
              "type": "object",
              "properties": {
                "min": {
                  "description": "Minimal energetic cost",
                  "$ref": "#/$defs/amount"
                },
                "max": {
                  "description": "Maximal energetic cost",
                  "$ref": "#/$defs/amount"
                },
                "reference_year": {
                  "description": "Reference year for the estimation",
                  "type": "integer"
                }
              }
            },
            "nabers": {
              "type": "object",
              "properties": {
                "description": {
                  "type": "string"
                },
                "type": {
                  "type": "string"
                },
                "maximum": {
                  "type": "number"
                },
                "minimum": {
                  "type": "number"
                }
              }
            },
            "nathers": {
              "type": "object",
              "properties": {
                "description": {
                  "type": "string"
                },
                "type": {
                  "type": "string"
                },
                "maximum": {
                  "type": "number"
                },
                "minimum": {
                  "type": "number"
                }
              }
            },
            "co2_emissions": {
              "type": "string"
            },
            "e_level": {
              "type": "integer"
            },
            "applicable": {
              "type": "boolean",
              "description": "Is the diagnostic applicable for the given property?"
            }
          }
        },
        "regulations": {
          "type": "object",
          "properties": {
            "building_permit": {
              "type": "boolean"
            },
            "priority_purchase_right": {
              "type": "boolean"
            },
            "subdivision_authorisation": {
              "type": "boolean"
            },
            "urban_planning_breach": {
              "type": "boolean"
            },
            "as_built_report": {
              "type": "boolean"
            },
            "expropriation_plan": {
              "type": "boolean"
            },
            "heritage_list": {
              "type": "boolean"
            },
            "pending_legal_proceedings": {
              "type": "boolean"
            },
            "registered_building": {
              "type": "boolean"
            },
            "site_untapped_activity": {
              "type": "boolean"
            },
            "urban_planning_certificate": {
              "type": "boolean"
            },
            "accessible_to_foreigners": {
              "type": "boolean"
            }
          }
        },
        "legal_mentions": {
          "type": "object",
          "description": "Legal mentions",
          "properties": {
            "text": {
              "$ref": "#/$defs/i18n_text"
            },
            "agency_fees_url": {
              "type": "string",
              "description": "The URL of the agency fees"
            }
          }
        },
        "property_and_land": {
          "type": "object",
          "properties": {
            "building_name": {
              "type": "string",
              "description": "The building name",
              "alias": "buildingName"
            },
            "program_name": {
              "type": "string",
              "description": "The name of the program",
              "alias": "programName"
            },
            "purchased_year": {
              "type": "integer",
              "description": "Last purchased year"
            },
            "cadastral_reference": {
              "type": "string",
              "description": "The cadastral reference"
            },
            "stairs_reference": {
              "type": "string",
              "description": "The stairs reference"
            },
            "flood_risk": {
              "type": "string",
              "enum": [
                "no_flood_risk_area",
                "potential_flood_sensitive_area",
                "effective_flood_sensitive_area"
              ]
            },
            "land_use_designation": {
              "type": "string",
              "enum": [
                "residential",
                "mixed_residential",
                "industrial",
                "recreational",
                "park",
                "area_with_economical_activity",
                "forest_area",
                "agricultural",
                "nature_area",
                "natural_reserve",
                "residential_area_with_cultural_historical_value",
                "industrial_area_for_sme",
                "day_recreation_area",
                "other"
              ]
            }
          }
        },
        "reports": {
          "type": "object",
          "properties": {
            "electricity": {
              "$ref": "#/$defs/report"
            },
            "gas": {
              "$ref": "#/$defs/report"
            },
            "sanitation": {
              "$ref": "#/$defs/report"
            },
            "fuel_tank": {
              "$ref": "#/$defs/report"
            },
            "asbestos": {
              "$ref": "#/$defs/report"
            },
            "lead": {
              "$ref": "#/$defs/report"
            },
            "risks": {
              "$ref": "#/$defs/report"
            },
            "termites": {
              "$ref": "#/$defs/report"
            },
            "notes": {
              "type": "string",
              "description": "Note on the reports"
            }
          }
        },
        "notary_name": {
          "type": "string",
          "description": "Name of the notary"
        },
        "business": {
          "type": "object",
          "description": "Different business information",
          "properties": {
            "revenues": {
              "type": "object",
              "description": "Last revenues of the company",
              "properties": {
                "year_n1": {
                  "$ref": "#/$defs/amount",
                  "description": "Revenues or Year -1"
                },
                "year_n2": {
                  "$ref": "#/$defs/amount",
                  "description": "Revenues or Year -2"
                },
                "year_n3": {
                  "$ref": "#/$defs/amount",
                  "description": "Revenues or Year -3"
                },
                "comment": {
                  "type": "string",
                  "description": "Comment on Revenues"
                }
              }
            },
            "company_type": {
              "type": "string",
              "description": "Type of company"
            }
          }
        }
      }
    },
    "auction": {
      "type": "object",
      "properties": {
        "start_date": {
          "type": "string",
          "format": "date-time"
        },
        "end_date": {
          "type": "string",
          "format": "date-time"
        },
        "first_offer": {
          "$ref": "#/$defs/amount"
        },
        "offer_step": {
          "$ref": "#/$defs/amount"
        },
        "ads_amount": {
          "$ref": "#/$defs/amount"
        },
        "type": {
          "type": "string",
          "enum": [
            "ascending",
            "descending"
          ]
        }
      }
    },
    "open_homes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "start_date": {
            "type": "string",
            "format": "date-time"
          },
          "end_date": {
            "type": "string",
            "format": "date-time"
          }
        }
      }
    },
    "financial": {
      "type": "object",
      "properties": {
        "commissions": {
          "type": "object",
          "description": "The different commissions",
          "properties": {
            "type": {
              "type": "string",
              "enum": [
                "seller",
                "buyer",
                "shared"
              ]
            },
            "agency": {
              "$ref": "#/$defs/commission"
            },
            "buyer": {
              "$ref": "#/$defs/commission"
            },
            "seller": {
              "$ref": "#/$defs/commission"
            },
            "notary": {
              "$ref": "#/$defs/amount"
            }
          }
        },
        "transaction": {
          "type": "object",
          "description": "The transaction details",
          "properties": {
            "price": {
              "$ref": "#/$defs/amount"
            },
            "net_sales_price": {
              "$ref": "#/$defs/amount"
            },
            "price_vat_regime": {
              "type": "number"
            },
            "sold_price": {
              "$ref": "#/$defs/amount"
            }
          }
        },
        "range": {
          "type": "object",
          "properties": {
            "from": {
              "$ref": "#/$defs/amount"
            },
            "to": {
              "$ref": "#/$defs/amount"
            }
          }
        },
        "estimation": {
          "type": "object",
          "properties": {
            "min": {
              "$ref": "#/$defs/amount"
            },
            "max": {
              "$ref": "#/$defs/amount"
            },
            "date": {
              "type": "string",
              "format": "date"
            }
          }
        },
        "building_costs": {
          "description": "The costs that is expected for the co-ownership",
          "type": "object",
          "properties": {
            "amount": {
              "$ref": "#/$defs/amount"
            },
            "period": {
              "$ref": "#/$defs/period"
            }
          }
        },
        "property_tax": {
          "description": "The yearly property tax",
          "type": "object",
          "properties": {
            "amount": {
              "$ref": "#/$defs/amount"
            },
            "period": {
              "$ref": "#/$defs/period"
            }
          }
        },
        "property_costs": {
          "description": "The costs of the property it self",
          "type": "object",
          "properties": {
            "amount": {
              "$ref": "#/$defs/amount"
            },
            "period": {
              "$ref": "#/$defs/period"
            }
          }
        },
        "information": {
          "description": "Extra information that can be added",
          "type": "string"
        },
        "average_sales_price": {
          "description": "The average price of the estate",
          "type": "object",
          "properties": {
            "amount": {
              "description": "Average amount of the estate per unit",
              "$ref": "#/$defs/amount"
            },
            "per_unit": {
              "type": "string",
              "description": "The unit of the average price",
              "enum": [
                "sq_ft",
                "sq_m",
                "are",
                "acre"
              ]
            }
          }
        }
      }
    },
    "location": {
      "description": "The real location of the property",
      "$ref": "#/$defs/location"
    },
    "amenities": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "pool",
          "pool_house",
          "janitor",
          "janitor_house",
          "video_surveillance",
          "fire_door",
          "sliding_windows",
          "fire_alarm",
          "double_flow_ventilation",
          "basement",
          "cellar",
          "terrace",
          "garden",
          "parking",
          "outdoor_shower",
          "lift",
          "cooling_room",
          "display_window",
          "reception_area",
          "waiting_area",
          "guesthouse",
          "attic",
          "water_access",
          "fenced",
          "utilities_access",
          "sewer_access",
          "drainage",
          "road_access",
          "print_and_copy_area",
          "server_room",
          "laundry",
          "loggia",
          "bike_storage_room",
          "storage_space",
          "electrical_gate",
          "manual_gate",
          "fence",
          "remote_control",
          "key_card",
          "code",
          "climate_control",
          "balcony",
          "electric_shutters",
          "shutters",
          "central_vacuum",
          "crawl_space",
          "carport",
          "interior_parking",
          "exterior_parking",
          "disabled_person_access",
          "electric_car_terminal",
          "armored_door",
          "whirlpool_bathtub",
          "spa",
          "pets_accepted",
          "home_automation",
          "furnished",
          "separate_toilets",
          "dock",
          "interphone",
          "visiophone",
          "digicode",
          "tv_cable",
          "jacuzzi",
          "work_place",
          "dressing",
          "housing_estate",
          "terraced_house",
          "water_softener",
          "air_conditioning",
          "alarm",
          "fireplace",
          "walk_in_closet",
          "home_cinema",
          "wine_cellar",
          "rest_room",
          "sauna",
          "fitness_room",
          "optical_fiber",
          "domotic",
          "simple_glazing",
          "double_glazing",
          "triple_glazing",
          "solar_panels",
          "solar_boiler",
          "rainwater_harvesting",
          "insulated_roof",
          "historical_monument",
          "videophone",
          "heliport",
          "safe",
          "well",
          "lawn",
          "source",
          "generator",
          "dishwasher",
          "cooking_plate",
          "cooker",
          "iron",
          "hair_dryer",
          "television",
          "dvd_player",
          "cd_player",
          "outdoor_lighting",
          "linen",
          "dishes",
          "tumble_dryer",
          "telephone",
          "fridge",
          "oven",
          "coffee_maker",
          "microwave",
          "washing_machine",
          "shabbat_elevator",
          "sukkah",
          "synagogue",
          "common_laundry_room",
          "metal_curtain",
          "patch_bay",
          "computer_network",
          "false_ceiling",
          "fire_hydrant",
          "automatic_water_extinguisher",
          "unloading_dock",
          "connected_thermostat",
          "bowling_alley",
          "borehole",
          "non_floodable",
          "playground",
          "golf",
          "flyboard",
          "amphibious_vehicle",
          "beach_games",
          "bicycles",
          "canoeing",
          "diving",
          "fishing",
          "floating_pool",
          "hoverboard",
          "hovercraft",
          "inflatables",
          "slide",
          "water_park",
          "jet_ski",
          "kite_surfing",
          "paddle",
          "scooter",
          "seabob",
          "segway",
          "wakeboard",
          "single_flow_ventilation",
          "business_center",
          "company_restaurant",
          "stabilizers",
          "hydraulic_platform",
          "freezer",
          "overhead_cranes",
          "towing_area",
          "extraction_duct",
          "access_control",
          "harbour_square",
          "listed/inscribed_building",
          "screens",
          "security_service",
          "civil_protection_shelter",
          "child_friendly",
          "view",
          "sea_view",
          "mountain_view",
          "lake_view",
          "hunting",
          "tennis",
          "cinema",
          "park",
          "railway_terminal",
          "power_generator",
          "triphasic",
          "monophasic",
          "inverter",
          "load_lift",
          "archive_room",
          "telemonitoring",
          "internet",
          "barbecue",
          "gym",
          "wifi",
          "central_vaacum",
          "watering",
          "heating_energy_gas",
          "heating_energy_fuel",
          "heating_energy_solar",
          "heating_energy_electricity",
          "heating_energy_geothermy",
          "heating_energy_coal",
          "heating_energy_wood",
          "heating_energy_wood_pellet",
          "heating_energy_mixed",
          "heating_energy_other",
          "heating_energy_none",
          "central_heating",
          "floor_heating",
          "heat_pump",
          "individual_heating",
          "convector",
          "radiator",
          "stove",
          "no_heating"
        ]
      }
    },
    "proximities": {
      "type": "array",
      "description": "List of services/buildings that are closed to the property",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the place"
          },
          "location": {
            "type": "string",
            "description": "Address of the place"
          },
          "geo": {
            "type": "object",
            "properties": {
              "latitude": {
                "type": "number",
                "minimum": -90,
                "maximum": 90
              },
              "longitude": {
                "type": "number",
                "minimum": -180,
                "maximum": 180
              },
              "altitude": {
                "type": "number"
              }
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "airport",
              "beach",
              "bus",
              "bus_station",
              "cab",
              "cinema",
              "city_center",
              "congress_center",
              "daycare",
              "doctor",
              "elementary_school",
              "golf",
              "high_school",
              "highway",
              "hospital_clinic",
              "lake",
              "main_road",
              "trade",
              "waterway",
              "park",
              "port",
              "public_parking",
              "sea",
              "shops",
              "ski_slopes",
              "sports_hall",
              "subway",
              "supermarket",
              "swimming_pool",
              "tennis",
              "tgv_station",
              "train_station",
              "tramway",
              "university",
              "kindergarten",
              "childcare"
            ]
          },
          "website": {
            "type": "string",
            "description": "Website"
          },
          "distance": {
            "type": "object",
            "properties": {
              "length": {
                "type": "number"
              },
              "unit": {
                "type": "string",
                "enum": [
                  "miles",
                  "km",
                  "meters",
                  "minutes"
                ]
              }
            }
          }
        }
      }
    },
    "sizes": {
      "type": "object",
      "properties": {
        "plot_area": {
          "$ref": "#/$defs/size_unit"
        },
        "liveable_area": {
          "description": "The liveable area of the property",
          "$ref": "#/$defs/size_unit"
        },
        "garden_area": {
          "description": "The garden size of the property",
          "$ref": "#/$defs/size_unit"
        },
        "terrace_area": {
          "description": "The terrace size of the property",
          "$ref": "#/$defs/size_unit"
        },
        "balcony_area": {
          "description": "The balcony size of the property",
          "$ref": "#/$defs/size_unit"
        },
        "parking_area": {
          "description": "The parking size of the property",
          "$ref": "#/$defs/size_unit"
        },
        "legal_area": {
          "description": "The legal area of the property (Loi Carrez in France)",
          "$ref": "#/$defs/size_unit"
        },
        "floor_area": {
          "description": "The floor area of the property",
          "$ref": "#/$defs/size_unit"
        },
        "land_area": {
          "description": "The land area of the property",
          "$ref": "#/$defs/size_unit"
        },
        "main_room_area": {
          "description": "The main room area of the property",
          "$ref": "#/$defs/size_unit"
        },
        "garage_area": {
          "description": "The garage area of the property",
          "$ref": "#/$defs/size_unit"
        },
        "cellar_area": {
          "description": "The cellar area of the property",
          "$ref": "#/$defs/size_unit"
        }
      }
    },
    "permissions": {
      "type": "object",
      "properties": {
        "farming": {
          "type": "boolean"
        },
        "fishing": {
          "type": "boolean"
        },
        "planning": {
          "type": "boolean"
        },
        "construction": {
          "type": "boolean"
        }
      }
    },
    "areas": {
      "title": "AreaOfProperty",
      "alias": "rooms",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the area"
          },
          "description": {
            "description": "The description of the area",
            "type": "string"
          },
          "orientations": {
            "type": "array",
            "description": "Orientation of the area",
            "items": {
              "$ref": "#/$defs/orientation"
            }
          },
          "floor": {
            "type": "integer",
            "description": "The floor of the area"
          },
          "size": {
            "$ref": "#/$defs/size_unit",
            "description": "The size of the area"
          },
          "type": {
            "type": "string",
            "description": "The type of area",
            "enum": [
              "custom",
              "bedroom",
              "living_room",
              "kitchen",
              "garage",
              "parking",
              "cellar",
              "garden_shelter",
              "bathroom",
              "laundry_room",
              "study",
              "hallway",
              "corridor",
              "shower_room",
              "walk_in_closet",
              "entrance",
              "lavatory",
              "veranda",
              "terrace",
              "solarium",
              "living_room_dining_area",
              "play_room",
              "dining_room",
              "pool_house",
              "cupboard",
              "not_used",
              "loggia",
              "attic",
              "other",
              "mezzanine",
              "root_cellar",
              "maintenance_room",
              "workshop",
              "studio",
              "loft",
              "library",
              "closet",
              "courtyard",
              "landing",
              "linen_room",
              "basement",
              "bathroom_lavatory",
              "shower_room_lavatory",
              "balcony",
              "exercise_room",
              "discotheque",
              "home_cinema",
              "reception_room",
              "storage_room",
              "garden",
              "park",
              "land",
              "patio",
              "master_bedroom",
              "suite",
              "shed",
              "apartment",
              "cabin",
              "barn",
              "outbuilding",
              "bike_storage_room",
              "ski_storage_room",
              "garbage_room",
              "hammam",
              "indoor_swimming_pool",
              "prayer_room",
              "sauna",
              "watchtower",
              "room",
              "meeting_room",
              "maid_room",
              "maid_studio",
              "double_reception_room",
              "triple_reception_room",
              "indoor_parking",
              "outdoor_parking",
              "stockroom",
              "shop",
              "cafeteria",
              "unit",
              "warehouse",
              "accommodation",
              "arcade",
              "house",
              "stair",
              "box",
              "carnotzet",
              "panic_room",
              "open_space",
              "hall",
              "living_room_kitchen",
              "summer_kitchen",
              "spa",
              "gallery",
              "boathouse",
              "eat-in_kitchen",
              "equipped_kitchen",
              "semi_equipped_kitchen",
              "corner_kitchen",
              "kitchenette",
              "open_kitchen",
              "plot",
              "porch",
              "living_dining_kitchen_area",
              "children_room",
              "locker",
              "lobby",
              "accessible_toilet",
              "craft_workshop",
              "wine_cellar"
            ]
          },
          "notes": {
            "type": "string",
            "description": "Additional note on the area"
          }
        }
      }
    },
    "cover_thumbnail": {
      "type": "string",
      "description": "URL of the thumbnail"
    },
    "images": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/filedoc"
      }
    },
    "plans": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/filedoc"
      }
    },
    "documents": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/filedoc"
      }
    },
    "features": {
      "type": "object",
      "properties": {
        "heating_energy": {
          "type": "object",
          "alias": "heatingEnergy",
          "properties": {
            "gas": {
              "type": "boolean"
            },
            "fuel": {
              "type": "boolean"
            },
            "solar": {
              "type": "boolean"
            },
            "electricity": {
              "type": "boolean"
            },
            "geothermy": {
              "type": "boolean"
            },
            "coal": {
              "type": "boolean"
            },
            "wood": {
              "type": "boolean"
            },
            "wood_pellet": {
              "type": "boolean"
            },
            "heat_pump": {
              "type": "boolean"
            },
            "mixed": {
              "type": "boolean"
            },
            "other": {
              "type": "boolean"
            },
            "none": {
              "type": "boolean"
            }
          }
        },
        "heating_cooling": {
          "type": "object",
          "properties": {
            "central_heating": {
              "type": "boolean"
            },
            "floor_heating": {
              "type": "boolean"
            },
            "air_conditioning": {
              "type": "boolean"
            },
            "heat_pump": {
              "type": "boolean"
            },
            "individual_heating": {
              "type": "boolean"
            },
            "convector": {
              "type": "boolean"
            },
            "radiator": {
              "type": "boolean"
            },
            "stove": {
              "type": "boolean"
            },
            "no_heating": {
              "type": "boolean"
            },
            "fireplace": {
              "type": "boolean"
            }
          }
        },
        "hot_water": {
          "type": "object",
          "properties": {
            "solar": {
              "type": "boolean"
            },
            "hot_water_tank": {
              "type": "boolean"
            },
            "boiler": {
              "type": "boolean"
            },
            "heat_pump": {
              "type": "boolean"
            },
            "collective_water": {
              "type": "boolean"
            },
            "individual_water": {
              "type": "boolean"
            },
            "septic_tank": {
              "type": "boolean"
            },
            "main_drainage": {
              "type": "boolean"
            },
            "treatment_plant": {
              "type": "boolean"
            },
            "grey_water_pit": {
              "type": "boolean"
            },
            "micro_sewage ": {
              "type": "boolean"
            }
          }
        },
        "crm_heating": {
          "type": "string",
          "description": "The CRM heating"
        },
        "crm_hot_water": {
          "type": "string",
          "description": "The CRM hot water"
        }
      }
    },
    "building": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the building"
        },
        "method": {
          "type": "string",
          "description": "Building method of the building"
        },
        "renovation": {
          "type": "object",
          "properties": {
            "year": {
              "type": "integer"
            },
            "description": {
              "type": "string"
            }
          }
        },
        "construction": {
          "type": "object",
          "properties": {
            "year": {
              "type": "integer"
            },
            "architect": {
              "type": "string"
            }
          }
        },
        "units_of_building": {
          "type": "integer"
        }
      }
    },
    "negotiator": {
      "$ref": "#/$defs/person"
    },
    "mandate": {
      "type": "object",
      "description": "A real estate mandate",
      "properties": {
        "reference": {
          "type": "string",
          "description": "Reference of the mandate"
        },
        "start_date": {
          "type": "string",
          "format": "date",
          "description": "Start of the mandate"
        },
        "end_date": {
          "type": "string",
          "format": "date",
          "description": "End of the mandate"
        },
        "exclusive": {
          "type": "boolean",
          "description": "Is the mandate exclusive or not"
        },
        "type": {
          "type": "string",
          "enum": [
            "simple",
            "co_exclusive",
            "exclusive",
            "delegation",
            "exclusive_agency",
            "partner",
            "verbal",
            "search",
            "rental"
          ]
        }
      }
    },
    "internal_note": {
      "type": "string"
    },
    "occupancy": {
      "type": "object",
      "properties": {
        "occupied": {
          "type": "boolean"
        },
        "available_from": {
          "type": "string",
          "format": "date"
        },
        "contact_details": {
          "type": "string"
        },
        "tenant_contract": {
          "type": "object",
          "properties": {
            "end_date": {
              "type": "string",
              "format": "date"
            },
            "start_date": {
              "type": "string",
              "format": "date"
            }
          }
        }
      }
    },
    "office": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "text-indexed": true
        },
        "code": {
          "type": "string"
        },
        "mail": {
          "type": "string"
        },
        "phone": {
          "type": "string"
        },
        "logo_url": {
          "type": "string"
        },
        "commission_url": {
          "type": "string"
        },
        "website_url": {
          "type": "string"
        },
        "photo_url": {
          "type": "string"
        },
        "identification": {
          "type": "string"
        },
        "location": {
          "$ref": "#/$defs/location"
        }
      }
    },
    "buyers": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/person"
      }
    },
    "vendors": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/person"
      }
    },
    "view": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "obstructed",
            "slight",
            "unobstructed",
            "panoramic",
            "exterior",
            "interior",
            "opposite"
          ]
        },
        "landscapes": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "sea",
              "mountains",
              "hills",
              "greenery",
              "monument",
              "forest",
              "port",
              "river",
              "city",
              "countryside",
              "village",
              "park",
              "garden",
              "sky",
              "courtyard",
              "main_stem",
              "harbor",
              "street",
              "lake",
              "ski_slopes",
              "swimming_pool",
              "golf",
              "vines"
            ]
          }
        }
      }
    },
    "custom_fields": {
      "description": "Custom data you want to transfer",
      "type": "array",
      "items": {
        "type": "object",
        "description": "A custom data",
        "properties": {
          "key": {
            "type": "string",
            "description": "The key of the custom data"
          },
          "value": {
            "type": "string",
            "description": "The value of the custom data"
          },
          "group": {
            "type": "string",
            "description": "The group of the custom data"
          }
        }
      }
    },
    "child_property_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "delivered_at": {
      "description": "Date of delivery (for new construction)",
      "type": "string",
      "format": "date",
      "description": "When the real estate will be delivered"
    },
    "available_at": {
      "description": "Date of availabilty (when the rental is free)",
      "type": "string",
      "format": "date"
    },
    "crm_model": {
      "type": "string",
      "description": "The model of the real estate that has been fetched from the CRM in base64 format"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the real estate model has been created in the CRM or registered in TS-Immo"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the real estate model has been updated in the CRM or registered in TS-Immo"
    },
    "fetched_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the real estate model has been fetched from the CRM"
    },
    "synchronization": {
      "type": "object",
      "description": "The synchronization data",
      "properties": {
        "version": {
          "type": "integer",
          "description": "The Ts-Immo version of the property",
          "text-indexed": false,
          "indexed": false
        },
        "sync_status": {
          "$ref": "#/$defs/syncStatus",
          "description": "The status of the last synchronization"
        },
        "synced_at": {
          "type": "string",
          "format": "date-time",
          "description": "When the real estate model has been synchronized with the webhook"
        },
        "synced_domain": {
          "type": "string",
          "description": "When the real estate model has been synchronized with the webhook"
        }
      }
    }
  },
  "required": [
    "id",
    "stream_id",
    "reference",
    "crm_reference",
    "created_at",
    "fetched_at",
    "updated_at",
    "type",
    "status",
    "title",
    "description"
  ],
  "$defs": {
    "size_unit": {
      "type": "object",
      "required": [
        "size",
        "unit"
      ],
      "properties": {
        "size": {
          "type": "number"
        },
        "unit": {
          "type": "string",
          "enum": [
            "sq_ft",
            "sq_m",
            "are",
            "acre"
          ]
        }
      }
    },
    "filedoc": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "checksum": {
          "type": "string"
        },
        "group": {
          "type": "string"
        },
        "filename": {
          "type": "string"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        },
        "description": {
          "type": "string"
        },
        "content_type": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "url_expires_on": {
          "type": "string",
          "format": "date-time"
        },
        "ordinal": {
          "type": "integer",
          "minimum": 0
        },
        "has_failure": {
          "type": "boolean"
        },
        "error_message": {
          "type": "string"
        },
        "private": {
          "type": "boolean"
        }
      }
    },
    "location": {
      "type": "object",
      "properties": {
        "geo": {
          "type": "object",
          "properties": {
            "latitude": {
              "type": "number",
              "minimum": -90,
              "maximum": 90
            },
            "longitude": {
              "type": "number",
              "minimum": -180,
              "maximum": 180
            },
            "altitude": {
              "type": "number"
            }
          }
        },
        "city": {
          "type": "string"
        },
        "street": {
          "type": "string"
        },
        "street_2": {
          "type": "string"
        },
        "number": {
          "type": "string"
        },
        "box": {
          "type": "string"
        },
        "addition": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "regionCode": {
          "type": "string"
        },
        "state": {
          "type": "string"
        },
        "country": {
          "type": "string"
        },
        "countryCode": {
          "type": "string"
        },
        "formatted": {
          "type": "string"
        },
        "raw_address": {
          "type": "string"
        },
        "postal_code": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        }
      }
    },
    "amount": {
      "type": "object",
      "properties": {
        "amount": {
          "type": "number"
        },
        "currency": {
          "$ref": "#/$defs/currency"
        },
        "hidden": {
          "type": "boolean"
        }
      }
    },
    "person": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "crm_id": {
          "type": "string"
        },
        "first_name": {
          "type": "string"
        },
        "last_name": {
          "type": "string",
          "text-indexed": true
        },
        "role": {
          "type": "string"
        },
        "email": {
          "type": "string",
          "text-indexed": true
        },
        "phone": {
          "type": "string"
        },
        "mobile": {
          "type": "string"
        },
        "identification": {
          "type": "string"
        },
        "independent": {
          "type": "boolean"
        },
        "photo_url": {
          "type": "string"
        },
        "notes": {
          "type": "string"
        }
      }
    },
    "orientation": {
      "type": "string",
      "enum": [
        "N",
        "NE",
        "E",
        "SE",
        "S",
        "SW",
        "W",
        "NW",
        "NS",
        "EW"
      ]
    },
    "currency": {
      "type": "string",
      "enum": [
        "EUR",
        "AED",
        "AFN",
        "ALL",
        "AMD",
        "ANG",
        "AOA",
        "ARS",
        "AUD",
        "AWG",
        "AZN",
        "BAM",
        "BBD",
        "BDT",
        "BGN",
        "BHD",
        "BIF",
        "BMD",
        "BND",
        "BOB",
        "BRL",
        "BSD",
        "BTN",
        "BWP",
        "BYR",
        "BZD",
        "CAD",
        "CDF",
        "CHF",
        "CLP",
        "CNY",
        "COP",
        "CRC",
        "CUP",
        "CVE",
        "DJF",
        "DKK",
        "DOP",
        "DZD",
        "EGP",
        "ERN",
        "ETB",
        "FJD",
        "FKP",
        "GBP",
        "GEL",
        "GHS",
        "GIP",
        "GMD",
        "GNF",
        "GTQ",
        "GYD",
        "HKD",
        "HNL",
        "HRK",
        "HTG",
        "HUF",
        "IDR",
        "ILS",
        "INR",
        "IQD",
        "IRR",
        "ISK",
        "JMD",
        "JOD",
        "JPY",
        "KES",
        "KGS",
        "KHR",
        "KMF",
        "KPW",
        "KRW",
        "KWD",
        "KYD",
        "KZT",
        "LAK",
        "LBP",
        "LKR",
        "LRD",
        "LYD",
        "MAD",
        "MDL",
        "MGA",
        "MKD",
        "MMK",
        "MNT",
        "MOP",
        "MRO",
        "MUR",
        "MVR",
        "MWK",
        "MXN",
        "MYR",
        "MZN",
        "NAD",
        "NGN",
        "NIO",
        "NOK",
        "NPR",
        "NZD",
        "OMR",
        "PEN",
        "PGK",
        "PHP",
        "PKR",
        "PLN",
        "PYG",
        "QAR",
        "RON",
        "RSD",
        "RUB",
        "RWF",
        "SAR",
        "SBD",
        "SCR",
        "SDG",
        "SEK",
        "SGD",
        "SHP",
        "SLL",
        "SOS",
        "SRD",
        "SSP",
        "STD",
        "SYP",
        "SZL",
        "THB",
        "TJS",
        "TMT",
        "TND",
        "TOP",
        "TRY",
        "TTD",
        "TWD",
        "TZS",
        "UAH",
        "UGX",
        "USD",
        "UYU",
        "UZS",
        "VEF",
        "VND",
        "VUV",
        "WST",
        "XAF",
        "XCD",
        "XOF",
        "XPF",
        "YER",
        "ZAR",
        "ZMW"
      ]
    },
    "period": {
      "type": "string",
      "enum": [
        "fortnightly",
        "monthly",
        "bi-monthly",
        "quarterly",
        "semi-annual",
        "annual"
      ]
    },
    "commission": {
      "type": "object",
      "properties": {
        "fixed_fee": {
          "$ref": "#/$defs/amount"
        },
        "percentage": {
          "type": "number"
        }
      }
    },
    "i18n_text": {
      "type": "object",
      "properties": {
        "en": {
          "description": "English",
          "type": "string"
        },
        "fr": {
          "description": "French",
          "type": "string"
        },
        "de": {
          "description": "German",
          "type": "string"
        },
        "es": {
          "description": "Spanish",
          "type": "string"
        },
        "nl": {
          "description": "Netherland",
          "type": "string"
        },
        "it": {
          "description": "Italian",
          "type": "string"
        },
        "pt": {
          "description": "Portugese",
          "type": "string"
        }
      }
    },
    "syncStatus": {
      "type": "string",
      "enum": [
        "todo",
        "in_progress",
        "success",
        "error",
        "replayed",
        "inactive"
      ]
    },
    "condition": {
      "type": "string",
      "enum": [
        "good",
        "poor",
        "fair",
        "new",
        "mint"
      ]
    },
    "report": {
      "type": "object",
      "properties": {
        "report_status": {
          "type": "string",
          "enum": [
            "conform",
            "not_conform",
            "no_report",
            "not_applicable"
          ]
        },
        "notes": {
          "type": "string"
        }
      }
    }
  }
}
