We extract Index II records, transaction values, buyer and seller details, and stamp duty metrics from the IGR Maharashtra portal. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.
Structured, schema-consistent data across all major object types — delivered clean, typed, and ready to query.
Complete list of extractable fields for Index II Summary objects from igrmaharashtra.gov.in. All fields typed and schema-versioned.
"document_number": "4892", "registration_year": "2023", "sro_name": "Andheri 4", "district": "Mumbai Suburban", "taluka": "Andheri", "consideration_amount": 14500000.0, "market_value": 14250000.0, "registration_date": "2023-11-14"
| # | document_number | registration_year | sro_name | district | taluka | village |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Property Details objects from igrmaharashtra.gov.in. All fields typed and schema-versioned.
"cts_number": "145/B", "flat_number": "402", "building_name": "Siddhivinayak Heights", "floor": "4th Floor", "pin_code": "400053", "boundaries": "North: Road, South: Plot 14, East: CTS 146"
| # | property_id | survey_number | cts_number | plot_number | flat_number | building_name |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Party Details objects from igrmaharashtra.gov.in. All fields typed and schema-versioned.
"party_type": "Individual", "role": "Purchaser", "name": "Rajesh Kumar Sharma", "age": 45, "pan_number": "ABCDE1234F", "address": "B-401, Vasant Vihar, Thane West"
| # | party_type | role | name | age | pan_number | address |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Financials objects from igrmaharashtra.gov.in. All fields typed and schema-versioned.
"consideration_value": 14500000.0, "market_value": 14250000.0, "stamp_duty_paid": 870000.0, "registration_fee_paid": 30000.0, "document_handling_charges": 600.0, "total_paid": 900600.0
| # | consideration_value | market_value | stamp_duty_paid | registration_fee_paid | document_handling_charges | penalty |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Document Metadata objects from igrmaharashtra.gov.in. All fields typed and schema-versioned.
"document_type": "Agreement to Sale", "sub_registrar_office": "Bandra 2", "volume_number": "4512", "page_number": "12-45", "status": "Registered", "scraped_at": "2023-11-15T08:12:44Z"
| # | document_type | sub_registrar_office | volume_number | page_number | microform_number | status |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
The IGR Maharashtra portal is notoriously difficult to scrape. We handle the CAPTCHAs, ASP.NET session states, and server timeouts to deliver clean, normalised Index II data.
Extract all fields from the Index II format including property descriptions, party details, and financial consideration values.
Integration with CapSolver and 2Captcha to bypass the continuous image captchas required for every search query.
Automated traversal of all districts, talukas, and villages to ensure complete geographical coverage.
Handling of heavy ASP.NET ViewState payloads and aggressive session timeouts to maintain uninterrupted extraction.
Processing and transliterating dual-language outputs to provide clean, queryable English strings.
Extract historical transaction records from available online archives dating back to 2002.
Run daily pipelines to capture newly registered documents as soon as they appear in the public search portal.
Map transactions to specific Sub-Registrar Offices for accurate jurisdictional analysis.
Standardise addresses, correct malformed CTS numbers, and convert string currency values into strict numeric types.
Brief in. Clean data out.
Specify target districts, talukas, villages, or specific date ranges for extraction.
We configure the Scrapy spiders, set up captcha solving workflows, and manage ASP.NET session states.
Schema validation, null-rate checks on critical fields like consideration value, and data type enforcement.
JSON, CSV, or Parquet pushed to your S3 bucket, BigQuery dataset, or Snowflake stage on an agreed schedule.
Extracting data from IGR Maharashtra requires navigating outdated web architectures and aggressive rate limiting. Here is how we maintain pipeline stability.
The portal requires a captcha solution for every single search query. We route these challenges through automated solving APIs with fallback mechanisms to ensure the crawler never stalls.
Government servers frequently drop connections or return gateway errors during peak hours. Our orchestration layer uses exponential backoff and intelligent retry logic to recover missing data during off-peak windows.
The site relies heavily on ASP.NET ViewState for pagination and form submission. We parse and maintain these hidden payload states across requests to prevent session invalidation.
User-entered data on the portal contains typos, varied date formats, and mixed Marathi/English text. We apply strict regex patterns and transliteration libraries to produce a normalised dataset.
Search results are often capped at a maximum number of records. We dynamically slice search parameters by narrower date ranges or specific property numbers to ensure total extraction without truncation.
Automated Valuation Models require ground-truth transaction data to accurately price properties in specific micro-markets.
Legal firms and compliance teams automate initial title searches to verify ownership history and encumbrances.
Real estate developers track absorption rates, pricing trends, and competitor project sales velocity.
Financial institutions cross-reference declared property values against actual registered consideration amounts.
Interior designers, brokers, and home service providers identify recent property buyers for targeted marketing.
Researchers and policy makers analyse spatial transaction density and stamp duty revenue distribution.
"The Maharashtra IGR portal holds the ground truth for real estate pricing, but its architecture actively resists automated extraction."
Extracting Index II records requires navigating aggressive session timeouts, complex ASP.NET state management, and constant CAPTCHA interruptions. DataFlirt handles the extraction infrastructure, delivering clean transaction data so your team can focus on market analysis rather than maintaining fragile web scrapers.
Everything supported by our igrmaharashtra.gov.in scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.
Open-source tooling on proven cloud infra — no vendor lock-in, full observability.
Scrapy orchestrates the crawl logic while Playwright handles the complex JavaScript rendering and ASP.NET form submissions.
Asynchronous integration with multiple captcha solving APIs ensures high throughput even when the portal increases challenge difficulty.
Pipelines are scheduled via Apache Airflow and executed on containerised infrastructure, allowing us to scale workers during off-peak hours.
Data delivered to where your team already works — no new tooling required.
About igrmaharashtra.gov.in scraping, legality, and pipeline operations.
Ask us directly →Yes. We exclusively extract data from the Free Search IGR Service (e-Search) which is publicly accessible. We do not bypass authentication walls or extract restricted internal documents.
We route captcha images to automated solving services like CapSolver and 2Captcha. Our infrastructure handles the latency and retries automatically.
Yes, provided the data exists in the online e-Search database. The portal generally holds digitised records from 2002 onwards for Mumbai and surrounding areas, though coverage varies by district.
We typically configure pipelines to run daily or weekly, capturing newly indexed records. Real-time extraction is limited by the portal's own updating schedule.
No. Downloading certified PDF copies requires a logged-in session and payment of fees per document. We extract the structured Index II text data visible on the search results pages.
We extract the text exactly as it appears on the portal. We can apply basic transliteration libraries to normalise names and addresses into English upon request.
Our pipelines detect 502/503 errors and session timeouts. They automatically pause and resume extraction using exponential backoff, ensuring complete data capture once the portal recovers.
20-minute scoping call. Pilot dataset within the week. Production within two. Stop fighting captchas and session timeouts. Tell us which districts and date ranges you need, and we will deliver clean Index II records directly to your database.