{
  "description": "Choose what to collect from MagicBricks: city searches for sale or rent, pasted search-result URLs, or pasted property-detail URLs. Add optional BHK, price, area, furnishing, possession and locality filters.",
  "properties": {
    "areaMax": {
      "description": "Largest covered or carpet area in square feet (mode=searchForSale, searchForRent, searchProperties).",
      "maximum": 1000000,
      "minimum": 0,
      "title": "Maximum area (sq.ft)",
      "type": "integer"
    },
    "areaMin": {
      "description": "Smallest covered or carpet area in square feet (mode=searchForSale, searchForRent, searchProperties).",
      "maximum": 1000000,
      "minimum": 0,
      "title": "Minimum area (sq.ft)",
      "type": "integer"
    },
    "bedrooms": {
      "default": "Any",
      "description": "Bedroom count. 5+ is sent as 5, the site's maximum (mode=searchForSale, searchForRent, searchProperties).",
      "editor": "select",
      "enum": [
        "Any",
        "1",
        "2",
        "3",
        "4",
        "5+"
      ],
      "enumTitles": [
        "Any",
        "1 BHK",
        "2 BHK",
        "3 BHK",
        "4 BHK",
        "5+ BHK"
      ],
      "prefill": "Any",
      "title": "Bedrooms (BHK)",
      "type": "string"
    },
    "city": {
      "default": "Mumbai",
      "description": "Indian city to search (mode=searchForSale, searchForRent, searchProperties).",
      "editor": "select",
      "enum": [
        "Mangalore",
        "Belgaum",
        "Mysore",
        "Hubli",
        "Ahmedabad",
        "Bangalore",
        "Beyond Thane",
        "Chennai",
        "Gurgaon",
        "Hyderabad",
        "Indore",
        "Jaipur",
        "Kolkata",
        "Lucknow",
        "Mumbai",
        "Navi Mumbai",
        "New Delhi",
        "Noida",
        "Pune",
        "Thane",
        "Agra",
        "Ahmadnagar",
        "Allahabad",
        "Aluva",
        "Amritsar",
        "Aurangabad",
        "Badlapur",
        "Bareilly",
        "Bhiwadi",
        "Bhiwandi",
        "Bhopal",
        "Bhubaneswar",
        "Bokaro Steel City",
        "Chandigarh",
        "Chengalpattu",
        "Coimbatore",
        "Dehradun",
        "Durgapur",
        "Ernakulam",
        "Erode",
        "Faridabad",
        "Ghaziabad",
        "Goa",
        "Gorakhpur",
        "Greater Noida",
        "Guntur",
        "Guwahati",
        "Gwalior",
        "Haridwar",
        "Hosur",
        "Jabalpur",
        "Jalandhar",
        "Jammu",
        "Jamshedpur",
        "Jodhpur",
        "Kalyan",
        "Kannur",
        "Kanpur",
        "Khopoli",
        "Kochi",
        "Kodaikanal",
        "Kottayam",
        "Kozhikode",
        "Lonavala",
        "Ludhiana",
        "Madurai",
        "Mohali",
        "Nagpur",
        "Nainital",
        "Nanded",
        "Nashik",
        "Navsari",
        "Nellore",
        "Newtown",
        "Ooty",
        "Palakkad",
        "Palghar",
        "Panchkula",
        "Patiala",
        "Patna",
        "Pondicherry",
        "Raipur",
        "Rajahmundry",
        "Ranchi",
        "Salem",
        "Satara",
        "Shimla",
        "Siliguri",
        "Solapur",
        "Sonipat",
        "Surat",
        "Thanjavur",
        "Thrissur",
        "Tirunelveli",
        "Tirupati",
        "Tirupur",
        "Trichy",
        "Trivandrum",
        "Tumkur",
        "Udaipur",
        "Udupi",
        "Vadodara",
        "Vapi",
        "Varanasi",
        "Vijayawada",
        "Visakhapatnam",
        "Vrindavan",
        "Zirakpur"
      ],
      "enumTitles": [
        "Mangalore",
        "Belgaum",
        "Mysore",
        "Hubli",
        "Ahmedabad",
        "Bangalore",
        "Beyond Thane",
        "Chennai",
        "Gurgaon",
        "Hyderabad",
        "Indore",
        "Jaipur",
        "Kolkata",
        "Lucknow",
        "Mumbai",
        "Navi Mumbai",
        "New Delhi",
        "Noida",
        "Pune",
        "Thane",
        "Agra",
        "Ahmadnagar",
        "Allahabad",
        "Aluva",
        "Amritsar",
        "Aurangabad",
        "Badlapur",
        "Bareilly",
        "Bhiwadi",
        "Bhiwandi",
        "Bhopal",
        "Bhubaneswar",
        "Bokaro Steel City",
        "Chandigarh",
        "Chengalpattu",
        "Coimbatore",
        "Dehradun",
        "Durgapur",
        "Ernakulam",
        "Erode",
        "Faridabad",
        "Ghaziabad",
        "Goa",
        "Gorakhpur",
        "Greater Noida",
        "Guntur",
        "Guwahati",
        "Gwalior",
        "Haridwar",
        "Hosur",
        "Jabalpur",
        "Jalandhar",
        "Jammu",
        "Jamshedpur",
        "Jodhpur",
        "Kalyan",
        "Kannur",
        "Kanpur",
        "Khopoli",
        "Kochi",
        "Kodaikanal",
        "Kottayam",
        "Kozhikode",
        "Lonavala",
        "Ludhiana",
        "Madurai",
        "Mohali",
        "Nagpur",
        "Nainital",
        "Nanded",
        "Nashik",
        "Navsari",
        "Nellore",
        "Newtown",
        "Ooty",
        "Palakkad",
        "Palghar",
        "Panchkula",
        "Patiala",
        "Patna",
        "Pondicherry",
        "Raipur",
        "Rajahmundry",
        "Ranchi",
        "Salem",
        "Satara",
        "Shimla",
        "Siliguri",
        "Solapur",
        "Sonipat",
        "Surat",
        "Thanjavur",
        "Thrissur",
        "Tirunelveli",
        "Tirupati",
        "Tirupur",
        "Trichy",
        "Trivandrum",
        "Tumkur",
        "Udaipur",
        "Udupi",
        "Vadodara",
        "Vapi",
        "Varanasi",
        "Vijayawada",
        "Visakhapatnam",
        "Vrindavan",
        "Zirakpur"
      ],
      "prefill": "Mumbai",
      "title": "City",
      "type": "string"
    },
    "furnishing": {
      "default": "Any",
      "description": "Furnishing state filter (mode=searchForSale, searchForRent, searchProperties).",
      "editor": "select",
      "enum": [
        "Any",
        "Furnished",
        "Semi-Furnished",
        "Unfurnished"
      ],
      "enumTitles": [
        "Any",
        "Furnished",
        "Semi-furnished",
        "Unfurnished"
      ],
      "prefill": "Any",
      "title": "Furnishing",
      "type": "string"
    },
    "includeDetails": {
      "default": false,
      "description": "Also open each listing's detail page for project, developer, RERA, full address, GPS, amenities, deposit and maintenance data (search modes).",
      "editor": "checkbox",
      "prefill": false,
      "title": "Fetch detail pages",
      "type": "boolean"
    },
    "localities": {
      "description": "Optional locality or neighbourhood names inside the city (mode=searchForSale, searchForRent, searchProperties). One search is run per locality.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "title": "Localities",
      "type": "array"
    },
    "maxItems": {
      "default": 50,
      "description": "Hard cap on the number of property records returned.",
      "maximum": 10000,
      "minimum": 1,
      "prefill": 3,
      "title": "Max listings",
      "type": "integer"
    },
    "mode": {
      "default": "searchForSale",
      "description": "What to collect. Search by city and filters, paste MagicBricks search-result URLs, or paste property-detail URLs.",
      "editor": "select",
      "enum": [
        "searchForSale",
        "searchForRent",
        "searchProperties",
        "bySearchUrl",
        "byPropertyUrl"
      ],
      "enumTitles": [
        "Search properties for sale",
        "Search properties for rent",
        "Search both sale and rent",
        "Scrape MagicBricks search-result URLs",
        "Scrape MagicBricks property URLs"
      ],
      "prefill": "searchForSale",
      "title": "Mode",
      "type": "string"
    },
    "possessionStatus": {
      "default": "Any",
      "description": "Ready-to-move or under-construction filter (mode=searchForSale, searchProperties).",
      "editor": "select",
      "enum": [
        "Any",
        "Ready to Move",
        "Under Construction"
      ],
      "enumTitles": [
        "Any",
        "Ready to move",
        "Under construction"
      ],
      "prefill": "Any",
      "title": "Possession",
      "type": "string"
    },
    "postedSince": {
      "default": "Any",
      "description": "Only listings posted in the last 24 hours (mode=searchForSale, searchForRent, searchProperties). MagicBricks does not expose wider server-side posting windows.",
      "editor": "select",
      "enum": [
        "Any",
        "1"
      ],
      "enumTitles": [
        "Any time",
        "Last 24 hours"
      ],
      "prefill": "Any",
      "title": "Posted within",
      "type": "string"
    },
    "priceMax": {
      "description": "Highest asking price in Indian Rupees (mode=searchForSale, searchForRent, searchProperties).",
      "maximum": 1000000000000,
      "minimum": 0,
      "title": "Maximum price (INR)",
      "type": "integer"
    },
    "priceMin": {
      "description": "Lowest asking price in Indian Rupees (mode=searchForSale, searchForRent, searchProperties).",
      "maximum": 1000000000000,
      "minimum": 0,
      "title": "Minimum price (INR)",
      "type": "integer"
    },
    "propertyType": {
      "default": "Apartment",
      "description": "Type of property to search (mode=searchForSale, searchForRent, searchProperties).",
      "editor": "select",
      "enum": [
        "Apartment",
        "Builder Floor",
        "Independent House",
        "Villa",
        "Plot",
        "Penthouse",
        "Studio Apartment",
        "Farm House",
        "Serviced Apartment",
        "Commercial Office",
        "Office in IT Park/SEZ",
        "Commercial Shop",
        "Commercial Showroom"
      ],
      "enumTitles": [
        "Apartment / flat",
        "Builder floor",
        "Independent house",
        "Villa",
        "Plot / land",
        "Penthouse",
        "Studio apartment",
        "Farm house",
        "Serviced apartment",
        "Commercial office",
        "Office in IT park / SEZ",
        "Commercial shop",
        "Commercial showroom"
      ],
      "prefill": "Apartment",
      "title": "Property type",
      "type": "string"
    },
    "sortBy": {
      "default": "Relevance",
      "description": "Order of search results (mode=searchForSale, searchForRent, searchProperties).",
      "editor": "select",
      "enum": [
        "Relevance",
        "Price - Low to High",
        "Price - High to Low",
        "Most Recent",
        "Rate/sqft - Low to High",
        "Rate/sqft - High to Low"
      ],
      "enumTitles": [
        "Relevance",
        "Price: low to high",
        "Price: high to low",
        "Most recent",
        "Rate per sq.ft: low to high",
        "Rate per sq.ft: high to low"
      ],
      "prefill": "Relevance",
      "title": "Sort by",
      "type": "string"
    },
    "startUrls": {
      "default": [],
      "description": "MagicBricks search-result or property-detail links (mode=bySearchUrl or byPropertyUrl).",
      "editor": "requestListSources",
      "items": {
        "properties": {
          "url": {
            "description": "MagicBricks search-result or property-detail URL.",
            "title": "URL",
            "type": "string"
          }
        },
        "type": "object"
      },
      "prefill": [],
      "title": "Search or property URLs",
      "type": "array"
    },
    "tenantType": {
      "default": "Any",
      "description": "Who the landlord accepts (mode=searchForRent and rent searches in searchProperties). MagicBricks exposes Bachelors and Family server-side.",
      "editor": "select",
      "enum": [
        "Any",
        "Bachelors",
        "Family"
      ],
      "enumTitles": [
        "Any",
        "Bachelors",
        "Family"
      ],
      "prefill": "Any",
      "title": "Tenant preference",
      "type": "string"
    }
  },
  "required": [
    "mode"
  ],
  "schemaVersion": 1,
  "title": "MagicBricks Property Listings Input",
  "type": "object"
}
