{
  "description": "Search Immowelt.de listings across Germany by city, pasted search URL, or listing IDs. Full result pagination, server-side filters, all sort orders and optional exposé details.",
  "properties": {
    "buildState": {
      "default": [],
      "description": "Only include listings in one of the selected building conditions.",
      "editor": "select",
      "items": {
        "enum": [
          "first_time_use",
          "mint_condition",
          "well_kept",
          "modernised",
          "fully_renovated",
          "partly_renovated",
          "refurbished",
          "need_of_renovation",
          "projected"
        ],
        "enumTitles": [
          "First occupancy",
          "Mint condition",
          "Well kept",
          "Modernised",
          "Fully renovated",
          "Partly renovated",
          "Refurbished",
          "Needs renovation",
          "Planned / under construction"
        ],
        "type": "string"
      },
      "prefill": [],
      "title": "Building condition",
      "type": "array"
    },
    "city": {
      "default": "Berlin",
      "description": "German city or town, for example Berlin, Muenchen, Hamburg, Koeln or Frankfurt am Main. Any place Immowelt indexes can be used.",
      "editor": "textfield",
      "prefill": "Berlin",
      "title": "City (mode=search)",
      "type": "string"
    },
    "distributionType": {
      "default": "mieten",
      "description": "Choose rentals, for-sale listings, or compulsory auctions.",
      "editor": "select",
      "enum": [
        "mieten",
        "kaufen",
        "zwangsversteigerung"
      ],
      "enumTitles": [
        "For rent (mieten)",
        "For sale (kaufen)",
        "Compulsory auction (Zwangsversteigerung)"
      ],
      "prefill": "mieten",
      "title": "Rent or buy (mode=search)",
      "type": "string"
    },
    "energyClass": {
      "default": [],
      "description": "Only include listings with one of the selected German energy certificate classes (A+ is the most efficient).",
      "editor": "select",
      "items": {
        "enum": [
          "A+",
          "A",
          "B",
          "C",
          "D",
          "E",
          "F",
          "G",
          "H"
        ],
        "enumTitles": [
          "A+ (most efficient)",
          "A",
          "B",
          "C",
          "D",
          "E",
          "F",
          "G",
          "H"
        ],
        "type": "string"
      },
      "prefill": [],
      "title": "Energy efficiency classes",
      "type": "array"
    },
    "estateSubType": {
      "default": "",
      "description": "Optional narrower sub-type. Use a value that belongs to the chosen property type; leave empty for any sub-type.",
      "editor": "select",
      "enum": [
        "",
        "Agriculture_Company",
        "Agriculture_Forestry",
        "Apart_Hotel",
        "Apartment_House",
        "Assisted_Living",
        "Atelier",
        "Barge",
        "Bed_N_Breakfast",
        "Boat_Dock",
        "Boutique",
        "Bungalow",
        "Cafe_Bar_Pub",
        "Campsite",
        "Car_Park",
        "Carport",
        "Castle",
        "Chalet",
        "Club_Discotheque",
        "Commercial",
        "Commercial_Parc",
        "Commercial_Villa",
        "Corner_Terrace_House",
        "Country_Cottage",
        "Coworking",
        "Double_Garage",
        "Duplex",
        "End_Terrace_House",
        "Farm_Ranch",
        "Farmhouse",
        "Fields",
        "Finca",
        "Fishing",
        "Flatsharing_Room",
        "Forestry",
        "Garage",
        "Garage_Area",
        "Garage_Repair",
        "Garden_House",
        "Gardening",
        "Gite",
        "Holiday_Park",
        "Hotel",
        "House_Park",
        "House_To_Build",
        "House_To_Build_With_Plot",
        "Hunting",
        "Industry",
        "Kiosk",
        "Kot",
        "Lakeside_Property",
        "Large_Town_House",
        "Leisure",
        "Leisure_Facility",
        "Living",
        "Living_And_Commercial",
        "Living_And_Commercial_Building",
        "Loft",
        "Loft_Atelier",
        "Logistics_Center",
        "Manor_House",
        "Mansion",
        "Meadow",
        "Medical",
        "Medical_Building",
        "Medical_Care",
        "Medical_Floor",
        "Mid_Terrace_House",
        "Mill",
        "Misc_Agriculture",
        "Misc_Storage",
        "Miscellaneous",
        "Mixed",
        "Mixed_Use_Building_Commercial",
        "Mobile_Home",
        "Mountain_Hut",
        "Multi_Family_House",
        "Multi_Storey",
        "Office_Building",
        "Office_Centre",
        "Office_Space",
        "Office_Storage_Building",
        "Open_Space",
        "Orchard",
        "Outdoor_Space",
        "Outside",
        "Parking_Area",
        "Pavilion",
        "Penthouse",
        "Production_Hall",
        "Residential_Complex",
        "Restaurant",
        "Riding",
        "Rustico",
        "Sales_Area",
        "Semidetached_House",
        "Shared_Office",
        "Shopping_Centre",
        "Showroom_Space",
        "Single_Family_House",
        "Single_Office",
        "Special_Real_Estate",
        "Special_Use",
        "Static_Caravan",
        "Store",
        "Street_Parking",
        "Structure",
        "Studio",
        "Terrace",
        "Terrace_House",
        "Town_House",
        "Underground_Garage",
        "Underground_Parking_Space",
        "Unfinished_Attic_Space",
        "Villa",
        "Warehouse_Hall",
        "Winery"
      ],
      "enumTitles": [
        "Any sub-type",
        "Agriculture Company",
        "Agriculture Forestry",
        "Apart Hotel",
        "Apartment House",
        "Assisted Living",
        "Atelier",
        "Barge",
        "Bed N Breakfast",
        "Boat Dock",
        "Boutique",
        "Bungalow",
        "Cafe Bar Pub",
        "Campsite",
        "Car Park",
        "Carport",
        "Castle",
        "Chalet",
        "Club Discotheque",
        "Commercial",
        "Commercial Parc",
        "Commercial Villa",
        "Corner Terrace House",
        "Country Cottage",
        "Coworking",
        "Double Garage",
        "Duplex",
        "End Terrace House",
        "Farm Ranch",
        "Farmhouse",
        "Fields",
        "Finca",
        "Fishing",
        "Flatsharing Room",
        "Forestry",
        "Garage",
        "Garage Area",
        "Garage Repair",
        "Garden House",
        "Gardening",
        "Gite",
        "Holiday Park",
        "Hotel",
        "House Park",
        "House To Build",
        "House To Build With Plot",
        "Hunting",
        "Industry",
        "Kiosk",
        "Kot",
        "Lakeside Property",
        "Large Town House",
        "Leisure",
        "Leisure Facility",
        "Living",
        "Living And Commercial",
        "Living And Commercial Building",
        "Loft",
        "Loft Atelier",
        "Logistics Center",
        "Manor House",
        "Mansion",
        "Meadow",
        "Medical",
        "Medical Building",
        "Medical Care",
        "Medical Floor",
        "Mid Terrace House",
        "Mill",
        "Misc Agriculture",
        "Misc Storage",
        "Miscellaneous",
        "Mixed",
        "Mixed Use Building Commercial",
        "Mobile Home",
        "Mountain Hut",
        "Multi Family House",
        "Multi Storey",
        "Office Building",
        "Office Centre",
        "Office Space",
        "Office Storage Building",
        "Open Space",
        "Orchard",
        "Outdoor Space",
        "Outside",
        "Parking Area",
        "Pavilion",
        "Penthouse",
        "Production Hall",
        "Residential Complex",
        "Restaurant",
        "Riding",
        "Rustico",
        "Sales Area",
        "Semidetached House",
        "Shared Office",
        "Shopping Centre",
        "Showroom Space",
        "Single Family House",
        "Single Office",
        "Special Real Estate",
        "Special Use",
        "Static Caravan",
        "Store",
        "Street Parking",
        "Structure",
        "Studio",
        "Terrace",
        "Terrace House",
        "Town House",
        "Underground Garage",
        "Underground Parking Space",
        "Unfinished Attic Space",
        "Villa",
        "Warehouse Hall",
        "Winery"
      ],
      "prefill": "",
      "title": "Property sub-type (mode=search)",
      "type": "string"
    },
    "estateType": {
      "default": "wohnung",
      "description": "Broad property category. Temporary living is rent-only and is automatically switched to rentals. All 14 Immowelt categories are supported.",
      "editor": "select",
      "enum": [
        "wohnung",
        "haus",
        "grundstueck",
        "wohnen_auf_zeit",
        "buero",
        "einzelhandel",
        "lager_produktion",
        "gastronomie",
        "landwirtschaft",
        "stellplatz",
        "gebaeude",
        "senioren",
        "projekt",
        "sonstiges"
      ],
      "enumTitles": [
        "Apartment / flat",
        "House",
        "Plot / land",
        "Temporary / furnished living",
        "Office / practice",
        "Retail / shop",
        "Storage / production",
        "Gastronomy / hotel",
        "Agricultural / forestry land",
        "Parking space / garage",
        "Whole building",
        "Senior living",
        "New-build project",
        "Other / miscellaneous"
      ],
      "prefill": "wohnung",
      "title": "Property type (mode=search)",
      "type": "string"
    },
    "excludeGroundFloor": {
      "default": false,
      "description": "Skip ground-floor listings.",
      "prefill": false,
      "title": "Exclude ground floor",
      "type": "boolean"
    },
    "excludeKeywords": {
      "default": [],
      "description": "Drop listings whose title or description contains any listed keyword (case-insensitive).",
      "editor": "stringList",
      "prefill": [],
      "title": "Exclude keywords",
      "type": "array"
    },
    "features": {
      "default": [],
      "description": "Only include listings that have all selected features. Leave empty for no feature filter.",
      "editor": "select",
      "items": {
        "enum": [
          "air_conditioned",
          "assisted_living",
          "balcony_terrace",
          "bathroom_window",
          "bathtub",
          "cellar",
          "commission_free",
          "elevator",
          "exclusive",
          "garden",
          "fitted_kitchen",
          "no_media",
          "parking",
          "pets",
          "barrier_free",
          "swimming_pool",
          "vacant"
        ],
        "enumTitles": [
          "Air conditioning",
          "Assisted / senior living",
          "Balcony / terrace",
          "Bathroom window",
          "Bathtub",
          "Cellar / basement",
          "Commission-free",
          "Lift / elevator",
          "Exclusive fit-out",
          "Garden",
          "Fitted kitchen",
          "No media / photos",
          "Parking / garage",
          "Pets allowed",
          "Reduced-mobility access",
          "Swimming pool",
          "Vacant"
        ],
        "type": "string"
      },
      "prefill": [],
      "title": "Required features",
      "type": "array"
    },
    "floorLocation": {
      "default": [],
      "description": "Only include listings on one of the selected floor locations.",
      "editor": "select",
      "items": {
        "enum": [
          "ground_floor",
          "half_basement",
          "roof_storey"
        ],
        "enumTitles": [
          "Ground floor",
          "Half basement / souterrain",
          "Roof storey / attic"
        ],
        "type": "string"
      },
      "prefill": [],
      "title": "Floor location",
      "type": "array"
    },
    "includeDetails": {
      "default": false,
      "description": "Fetch each listing's exposé page to add construction year, heating, energy consumption, coordinates, amenities, price breakdown, documents and the full description. Adds one request per listing.",
      "prefill": false,
      "title": "Include exposé details",
      "type": "boolean"
    },
    "includeKeywords": {
      "default": [],
      "description": "Keep only listings whose title or description contains every listed keyword (case-insensitive).",
      "editor": "stringList",
      "prefill": [],
      "title": "Include keywords",
      "type": "array"
    },
    "maxArea": {
      "description": "Maximum living space in square metres.",
      "maximum": 10000000,
      "minimum": 0,
      "title": "Maximum living space (m2)",
      "type": "integer"
    },
    "maxBedrooms": {
      "description": "Largest number of bedrooms to include.",
      "maximum": 20,
      "minimum": 0,
      "title": "Maximum bedrooms",
      "type": "integer"
    },
    "maxDetails": {
      "default": 0,
      "description": "How many emitted listings get exposé enrichment. 0 means all emitted listings.",
      "maximum": 10000,
      "minimum": 0,
      "prefill": 0,
      "title": "Maximum detailed listings",
      "type": "integer"
    },
    "maxItems": {
      "default": 100,
      "description": "Hard cap on emitted listings. Full result sets are paginated, so values up to 10,000 are supported.",
      "maximum": 10000,
      "minimum": 1,
      "prefill": 5,
      "title": "Maximum items",
      "type": "integer"
    },
    "maxPlotArea": {
      "description": "Maximum plot or land size in square metres.",
      "maximum": 10000000,
      "minimum": 0,
      "title": "Maximum plot size (m2)",
      "type": "integer"
    },
    "maxPrice": {
      "description": "Maximum monthly cold rent or purchase price in EUR.",
      "maximum": 50000000,
      "minimum": 0,
      "title": "Maximum price (EUR)",
      "type": "integer"
    },
    "maxRooms": {
      "description": "Largest number of rooms to include.",
      "maximum": 50,
      "minimum": 0,
      "title": "Maximum rooms",
      "type": "number"
    },
    "maxYearBuilt": {
      "description": "Latest year the building was constructed.",
      "maximum": 2100,
      "minimum": 1800,
      "title": "Latest construction year",
      "type": "integer"
    },
    "minArea": {
      "description": "Minimum living space in square metres.",
      "maximum": 10000000,
      "minimum": 0,
      "title": "Minimum living space (m2)",
      "type": "integer"
    },
    "minBedrooms": {
      "description": "Smallest number of bedrooms to include.",
      "maximum": 20,
      "minimum": 0,
      "title": "Minimum bedrooms",
      "type": "integer"
    },
    "minPlotArea": {
      "description": "Minimum plot or land size in square metres.",
      "maximum": 10000000,
      "minimum": 0,
      "title": "Minimum plot size (m2)",
      "type": "integer"
    },
    "minPrice": {
      "description": "Minimum monthly cold rent or purchase price in EUR.",
      "maximum": 50000000,
      "minimum": 0,
      "title": "Minimum price (EUR)",
      "type": "integer"
    },
    "minRooms": {
      "description": "Smallest number of rooms to include.",
      "maximum": 50,
      "minimum": 0,
      "title": "Minimum rooms",
      "type": "number"
    },
    "minYearBuilt": {
      "description": "Earliest year the building was constructed.",
      "maximum": 2100,
      "minimum": 1800,
      "title": "Earliest construction year",
      "type": "integer"
    },
    "mode": {
      "default": "search",
      "description": "How to find listings: by German city and filters, by a pasted Immowelt search URL, or by listing IDs / expose URLs.",
      "editor": "select",
      "enum": [
        "search",
        "byUrl",
        "byIds"
      ],
      "enumTitles": [
        "Search by city and filters",
        "Use a pasted Immowelt search URL",
        "Look up specific listing IDs or URLs"
      ],
      "prefill": "search",
      "title": "Mode",
      "type": "string"
    },
    "projectTypes": {
      "default": [],
      "description": "Only include listings with one of the selected project or tenure types, such as new build, resale, investment or apartment swap.",
      "editor": "select",
      "items": {
        "enum": [
          "flatsharing",
          "investment",
          "life_annuity",
          "new_build",
          "projected",
          "resale",
          "short_time_rental",
          "stock",
          "swap_apartment"
        ],
        "enumTitles": [
          "Flatsharing / shared flat",
          "Investment property",
          "Life annuity",
          "New build",
          "Planned / under construction",
          "Resale",
          "Short-term rental",
          "Existing stock",
          "Apartment swap"
        ],
        "type": "string"
      },
      "prefill": [],
      "title": "Project / tenure types",
      "type": "array"
    },
    "propertyIds": {
      "default": [],
      "description": "Immowelt classified IDs or full /expose/... URLs. Both forms can be mixed.",
      "editor": "stringList",
      "prefill": [],
      "title": "Listing IDs or expose URLs (mode=byIds)",
      "type": "array"
    },
    "searchUrl": {
      "description": "A full Immowelt search-results URL, either a modern /classified-search URL or a /suche/... page. Any filters in the URL are respected.",
      "editor": "textfield",
      "title": "Search URL (mode=byUrl)",
      "type": "string"
    },
    "sellerType": {
      "default": "any",
      "description": "Filter by private owners, professional agents, or any seller.",
      "editor": "select",
      "enum": [
        "any",
        "private",
        "professional"
      ],
      "enumTitles": [
        "Any seller",
        "Private owner",
        "Professional agent"
      ],
      "prefill": "any",
      "title": "Seller type",
      "type": "string"
    },
    "sortBy": {
      "default": "",
      "description": "Order applied by Immowelt across the whole result set, not just one page.",
      "editor": "select",
      "enum": [
        "",
        "newest",
        "priceAsc",
        "priceDesc",
        "areaAsc",
        "areaDesc",
        "roomsAsc",
        "roomsDesc",
        "pricePerSqmAsc",
        "pricePerSqmDesc"
      ],
      "enumTitles": [
        "Relevance (site default)",
        "Newest listings first",
        "Price - low to high",
        "Price - high to low",
        "Living space / plot size - low to high",
        "Living space / plot size - high to low",
        "Rooms - fewest to most",
        "Rooms - most to fewest",
        "Price per m2 - low to high",
        "Price per m2 - high to low"
      ],
      "prefill": "",
      "title": "Sort results by",
      "type": "string"
    },
    "wbsRequired": {
      "default": false,
      "description": "Only include listings that require a certificate of eligibility (Wohnberechtigungsschein).",
      "prefill": false,
      "title": "WBS required (subsidised housing)",
      "type": "boolean"
    }
  },
  "required": [
    "mode"
  ],
  "schemaVersion": 1,
  "title": "Immowelt Scraper Input",
  "type": "object"
}
