MagicBricks India Property Listings & Agent Leads Scraper avatar

MagicBricks India Property Listings & Agent Leads Scraper

Pricing

from $25.50 / 1,000 results

Go to Apify Store
MagicBricks India Property Listings & Agent Leads Scraper

MagicBricks India Property Listings & Agent Leads Scraper

Scrape MagicBricks India property listings with price (INR + per sqft), BHK, area, furnishing, floor, locality, geo coordinates and the advertiser (owner, dealer, agent or builder) with agency name and RERA ID. Filter by city, sale/rent, type. Export to JSON, CSV or Excel.

Pricing

from $25.50 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

MagicBricks India Property Listings & Agent Leads Scraper

MagicBricks India Property Listings & Agent Leads Scraper

Here is one real result, with every field the actor returns:

{
"listingId": "85481375",
"title": "5BHK Multistorey Apartment for New Property in Kalpataru Amare at Juhu",
"transactionType": "Sale",
"listingType": "New Property",
"propertyType": "Apartment",
"priceInr": 225617000,
"priceDisplay": "22.56 Cr",
"pricePerSqft": 60978,
"bedrooms": 5,
"bathrooms": 3,
"area": 3700,
"areaUnit": "Sq-ft",
"furnishing": "Unfurnished",
"floor": null,
"locality": "Juhu",
"city": "Mumbai",
"latitude": 19.098267753993,
"longitude": 72.8335140160125,
"postedDate": "20260809",
"postedLabel": "Posted Yesterday",
"possessionStatus": "Dec '27",
"availableFrom": "2027-12-01",
"description": "This well maintained 5 BHK residence is currently offered for sale in Juhu, Mumbai. It has an excellent location within Kalpataru Amare ... (trimmed)",
"projectHighlight": null,
"localityHighlight": null,
"imageCount": 18,
"image": "https://img.staticmb.com/mbimages/project/Photo_h310_w462/2024/07/09/Project-Photo-1-Kalpataru-Amare-Mumbai-5420899_410_1440_310_462.jpg",
"landmarks": [
{ "name": "Juhu Beach Bus Stop", "distance": null },
{ "name": "Navrang Theatre", "distance": null }
],
"ownerType": "Agent",
"advertiserName": "Desai Rakesh",
"contactName": "Desai Rakesh",
"agencyName": "Tejasvi Realty Pvt. Ltd.",
"builderName": "Kalpataru Limited",
"operatingSince": "1993",
"phone": null,
"reraId": null,
"society": "Kalpataru Amare",
"listingUrl": "https://www.magicbricks.com/propertyDetails/5-BHK-3700-Sq-ft-Multistorey-Apartment-FOR-Sale-Juhu-in-Mumbai&id=4d423835343831333735",
"searchCity": "Mumbai",
"source": "magicbricks-india-scraper",
"observedAt": "2026-08-10T14:31:21.765Z"
}

The most complete MagicBricks scraper available. It returns every field the listing exposes, including price in rupees and per-square-foot, geolocation, nearby landmarks, possession status, and the advertiser, agency and builder details, so you can build both a property dataset and an agent-lead list from the same run.

Note: the description and landmarks above are trimmed for length; live runs return the full text and every landmark. All values shown are real.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor searches MagicBricks for residential property listings in the cities you pass, applies your transaction type, property type and bedroom filters, paginates through the results, and writes one normalized record per listing to the run's dataset. Each record carries the property (price in rupees, per-square-foot rate, area, bedrooms, bathrooms, furnishing, possession status), its geolocation and nearby landmarks, and the advertiser, agency and builder details for lead generation. Multiple cities run in the same run under a single shared maxListings cap.

Quickstart

Open the actor, paste this into the input, and press Run. It returns 10 residential properties for sale across Mumbai and Delhi.

{
"maxListings": 10,
"cities": ["Mumbai", "Delhi"],
"transactionType": "sale"
}

Add propertyType and bedrooms to narrow results, or set transactionType to rent for rentals.

Input reference

FieldTypeRequiredDefaultDescription
citiesstring[]no["Mumbai","Delhi"]One or more cities to search, for example Mumbai, Delhi, Bangalore, Pune, Hyderabad, Chennai, Gurgaon, Noida. Each city runs its own search in the same run.
maxListingsintegerno10Maximum listings to return across all city searches. Free Apify plans are capped at 10 per run.
transactionTypeenumnosalesale (for sale) or rent (for rent).
propertyTypeenumno(all)One of Apartment, Builder Floor, Independent House, Villa, Studio Apartment, Penthouse, Residential Plot, Farm House. Empty means all residential types.
bedroomsenumno(any)Bedrooms (BHK): 1, 2, 3, 4, or 5. Empty means any.

Output reference

One dataset item per listing. Types: string, number, boolean, array, or null when the source value is absent.

FieldTypeDescription
listingIdstringMagicBricks listing identifier.
titlestringListing headline.
transactionTypestringSale or Rent.
listingTypestringFor example New Property, Resale.
propertyTypestringFor example Apartment, Villa.
priceInrnumberPrice in Indian rupees.
priceDisplaystringPrice as shown, for example 22.56 Cr.
pricePerSqftnumberPrice per square foot in rupees.
bedroomsnumberNumber of bedrooms (BHK).
bathroomsnumberNumber of bathrooms.
areanumberCovered/built-up area value.
areaUnitstringUnit for area, usually Sq-ft.
furnishingstringFurnishing status.
floorstringFloor detail, or null.
localitystringLocality name.
citystringCity name.
latitudenumberLatitude, or null.
longitudenumberLongitude, or null.
postedDatestringPosting date, YYYYMMDD.
postedLabelstringHuman-readable posting label.
possessionStatusstringPossession status text.
availableFromstringAvailability date (YYYY-MM-DD), or null.
descriptionstringFull listing description.
projectHighlightstringProject highlight, or null.
localityHighlightstringLocality highlight, or null.
imageCountnumberNumber of images on the listing.
imagestringPrimary image URL.
landmarksobject[]Nearby landmarks, each with name and distance.
ownerTypestringFor example Agent, Owner, Builder.
advertiserNamestringName of the advertiser.
contactNamestringContact person name.
agencyNamestringAgency name, or null.
builderNamestringBuilder/developer name, or null.
operatingSincestringYear the advertiser has operated since, or null.
phonestringPhone number. Usually null: MagicBricks gates phone behind a lead-capture form.
reraIdstringRERA registration ID when exposed, else null.
societystringSociety/project name.
listingUrlstringDirect link to the listing.
searchCitystringThe city the search ran for.
sourcestringAlways magicbricks-india-scraper.
observedAtstringISO 8601 timestamp of when the record was collected.

On a failed or empty run, a single item with a populated error field is written instead, and it is not charged.

Example output record

Real record from a live run (input {"cities":["Mumbai","Delhi"],"transactionType":"sale","maxListings":10}):

{
"listingId": "85481375",
"title": "5BHK Multistorey Apartment for New Property in Kalpataru Amare at Juhu",
"transactionType": "Sale",
"propertyType": "Apartment",
"priceInr": 225617000,
"priceDisplay": "22.56 Cr",
"pricePerSqft": 60978,
"bedrooms": 5,
"bathrooms": 3,
"area": 3700,
"areaUnit": "Sq-ft",
"locality": "Juhu",
"city": "Mumbai",
"latitude": 19.098267753993,
"longitude": 72.8335140160125,
"possessionStatus": "Dec '27",
"ownerType": "Agent",
"advertiserName": "Desai Rakesh",
"agencyName": "Tejasvi Realty Pvt. Ltd.",
"builderName": "Kalpataru Limited",
"operatingSince": "1993",
"society": "Kalpataru Amare",
"listingUrl": "https://www.magicbricks.com/propertyDetails/5-BHK-3700-Sq-ft-Multistorey-Apartment-FOR-Sale-Juhu-in-Mumbai&id=4d423835343831333735",
"searchCity": "Mumbai",
"source": "magicbricks-india-scraper",
"observedAt": "2026-08-10T14:31:21.765Z"
}

Some fields are omitted here for length; live runs return every field listed above with real values.

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~magicbricks-india-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"cities":["Bangalore"],"transactionType":"rent","bedrooms":"2","maxListings":25}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~magicbricks-india-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"cities":["Pune","Hyderabad"],"propertyType":"Villa","maxListings":100}'

Apify CLI:

apify call scrapers_lat/magicbricks-india-scraper \
--input '{"cities":["Gurgaon"],"transactionType":"sale","maxListings":50}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per record returned (result event). See the pricing tab for the current per-result price.
  • No charge on failure. If a run errors or finds nothing, the actor writes a single item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 records per run. Upgrade for higher maxListings.

FAQ and troubleshooting

A run returned 0 records. Why? The filter combination matched nothing. Loosen filters (remove propertyType or bedrooms, or try another city). Zero-result runs are not charged.

Why is phone null? MagicBricks gates advertiser phone numbers behind a lead-capture form, so the number is not present on the public listing. The actor never invents a value, so it returns null. Use advertiserName, agencyName and builderName for lead identification.

Can I scrape multiple cities at once? Yes. Pass several cities in cities; each runs its own search under one shared maxListings cap.

How do I get rentals instead of sales? Set transactionType to rent.

Is this an official MagicBricks tool? No. This actor is independent and has no affiliation with MagicBricks. It reads only data that is publicly available on the site.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with MagicBricks. Accesses only publicly available data.