99acres City & BHK Property Listing Scraper avatar

99acres City & BHK Property Listing Scraper

Pricing

from $0.49 / 1,000 results

Go to Apify Store
99acres City & BHK Property Listing Scraper

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

Dataspryva

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

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 43 work 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 includeProjects is 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% of maxItems, 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 null or a placeholder.

Output per property

  • propertyId, propId — 99acres listing identifiers
  • title, propertyType, bedrooms, bathrooms, balconies
  • price (as displayed), priceValue, priceMaxValue, pricePerSqft
  • area (as displayed), areaSqft, areaSqm, areaType
  • city, locality, projectName
  • postedBy, sellerName, sellerCompany, sellerType
  • postedAt, updatedAt, availability, statusTags
  • furnishing, floor, totalFloors, facing
  • description, images[], imageCount, videoUrl
  • amenityIds[]
  • latitude, longitude
  • reraRegistered, reraDealerRegistered
  • transactionType, dealType
  • propertyUrl, sourceUrl
  • recordType: "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

FieldTypeDefaultDescription
modestringsearchForSalesearchForSale or searchForRent
citystringDelhiOne of the 25 supported Indian cities
propertyTypestringResidential ApartmentResidential apartment, independent house, villa, plot, independent floor, studio, or farm house
bedroomsstringany1–4 or 5+ BHK
localitystring–One locality name within the city
localitiesarray–Multiple locality names
priceMininteger–Minimum price in INR
priceMaxinteger–Maximum price in INR
furnishingstringanyFurnished, unfurnished, or semi-furnished
sortBystringrelevancerelevance or newest
includeProjectsbooleantrueAdd new-launch project cards (they count toward maxItems; set false for listings only)
searchUrlsarray–Full 99acres /property-in-<city>-ffid?... search URLs
maxItemsinteger50Record 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.