99acres City & BHK Property Listing Scraper
Pricing
from $0.49 / 1,000 results
99acres City & BHK Property Listing Scraper
Search 99acres by city, BHK size, property type, locality, and price range to get structured buy and rent listings across 25 major Indian cities, with price, area, location, and poster details.
Pricing
from $0.49 / 1,000 results
Rating
0.0
(0)
Developer
Dataspryva
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Pull live 99acres sale and rent listings for a city, BHK size, property type, locality, and price band. Every row is a structured property record with the asking price, area, seller details, photos, amenity IDs, floor, furnishing, and map coordinates — plus optional new-launch project cards.
What this actor does
- Searches 99acres for sale or rent across 25 Indian cities, from Delhi and Mumbai to Noida, Pune, Bangalore, Gurugram, and Kochi.
- Filters by BHK, residential property type, locality, furnishing, and price. Localities are resolved to 99acres' own location IDs, so names like
Sector 43work instead of silently returning the whole city. - Returns one row per listing with title, price text and numeric INR value, area in square feet and square metres, BHK, bathrooms, property type, locality, city, project/society, seller name and type, posted date, images, video, amenity IDs, floor, furnishing, availability, coordinates, and RERA registration flags.
- Adds new-launch project cards when
includeProjectsis on; each project row has its builder, price range, configurations, construction status where the card shows it, possession, photos, and project URL. Listings are collected first; project cards are appended only up to 20% ofmaxItems, so they never crowd out individual listings. - Accepts pasted 99acres search URLs for filters configured on the site, and supports 99acres' date-descending (recently updated) sort.
- Omits fields 99acres does not show for a listing instead of writing
nullor a placeholder.
Output per property
propertyId,propId— 99acres listing identifierstitle,propertyType,bedrooms,bathrooms,balconiesprice(as displayed),priceValue,priceMaxValue,pricePerSqftarea(as displayed),areaSqft,areaSqm,areaTypecity,locality,projectNamepostedBy,sellerName,sellerCompany,sellerTypepostedAt,updatedAt,availability,statusTagsfurnishing,floor,totalFloors,facingdescription,images[],imageCount,videoUrlamenityIds[]latitude,longitudereraRegistered,reraDealerRegisteredtransactionType,dealTypepropertyUrl,sourceUrlrecordType: "property",scrapedAt
With includeDetails: true, property rows also include: reraNumber, dealerReraNumber, amenities[] (labels), carpetAreaSqft, superBuiltupAreaSqft, floorLabel, furnishingDetails, flooring, ownership, ageLabel, deposit, priceNegotiable, powerBackup, waterSource, petFriendly, brokerage, availabilityText, availabilityDate, detailsEnriched.
Output per project (includeProjects: true)
recordType: "project", projectId, title, subtitle, builder, priceMin, priceMax, priceLabel, pricePerSqft, areaType, configurations[] (bhk, area, price), constructionStatus (when shown), possession, locality, city, latitude, longitude, images[], imageCount, tags[], description, projectUrl, isNewLaunch, reraTag, scrapedAt.
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | string | searchForSale | searchForSale or searchForRent |
city | string | Delhi | One of the 25 supported Indian cities |
propertyType | string | Residential Apartment | Residential apartment, independent house, villa, plot, independent floor, studio, or farm house |
bedrooms | string | any | 1–4 or 5+ BHK |
locality | string | – | One locality name within the city |
localities | array | – | Multiple locality names |
priceMin | integer | – | Minimum price in INR |
priceMax | integer | – | Maximum price in INR |
furnishing | string | any | Furnished, unfurnished, or semi-furnished |
sortBy | string | relevance | relevance or newest |
includeProjects | boolean | true | Add new-launch project cards (they count toward maxItems; set false for listings only) |
searchUrls | array | – | Full 99acres /property-in-<city>-ffid?... search URLs |
maxItems | integer | 50 | Record cap, 1–1,000 |
Example: 2 BHK rentals in Noida
{"mode": "searchForRent","city": "Noida","propertyType": "Residential Apartment","bedrooms": "2","maxItems": 30}
Example: family homes in a locality
{"mode": "searchForSale","city": "Bangalore","propertyType": "Independent House","bedrooms": "3","localities": ["HSR Layout", "Koramangala"],"priceMin": 10000000,"priceMax": 30000000,"maxItems": 50}
Example: newest furnished rentals
{"mode": "searchForRent","city": "Pune","bedrooms": "2","furnishing": "Semi-furnished","sortBy": "newest","includeProjects": false,"maxItems": 40}
Example: enrich property details
{"mode": "searchForRent","city": "Noida","bedrooms": "2","includeProjects": false,"includeDetails": true,"maxItems": 5}
Example: reuse a search URL
{"searchUrls": ["https://www.99acres.com/property-in-mumbai-ffid?preference=R&res_com=R&bedroom_num=2&page=1"],"maxItems": 25}
Use cases
- Market research — compare asking prices and inventory across cities, BHK sizes, and localities.
- Investment screening — build a shortlist by price band, property type, and furnishing.
- Rental tracking — refresh a neighbourhood feed with current rents and new listings.
- Lead sourcing — collect public seller names, seller types, and active listing URLs.
- PropTech feeds — populate dashboards, comparison pages, or CRMs with clean listing records.
- New-launch monitoring — track project price ranges and possession dates alongside resale inventory.
FAQ
Do I need a 99acres login or cookies? No. The actor reads public search results and needs no account, cookie, or API key.
Do I need to configure a proxy? No. The actor chooses a working connection to 99acres automatically. Just fill in the input and run it.
Why are some fields missing from a record?
99acres does not show every field for every listing. Missing values are omitted rather than sent as null or a placeholder.
What does includeDetails add, and what does it cost?
It fetches the individual property page for RERA numbers, amenity labels, carpet area, floor and furnishing details, and coordinates. Each property needs one extra residential request, so keep maxItems small when it is on.
Why does a price filter sometimes take longer? 99acres ignores price query parameters, so the actor applies your price range while it scans result pages. A narrow band may need more pages than a broad one.
What is the difference between a property row and a project row?
recordType: "property" is an individual resale or rental listing. recordType: "project" is a new-launch project card with a builder, price range, and unit configurations. Set includeProjects to false for listings only.
Why do some localities return no rows? The actor resolves locality names from the city's own locality list, not from the filtered result page. A name can resolve correctly and still return no rows if that BHK, property type, furnishing, or price band has no listings there. The actor says so instead of returning the whole city.
Why doesn't "Newest first" match the posted date?
99acres' date sort is a recently updated order. Use updatedAt when you need to compare the sort order; postedAt is the original listing date.
Does the actor support commercial property? This revision covers residential sale and rent. Commercial property types are not exposed yet.
Is this actor affiliated with 99acres? No. This is an independent, third-party actor that reads 99acres' public search pages and is not operated by or affiliated with 99acres.com.