eCourts Case Scraper
Under maintenancePricing
from $4.99 / 1,000 results
eCourts Case Scraper
Under maintenanceA robust, high-performance utility designed for developer automation, data integration, and AI training. Features built-in captcha bypass, headful/headless browser execution, and proxy support to scrape eCourts data seamlessly, reliably, and at scale.
Pricing
from $4.99 / 1,000 results
Rating
5.0
(2)
Developer
Coding Frontned
Maintained by CommunityActor stats
3
Bookmarked
58
Total users
3
Monthly active users
7 days ago
Last modified
Categories
Share
What does eCourts CNR Case Scraper do?
eCourts CNR Case Scraper looks up public Indian court-case records on the official eCourts Services website by 16-character CNR. It is an eCourts API alternative that follows the official browser form, solves the form CAPTCHA through a separately configured service, and returns structured case details or an explicit failure record.
The Actor never reports an unavailable or unparseable upstream response as a successful empty result. If no unique CNR produces case data, the OUTPUT summary is written and the Actor run fails.
Why use eCourts CNR Case Scraper?
- Extract case details, current status, parties, advocates, acts, FIR data, hearing history, and orders.
- Recover from transient HTTP 405, 429, 5xx, proxy-tunnel, navigation, response-timeout, invalid-session, and rejected-CAPTCHA failures.
- Use one browser at a time, with a fresh browser context and sticky proxy session for every retry.
- Rotate residential proxy countries sequentially. The default order is GB, US, then IN.
- Deduplicate repeated CNR values before scraping so a retry can never replay an earlier dataset row.
- Schedule runs, export datasets, monitor execution, and call the Actor through the Apify API.
What data can eCourts CNR Case Scraper extract?
| Field | Type | Description |
|---|---|---|
cnr / case_no | string | Normalized CNR. case_no is retained for compatibility. |
success, found, dataAvailable | boolean | Truthful result and availability flags. |
courtName | string | Court heading on the returned case page. |
basicDetails, caseStatus | object | Parsed case-registration and status fields. |
petitionerAdvocate, respondentAdvocate | array | Deduplicated public party and advocate entries. |
acts, firDetails, caseHistory | array/object | Public acts, FIR details, and hearing history. |
interimOrders, finalOrders | array | Deduplicated order metadata. |
sessionAttempts, sessionDiagnostics | number/array | Sanitized retry evidence for this CNR. |
boundary, error, diagnostics | string/object | Explicit no-record, access, upstream, CAPTCHA, input, or processing failure. |
How to scrape eCourts cases by CNR
- Configure
CAPTCHA_API_KEYas an Apify Actor secret or protected environment variable. Do not put the key in Actor input. - Open the Input tab and add one or more CNR values in the form
AAAA000000000000. - Keep residential Apify Proxy enabled unless you have an appropriate custom proxy.
- Run the Actor and inspect the dataset. There is exactly one final row per unique normalized CNR.
- Open the
OUTPUTkey-value-store record for requested, unique, duplicate, success, failure, and session-attempt totals.
How much does it cost to scrape eCourts?
Cost consists of Apify browser compute, proxy traffic, and usage charged by the separately configured CAPTCHA solver. A successful first session is inexpensive; a difficult route can use up to maxSessionAttempts fresh sessions. Lower that limit when latency or budget is more important than recovery depth.
Input
See the Input tab for the complete schema.
caseNosis required. Every item must contain four letters followed by twelve digits.maxCaptchaRetriesdefaults to 3 and is capped at 5 per browser session.maxSessionAttemptsdefaults to 30 and is capped at 30 per unique CNR.proxyCountryFallbacksdefaults toGB,US,INand cycles in that order.proxyConfigurationsupports Apify Proxy and custom proxy URLs. Country injection is not applied to custom proxy URLs.
The solver also supports protected environment variables CAPTCHA_API_URL, CAPTCHA_MODEL_ID, and CAPTCHA_API_TIMEOUT_MS. CAPTCHA_API_KEY is mandatory and has no hardcoded fallback. Keys and CAPTCHA predictions are not written to logs or outputs.
Output
You can download the dataset in JSON, HTML, CSV, or Excel. Duplicate requests do not create duplicate rows; they are counted by duplicateRequests in OUTPUT.
Successful row:
{"cnr": "KARC010037582023","case_no": "KARC010037582023","success": true,"found": true,"dataAvailable": true,"boundary": null,"courtName": "District and Sessions Court","basicDetails": { "cnrNumber": "KARC010037582023" },"caseStatus": { "caseStatus": "Pending" },"sessionAttempts": 2,"proxyCountry": "US"}
Failure row:
{"cnr": "KARC010037582023","success": false,"found": false,"dataAvailable": false,"boundary": "upstream","error": "eCourts CNR search is temporarily unavailable (HTTP 405)","sessionAttempts": 30}
Tips and advanced options
- Keep CNR batches modest: the retry budget applies independently to each unique CNR.
- Treat
no_recordas an authoritative unsuccessful lookup, not an empty successful dataset. - Inspect
sessionDiagnosticsto distinguish gateway, timeout, tunnel, CAPTCHA, solver, and terminal access failures. - Use only one Actor run per proxy allocation when the upstream is unstable.
FAQ, disclaimers, and support
Why is my run marked failed even though it has output?
The Actor always writes final dataset rows and OUTPUT first. When every unique CNR fails, it then marks the run failed so monitoring and integrations do not mistake an empty/unavailable upstream result for success.
Does the Actor expose my CAPTCHA solver key?
No. The key is read only from a secret or protected environment variable. Logs and diagnostics redact application tokens and API-key patterns, and predictions are not logged.
Our Actors are ethical and do not extract private user data such as email addresses, gender, or location. They extract only information exposed by the requested public eCourts workflow. Results can still contain personal data protected by the GDPR and other laws. Do not scrape personal data without a legitimate reason; consult your lawyers if unsure.
Use the API tab for programmatic access. For support, open the Issues tab and include sanitized diagnostics, never credentials or CAPTCHA values.
