{
  "openapi": "3.0.1",
  "info": {
    "title": "NoBroker Property Scraper",
    "description": "[💰 $0.9 / 1K] Extract owner-direct property listings from NoBroker.in — India's largest no-brokerage platform. Search rent, buy, PG, and commercial listings by city, type, BHK, and budget, or paste NoBroker URLs. Returns prices, deposits, locations, specs, amenities, owner details, and photos.",
    "version": "1.0",
    "x-build-id": "uhArNhxL3LAWFr6rO"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/solidcode~nobroker-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-solidcode-nobroker-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/solidcode~nobroker-scraper/runs": {
      "post": {
        "operationId": "runs-sync-solidcode-nobroker-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/solidcode~nobroker-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-solidcode-nobroker-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "searchUrls": {
            "title": "NoBroker Search URLs",
            "type": "array",
            "description": "Paste one or more NoBroker search-result URLs (e.g. https://www.nobroker.in/property/rent/mumbai/Powai). Any filters already in the URL are honored as-is. When provided, the structured filters below are ignored.",
            "items": {
              "type": "string"
            }
          },
          "city": {
            "title": "City",
            "enum": [
              "bangalore",
              "mumbai",
              "pune",
              "chennai",
              "gurgaon",
              "hyderabad",
              "delhi",
              "noida",
              "greater-noida",
              "ghaziabad",
              "faridabad"
            ],
            "type": "string",
            "description": "City to search in. Covers NoBroker's active metros. Ignored when Search URLs are provided.",
            "default": "bangalore"
          },
          "listingType": {
            "title": "Listing Type",
            "enum": [
              "rent",
              "buy",
              "pg",
              "commercial-rent",
              "commercial-buy"
            ],
            "type": "string",
            "description": "What kind of listings to collect.",
            "default": "rent"
          },
          "propertyType": {
            "title": "Property Type",
            "enum": [
              "apartment",
              "independent-house",
              "villa",
              "builder-floor",
              "office",
              "retail-shop",
              "warehouse"
            ],
            "type": "string",
            "description": "Type of property to look for. Leave blank to include all types. Ignored for PG searches."
          },
          "bhkTypes": {
            "title": "BHK Configurations",
            "uniqueItems": true,
            "type": "array",
            "description": "Only include these bedroom configurations (1 RK / Studio, 1-4+ BHK). Select one or more. Leave empty for any. Ignored for Commercial and PG searches.",
            "items": {
              "type": "string",
              "enum": [
                "1RK",
                "1BHK",
                "2BHK",
                "3BHK",
                "4BHK",
                "4+BHK"
              ],
              "enumTitles": [
                "1 RK / Studio",
                "1 BHK",
                "2 BHK",
                "3 BHK",
                "4 BHK",
                "4+ BHK"
              ]
            }
          },
          "priceMinInr": {
            "title": "Minimum Price (₹)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum price in Indian rupees — monthly rent for rentals, total price for buy (e.g. 5000000 for ₹50 lakh, 10000000 for ₹1 crore). Leave empty for no minimum."
          },
          "priceMaxInr": {
            "title": "Maximum Price (₹)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum price in Indian rupees — monthly rent for rentals, total price for buy. Leave empty for no maximum."
          },
          "furnishing": {
            "title": "Furnishing",
            "enum": [
              "any",
              "fully-furnished",
              "semi-furnished",
              "unfurnished"
            ],
            "type": "string",
            "description": "Filter by furnishing status. Mostly relevant for rentals. Choose 'Any' to include all.",
            "default": "any"
          },
          "tenantType": {
            "title": "Preferred Tenant",
            "enum": [
              "any",
              "family",
              "bachelors",
              "company"
            ],
            "type": "string",
            "description": "Filter rentals by the owner's preferred tenant type. Choose 'Any' to include all. Only applies to rental searches.",
            "default": "any"
          },
          "localities": {
            "title": "Localities (label only)",
            "type": "array",
            "description": "Optional locality names (e.g. \"Powai\", \"Whitefield\", \"Koramangala\"). Note: NoBroker only narrows by locality for logged-in users, so the search still covers the whole city — the locality names you enter are recorded on each result for your reference, and you can filter the output afterwards. Leave empty for a plain city-wide search.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Max Results",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum number of listings to collect across all searches. Defaults to 200 when left blank — increase for bigger runs, or set to 0 to collect all results (an internal safety limit of 50,000 still applies). The actor stops requesting new pages once this number is reached but keeps the full final page even if it slightly overshoots.",
            "default": 200
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}