eCourts India Case Status Scraper
parseforge/court-records-ecourt-india-scraper
News & mediaOther
Scrapes eCourts India case status records by CNR number with automatic CAPTCHA solving. Returns case type, filing date, petitioner, respondent, judge, acts, and the full chronological hearing history as a flat row.
- Total users
- 14
- Monthly active
- 2
- Total runs
- 144
- Bookmarked
- 0
- Rating
- Not rated yet
- Last modified
- 9 days ago
Overview
eCourts India Case Status Scraper
Scrape eCourts India case status by CNR number, with automatic CAPTCHA solving built in. Every lookup returns the case type, filing date, petitioner and respondent names, judge, acts, and the full chronological hearing history. Export to CSV, JSON, Excel, or XML.
The eCourts portal requires a 16-character CNR number and a visual CAPTCHA for every single case lookup. This Actor automates that entire flow. Feed it a list of CNR numbers and it solves the image CAPTCHA on each request, extracts the complete case status record, and returns a clean, structured row for every case you track.
| Who uses it | What they scrape eCourts India for |
|---|---|
| Litigation paralegals | Track daily case status across hundreds of CNR numbers without manual CAPTCHA entry. |
| Law firm associates | Pull the full hearing history for a batch of matters before a client meeting. |
| Legal tech platforms | Ingest structured case data into dashboards or client portals via API. |
| Journalists | Monitor case progression on matters of public interest across multiple court complexes. |
What it does
This Actor collects eCourts India case status records by CNR number and returns each case as a flat row with its filing details, parties, judge, acts, and hearing history.
- ๐ข Bulk CNR lookup: Paste a list of 16-character CNR numbers and the Actor resolves each one sequentially.
- ๐ค Automatic CAPTCHA solving: The eCourts image CAPTCHA is solved programmatically on every request, no manual intervention.
- ๐ Full hearing history: Every row includes the chronological list of hearing dates, purposes, and court orders.
- ๐ฎ๐ณ Indian residential proxy option: Route traffic through Indian residential IPs when datacenter proxies encounter blocks.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with eCourts India data
๐ Daily cause list preparation.
A litigation paralegal feeds the next day's CNR numbers into the Actor each evening and receives a spreadsheet of updated case statuses and last hearing outcomes before court opens.
๐ Portfolio monitoring for law firms.
A law firm runs a weekly batch of all active CNR numbers to populate a client-facing dashboard with the latest hearing dates and judge assignments.
๐ Due diligence and background checks.
A legal researcher looks up CNR numbers associated with a counterparty to review the full hearing history and identify patterns in litigation.
๐ฐ Public interest case tracking.
A journalist monitors a set of high-profile CNR numbers across multiple district courts and receives the latest orders as structured data for reporting.
Why choose this scraper
| What you get | |
|---|---|
| No manual CAPTCHA | The Actor solves the eCourts image CAPTCHA automatically for every CNR you supply. |
| Structured output | Case type, filing number, filing date, petitioner, respondent, judge, acts, and hearing history land in fixed columns. |
| Bulk ready | Feed it one CNR or a thousand. The same schema, the same run. |
| Indian IPs | Datacenter proxy by default. Flip the residential proxy switch if lookups start failing. |
How it compares
Two other Apify actors target Indian court data. Here is how this CNR lookup tool compares on the features that matter for bulk case status retrieval.
| Feature | ParseForge | eCourts Case Scraper | India Court Judgments Scraper |
|---|---|---|---|
| CNR number lookup | Yes, single or bulk list | Yes | Not listed |
| Automatic CAPTCHA solving | Yes, built in | Yes | Not listed |
| Full hearing history | Yes, chronological with dates and orders | Not listed | Not listed |
| Indian residential proxy option | Yes, toggle on demand | Not listed | Not listed |
| Supreme Court and High Court judgments | Not listed | Not listed | Yes |
| Search by party name or judge | Not listed | Not listed | Yes |
Configure the run
Drive the Actor from a list of CNR numbers or a single CNR string. Each lookup fetches the complete case status page and the hearing history tab, and the residential proxy toggle gives you a fallback connection path. The Input tab lists every parameter.
A first run with the defaults:
{
"maxItems": 10,
"cnrNumbers": [
"DLWT010028682023"
]
}
A larger pull:
{
"maxItems": 200,
"cnrNumbers": [
"DLWT010028682023"
]
}
Pricing
Pay-per-result: $0.021 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $2.10 |
| 1,000 results | $21.00 |
| 10,000 results | $210.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the eCourts India Case Status Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to eCourts India through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/court-records-ecourt-india-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting no results for my CNR numbers?
First, verify the CNR number manually on the eCourts portal. A 16-character CNR that returns 'Invalid CNR' on the portal will also return no data here. Check that you have not included hyphens or spaces. If the CNR is valid on the portal but the Actor returns nothing, enable the Indian residential proxy option and retry.
The Actor is failing on the CAPTCHA step.
CAPTCHA solving can occasionally fail if the eCourts portal serves an unusually distorted image. The Actor retries the lookup automatically. If failures persist across multiple runs, try enabling the residential proxy. A different IP range sometimes results in a more solvable CAPTCHA.
I am getting a timeout or connection error.
The eCourts portal may be slow during peak hours. The Actor includes retries with backoff. If timeouts are consistent, switch on the Indian residential proxy option. Residential IPs often have lower latency to Indian government servers than datacenter proxies.
The hearing history is missing or incomplete.
The Actor clicks the 'Hearing History' tab on the case status page. If the tab does not load, the row will contain the case details but an empty hearing history. This can happen when the eCourts portal serves the page slowly. Increasing the run's memory or enabling the residential proxy can improve page load reliability.
My run stopped before processing all CNR numbers.
Check your Apify plan's memory and timeout limits. Each CNR lookup opens a browser session, solves a CAPTCHA, and scrapes two tabs. A very large list may hit the run memory limit. Split your CNR list into smaller batches or upgrade your plan for more memory.
The output has garbled text or missing Indian language characters.
The eCourts portal serves case data primarily in English. If you see encoding issues, ensure your export format is set to JSON or CSV with UTF-8 encoding. Excel exports should handle Unicode correctly in modern versions.
FAQ
| Question | Answer |
|---|---|
| What is a CNR number? | CNR stands for Case Number Registry. It is a unique 16-character alphanumeric identifier assigned to every case filed in Indian courts and displayed on the eCourts portal. You can find it on the cause list, the case filing receipt, or the eCourts case status page itself. |
| Does this Actor work for all Indian courts? | It works for any court whose case status is available on the eCourts services portal (ecourts.gov.in). This covers most district and taluka courts across India. The Supreme Court and High Courts have separate judgment portals that this Actor does not target. |
| How does the CAPTCHA solving work? | The Actor renders the eCourts CAPTCHA image, processes it with an automated solver, and submits the correct characters. This happens inside the browser session for every CNR lookup, so you never see a CAPTCHA prompt. |
| Can I scrape case status without a CNR number? | No. The eCourts case status page requires a CNR number to retrieve a record. This Actor does not search by party name, advocate name, or filing number. You must supply the 16-character CNR. |
| What data fields does the Actor return? | It returns the case type, filing number, filing date, petitioner name, respondent name, judge name, applicable acts, case status, and the full hearing history with dates, purposes, and orders. |
| How many CNR numbers can I look up in one run? | Free users are limited to 10 items for a preview. Paid users can set the max items up to 1,000,000 per run, subject to the time and memory limits of your Apify plan. |
| Do I need a proxy to use this Actor? | All traffic goes through an Apify datacenter proxy by default, which the eCourts portal accepts. If lookups start failing, you can enable the Indian residential proxy option for an additional connection path. |
| Can I get the judgment PDF or full order text? | This Actor extracts the case status record and hearing history as displayed on the eCourts portal. It does not download judgment PDFs or fetch full order text from the judgment archive. For judgment text, consider a dedicated judgment scraper. |
| Is this Actor affiliated with the eCourts portal? | No. This is an independent automation tool built on the Apify platform. It reads publicly accessible case status pages from the eCourts services portal. It is not endorsed by or affiliated with the National Informatics Centre or any Indian court. |
| What output formats are supported? | You can export your dataset to CSV, JSON, Excel, XML, or RSS. The data lands in Apify's dataset storage and can be downloaded or piped to an API integration. |
| How do I find the CNR number for a case? | You can obtain the CNR from the court's cause list, the case filing receipt, or by searching the eCourts portal by party name or advocate name manually. Once you have the CNR, feed it to this Actor for automated status retrieval. |
| Does the Actor handle eCourts portal downtime? | The Actor retries failed requests automatically. If the eCourts portal is unresponsive for an extended period, the run will log errors for those CNR numbers and continue with the remaining ones in your list. |
Related actors
Browse the full ParseForge collection for more scrapers.
๐ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
โ ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by National Informatics Centre (NIC). It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
Input
| Field | Type | What it does | Default |
|---|---|---|---|
| maxItems | integer | Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000 | 10 |
| cnrNumbers | array | List of 16-character CNR (Case Number Registry) identifiers to look up on the eCourts portal. | ["DLWT010028682023"] |
| cnrNumber | string | A single 16-character CNR (alternative to the CNR numbers list above). | not set |
| residentialProxy | boolean | Off by default. All traffic already goes through an Apify datacenter proxy, which the eCourts portal accepts. Turn this on only if lookups start failing, to route requests through residential IPs located in India instead. | false |
Pricing
from $19.00 per 1,000 results
| Charged for | What it is | Price each |
|---|---|---|
| result | Single result in the default dataset. | $0.019 to $0.021 |
Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.
API
One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.
curl -X POST "https://api.apify.com/v2/acts/parseforge~court-records-ecourt-india-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"maxItems": 3,
"cnrNumbers": [
"DLWT010028682023"
]
}' Examples
Input that runs as-is.
{
"maxItems": 3,
"cnrNumbers": [
"DLWT010028682023"
]
} Reviews
No reviews yet. Be the first.
Issues
We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.
Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.
