Magicbricks Property Scraper
Pricing
$4.00/month + usage
Magicbricks Property Scraper
Magicbricks is an Indian online real estate platform that helps users buy, sell, and rent residential and commercial properties by providing verified listings, advanced search filters, price trends, and direct contact with property owners, agents, and builders.
Pricing
$4.00/month + usage
Rating
5.0
(2)
Developer

ScrapeAI
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
๐ Magicbricks Property Scraper - API Based
This Apify actor retrieves real estate data directly through the Magicbricks API. Search by city, property type, and bedrooms to collect structured property information including title, price, location, area, amenities, and images. Perfect for real estate research, price monitoring, and market analysis.
โ Use Cases
- ๐ Monitor property pricing trends
- ๐ Track property availability across cities
- ๐ Conduct real estate market research
- ๐ฐ Build property comparison databases
- ๐ Generate property listings with specifications
๐ฅ Input Configuration
You can customize the actor using the following input fields:
{"searchUrl": "https://www.magicbricks.com/property-for-sale/residential-real-estate?bedroom=2,3&proptype=Multistorey-Apartment,Villa&cityName=Bangalore","apiUrl": "","maxProperties": 50,"minPrice": 0,"maxPrice": 0,"minBedrooms": 2,"maxBedrooms": 3,"sortBy": "premiumRecent"}
๐งพ Fields Explained
| Field | Type | Description |
|---|---|---|
searchUrl | string | Magicbricks search URL with filters (city, bedrooms, property type) |
apiUrl | string | Direct Magicbricks API URL. If provided, searchUrl is ignored |
maxProperties | number | Maximum number of properties to retrieve (1-1000) |
minPrice | number | Minimum price filter in INR. Set to 0 for no minimum |
maxPrice | number | Maximum price filter in INR. Set to 0 for no maximum |
minBedrooms | number | Minimum bedrooms (BHK). Set to 0 for no filter |
maxBedrooms | number | Maximum bedrooms (BHK). Set to 0 for no filter |
sortBy | string | Sort order: "premiumRecent", "price_asc", "price_desc", "recentFirst", "relevance" |
pageNumber | number | Starting page number for pagination |
๐ค Output
The actor returns a dataset containing structured property records. Each record includes comprehensive details about the property, suitable for price monitoring, analytics, and market research.
๐งฉ Sample Output
{"property_id": "12345678","property_title": "3 BHK Apartment in Whitefield","property_type": "Multistorey-Apartment","locality": "Whitefield","city": "Bangalore","address": "Whitefield Main Road, Bangalore","bedrooms": 3,"bathrooms": 2,"carpet_area": 1450,"carpet_area_unit": "sqft","floor_number": 5,"total_floors": 12,"price": 9500000,"price_display": "95 Lac","price_per_sqft": 6551,"possession_status": "Ready to Move","furnishing": "Semi-Furnished","age_of_property": "New Construction","builder_name": "ABC Developers","project_name": "Green Valley Heights","amenities": ["Gym", "Swimming Pool", "Parking"],"image_url": "https://img.staticmb.com/...","listing_url": "https://www.magicbricks.com/..."}
๐ Output Fields
| Field | Type | Description |
|---|---|---|
property_id | string | Unique property identifier |
property_title | string | Property listing title |
property_type | string | Type of property (Apartment, Villa, etc.) |
locality | string | Property locality/area name |
city | string | City where property is located |
bedrooms | integer | Number of bedrooms (BHK) |
bathrooms | integer | Number of bathrooms |
carpet_area | number | Carpet area of the property |
carpet_area_unit | string | Unit of measurement (sqft, sqm) |
floor_number | integer | Floor number of the property |
total_floors | integer | Total floors in the building |
price | number | Property price in INR |
price_display | string | Formatted price for display |
price_per_sqft | number | Price per square foot |
possession_status | string | Possession status (Ready to Move, etc.) |
furnishing | string | Furnishing status |
builder_name | string | Builder/developer name |
project_name | string | Project/society name |
amenities | array | Property amenities list |
image_url | string | Main property image URL |
listing_url | string | Property listing URL on Magicbricks |
๐ Data Source
- โ Data fetched exclusively via Magicbricks API (HTTP GET requests)
- โ No HTML scraping or DOM parsing
- โ Real-time property information directly from Magicbricks
- โ Automatic filtering and deduplication
๐ Proxy Configuration
This actor uses standard HTTP headers with optional proxy support for:
- Avoiding IP-based rate limiting or bans
- Accessing location-specific data
- Ensuring stable data retrieval at scale
Configure proxy settings in Apify:
{"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "IN"}
๐ How to Use
- Open the actor in Apify Console
- Click "Try actor" or create a new task
- Enter your Magicbricks search URL or API URL
- Configure optional filters (price range, bedrooms)
- Run the actor
- Download results in JSON, CSV, or Excel format
โ๏ธ Advanced Input Example
{"apiUrl": "https://www.magicbricks.com/mbsrp/propertySearch.html?editSearch=Y&category=S&propertyType=10002,10003&bedrooms=11701,11702&city=3327&page=1&sortBy=premiumRecent&pType=10002,10003&isNRI=N&multiLang=en","maxProperties": 100,"minPrice": 5000000,"maxPrice": 20000000,"minBedrooms": 2,"maxBedrooms": 3,"sortBy": "price_asc"}
๐ ๏ธ Tech Stack
- Apify SDK โ actor orchestration and data handling
- Node.js 18+ โ runtime environment
- node-fetch โ HTTP client for API requests
- Magicbricks API โ exclusive data source for property information
๐ Data Processing Features
- โ Automatic duplicate detection using Property IDs
- โ Filtering by price range and bedroom count
- โ Structured data parsing and normalization
- โ Comprehensive logging and error handling
- โ Schema validation for all output records
- โ Pagination support for large result sets
๐ง Local Development
Installation
$npm install
Running the Actor
$npm start
Validation
Validate all generated datasets against the schema:
$node validate-datasets.js
Code Quality
Format code:
$npm run format
Check linting:
$npm run lint
๐ Project Structure
.โโโ .actor/ # Actor configurationโ โโโ actor.json # Actor metadataโ โโโ input_schema.json # Input parameters schemaโ โโโ dataset_schema.json # Output dataset schemaโ โโโ input.json # Default inputโ โโโ input-local.json # Local development inputโ โโโ input-production.json # Production inputโโโ src/โ โโโ main.js # Main actor scriptโโโ storage/โ โโโ datasets/default/ # Generated datasetsโโโ package.json # Dependenciesโโโ validate-datasets.js # Dataset validatorโโโ README.md # This file
๐ค Support
For issues, questions, or feature requests, please refer to the Apify documentation or contact support.