NoBroker.in Scraper avatar

NoBroker.in Scraper

Pricing

from $1.49 / 1,000 listing scrapeds

Go to Apify Store
NoBroker.in Scraper

NoBroker.in Scraper

Scrape rent, buy, and PG property listings from NoBroker.in — prices, deposits, amenities, owner contact names, and full descriptions across Indian cities.

Pricing

from $1.49 / 1,000 listing scrapeds

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

NoBroker.in Scraper

Extract rent, buy, and PG property listings from NoBroker.in, India's largest no-brokerage property platform. The NoBroker.in Scraper searches any Indian city or specific locality and returns structured listing data — prices, deposits, amenities, owner names, images, and full descriptions.

Search by city or specific localities, filter by BHK, property type, price, area, furnishing, and tenant type, and get 25+ structured fields per listing including full descriptions and images.

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

Apify Actor: parsebird/nobroker-scraper. Scrapes rent, buy, and PG property listings from NoBroker.in across Indian cities. Call via ApifyClient: client.actor("parsebird/nobroker-scraper").call(run_input={"searchMode": "rent", "city": "Bangalore", "localities": ["Koramangala"], "bhk": ["2"], "maxResults": 15}). Returns per listing: listing_id, searchMode, title, propertyType, bhk, bathrooms, carpet_area_sqft, price_inr, deposit_inr, maintenance_inr, furnishing, facing, floor, total_floors, locality, city, latitude, longitude, project_name, owner_name, listed_by, tenant_preferences, amenities, images, description, url, posted_at, scraped_at. Full API spec: https://apify.com/parsebird/nobroker-scraper/api. Get your token: https://console.apify.com/settings/integrations.

What does NoBroker.in Scraper do?

This actor drives a real, India-based browser session against NoBroker.in — the site's own search and property-detail data are not exposed through a documented public API, so the actor resolves your city/locality the same way the site's own search bar does, then queries the underlying search and detail endpoints directly for speed.

  • 🏙️ City-wide or locality-level search — search an entire city, or target specific neighborhoods.
  • 🛏️ Rent, buy, or PG — all three NoBroker listing modes in one actor.
  • 🎚️ Rich filtering — BHK, property type, price range, area range, furnishing, and tenant type (rent).
  • 📝 Full listing enrichment — every result includes the complete description, amenity list, and image URLs, not just search-result summaries.
  • 🌐 Built-in India residential proxy — the default proxy configuration works out of the box; no manual proxy setup needed.

What data can you extract from NoBroker.in?

FieldDescription
title / descriptionListing headline and full description
propertyType / bhk / bathroomsApartment/Villa/Independent House, bedroom and bathroom count
carpet_area_sqftCarpet area in square feet
price_inr / deposit_inr / maintenance_inrMonthly rent or sale price, security deposit, maintenance charges
furnishing / facing / floor / total_floorsFurnishing status, unit facing direction, floor details
locality / city / latitude / longitudeLocation details
project_name / owner_nameSociety/project name and the listing contact's name
amenities / imagesAmenity list and image URLs
url / posted_atDirect listing URL and posting date

Input parameters

ParameterTypeRequiredDefaultDescription
searchModestringYesrentrent, buy, or pg
citystringYesBangaloreIndian city (e.g. Bangalore, Mumbai, Delhi, Hyderabad, Pune, Chennai, or any other Indian city)
localitiesstring[]No[]Neighborhoods (e.g. ["Koramangala", "HSR Layout"]). Empty = whole city
bhkstring[]No[]Bedroom count. Empty = any
propertyTypestring[]No[]apartment, villa, independent-house, builder-floor, studio
minPrice / maxPriceintegerNoPrice range in INR
minArea / maxAreaintegerNoCarpet area range in sq ft
furnishingstring[]No[]furnished, semi-furnished, unfurnished
tenantTypestring[]No[]family, bachelor, company (rent only)
ownerOnlybooleanNotrueAccepted for compatibility — see FAQ for what this actually does
maxResultsintegerNo15Maximum listings to return
proxyConfigurationobjectNoResidential, IndiaDefaults work out of the box for Indian cities

Output example

{
"listing_id": "8a9fc02f4d71b123",
"searchMode": "rent",
"title": "Semi-furnished 2 BHK in Koramangala",
"propertyType": "Apartment",
"bhk": 2,
"bathrooms": 2,
"carpet_area_sqft": 1050,
"price_inr": 40000,
"deposit_inr": 160000,
"maintenance_inr": 3000,
"furnishing": "Semi-Furnished",
"facing": "East",
"floor": 3,
"total_floors": 5,
"locality": "Koramangala",
"city": "Bangalore",
"latitude": 12.9352,
"longitude": 77.6245,
"project_name": "Prestige South Ridge",
"owner_name": "Ravi K.",
"listed_by": "owner",
"tenant_preferences": "Family",
"amenities": ["Gym", "Swimming Pool", "Covered Parking"],
"images": ["https://assets.nobroker.in/images/8a9fc02f4d71b123/..."],
"description": "This 2 BHK apartment in Koramangala is semi-furnished...",
"url": "https://www.nobroker.in/property/2-bhk-apartment-for-rent-in-koramangala-bangalore-for-rs-40000/8a9fc02f4d71b123/detail",
"posted_at": "2026-04-14",
"scraped_at": "2026-04-20T12:31:02+00:00"
}

Download results as JSON, CSV, Excel, HTML, or XML directly from the Apify Console, or fetch them via the Apify API / dataset endpoint.

Use cases

  • Rental market research — compare rent, deposit, and amenity trends across localities in a city.
  • Property investment analysis — pull buy-mode listings with price and area data for a target neighborhood.
  • Relocation planning — filter by BHK, furnishing, and tenant type to shortlist homes before moving cities.
  • PG/co-living aggregation — collect paying-guest listings for a roommate-matching or listings app.
  • Competitive tracking — monitor new listings in specific localities over time with scheduled runs.

How it works

  1. Resolve your search area — for a specific locality, the actor drives NoBroker's own search bar (the way a real visitor would) to resolve it to a precise location; for a whole-city search, it uses well-known city-center coordinates (or geocodes the city if it's outside the built-in list).
  2. Search — queries NoBroker's listing search for the resolved area and search mode (rent/buy/PG), paginating until enough matching listings are collected.
  3. Filter — applies your BHK, property type, price, area, furnishing, and tenant-type filters to the results.
  4. Enrich — fetches the full detail record for each matching listing (complete description, amenities, images) rather than just the search-result summary.
  5. Output — pushes the combined, structured dataset to Apify.

How much does it cost to scrape NoBroker.in?

This actor uses Pay-Per-Event (PPE) pricing — you're charged per listing extracted, not per compute unit.

EventPrice per eventPrice per 1,000
listing-scraped (Free plan)$0.00299$2.99
listing-scraped (Bronze plan)$0.00249$2.49
listing-scraped (Silver plan)$0.00199$1.99
listing-scraped (Gold plan)$0.00149$1.49

A run collecting 15 listings costs roughly $0.02–$0.04 depending on your Apify plan. All Apify accounts include a free trial with credits to try the actor before committing to a paid plan.

FAQ

What does ownerOnly actually filter? NoBroker's platform policy already prohibits third-party brokers from listing at all — that's the site's core differentiator — and its public listing data doesn't expose a separate owner/agent flag to verify further. The field is accepted for input compatibility, but every result is reported as listed_by: "owner" since that's what NoBroker's own policy guarantees.

Why do latitude/longitude sometimes look identical across listings in the same run? For whole-city searches (no localities specified), NoBroker's search API returns the query's city-center coordinates on each listing rather than the property's exact coordinates. Searching with specific localities returns each listing's own precise coordinates instead.

Why are propertyType or description sometimes empty? NoBroker's own listing data is user-submitted and not every field is filled in for every listing — this reflects gaps in the source data itself, not a scraping error.

Can I search a city that isn't in the examples? Yes. city accepts any Indian city name. A small set of major cities resolve instantly; any other city is geocoded automatically.

Why does this actor need a residential India proxy? NoBroker's own location-resolution logic requires an Indian IP to work correctly — this isn't just about avoiding blocks, searches fail outright without one. The default proxyConfiguration handles this automatically.

What are the limitations of this actor? ⚠️

  • NoBroker.in has no documented public API — this actor relies on the same internal endpoints the website itself uses, which may change without notice
  • Detail enrichment for PG listings uses the same endpoint as rent listings, since PG is a rental-style listing type on NoBroker
  • Large maxResults values across many localities increase run time, since each listing is enriched with a separate detail request

This actor only accesses publicly available property listings that NoBroker and its users have made visible to site visitors. It does not bypass login walls, access private accounts, or collect personal data beyond what NoBroker itself displays publicly on a listing (e.g. a first name). Scraping publicly available data is generally considered legal — see Apify's overview of web scraping legality for more detail. Users are responsible for ensuring their use of the collected data complies with applicable laws and NoBroker's Terms of Service.

Python and JavaScript usage

Python (apify-client):

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run_input = {
"searchMode": "rent",
"city": "Bangalore",
"localities": ["Koramangala"],
"bhk": ["2"],
"maxResults": 15,
}
run = client.actor("parsebird/nobroker-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["title"], "-", item["price_inr"], "INR")

JavaScript (apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const input = {
searchMode: 'rent',
city: 'Bangalore',
localities: ['Koramangala'],
bhk: ['2'],
maxResults: 15,
};
const run = await client.actor('parsebird/nobroker-scraper').call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Browse the full catalog on the ParseBird Apify Store page.