How-To · Developers · Product
How to Add Court-Case Tracking to Your App (2026)
Adding court-case tracking to a product sounds like "call an API and show the status", but the hard parts are everything around that call: linking your own customers or matters to the right cases, keeping them in sync without hammering a source, telling a real change from a re-read, and notifying users well. Get those wrong and the feature either misses updates or cries wolf. This guide is for engineers and product teams building a tracking feature into an app in India. It covers the data model, entity matching, sync and change detection, notifications, coverage and the constraints of Indian court data. For the low-level API call itself, it points you to the integration page. Last verified October 2026.
- Scope first: watching known cases by identifier is simple; watching parties for new cases is the valuable, harder goal.
- Data model: watches, canonical cases, an append-only event log, and sync state for change detection.
- Matching: track by party with match confidence and user confirmation, never a raw name string.
- Sync: poll to the pace of the matter, detect change by hashing fields, and avoid do-it-yourself scraping against CAPTCHA-protected portals.
01Scope the feature before you build
Decide up front what "tracking" means for your users, because it changes the whole design:
- Watch known cases the user already has, keyed by the Case Number Record identifier, which is the simplest and most reliable form.
- Watch parties, so a new case filed against a watched company or person is surfaced. This is far more valuable and far harder, because it depends on name matching.
- Watch forums or categories, such as all new matters of a type. This is the heaviest.
Most products start with watching known cases and add party watching later. For the underlying data layer, see what a court data API is in India.
02The data model
A tracking feature needs a few core tables, whatever source feeds them:
- Watches: what a user is tracking, a case identifier or a party, with the user who owns it and their notification preferences.
- Cases: the canonical record for each tracked case, with court, parties, stage and next hearing.
- Events: an append-only log of hearings, orders and status changes, so you keep history and can show a timeline.
- Sync state: when each watch was last checked and the last known hash of its state, so you can detect change.
Keeping events append-only is the key decision: it lets you show a history, replay what a user was notified about, and debug missed updates.
03Matching your entities to the right cases
If you track by party, this is the feature's hardest problem. Court records are typed by staff, so:
- The same company appears with and without suffixes and under spelling variants.
- Different parties share similar names, so a loose match returns cases that are not yours.
- A person can be a party under slightly different names across courts.
You need match confidence, not a string compare: store a confidence score, let users confirm or reject matches, and keep that feedback so the matching improves. For the deeper problem, see how to find court cases against a company in India and how a litigation check API handles matching.
A tracking feature that shows the wrong party's cases is worse than no feature. Match confidence, not a name string, is what makes it safe to ship.
04Sync cadence and change detection
Indian court data is updated as courts digitise it, so what you read is "as published" and can lag a hearing. Design around that:
- Cadence. Match polling to how fast the matter moves. Daily is plenty for most; near a listed hearing, check more often.
- Change detection. Hash the meaningful fields and compare to the last sync, so you notify on real changes, not on a re-read of the same data.
- Do not poll by scraping. The public portals use CAPTCHA and have no published rate limit, so do-it-yourself polling at scale is fragile and risky. Prefer a source that supports change notifications or a sane query budget.
- Backoff and dedupe. Handle source lag gracefully and never double-notify.
For the mechanics of the underlying call, polling versus alerts, and reliability, see how to integrate a case status API in India.
05Notifications and UX
The feature lives or dies on trust, so the surface matters as much as the plumbing:
- Say what changed, not just "update available". Show the old and new hearing date, or the new order.
- Let users tune noise, per watch, by channel and by event type.
- Show provenance, the source and the time you read it, so a user can trust or verify a status.
- Handle the blank honestly, distinguishing "no change" from "could not check" so silence never hides a failure.
06Coverage and the constraints
Your tracking is only as good as the forums you cover. Plan for the gaps:
- Core eCourts data covers district and High Courts, but the Supreme Court runs its own system and tribunals such as the National Company Law Tribunal, Debt Recovery Tribunals and tax tribunals may sit outside it.
- A feature that silently covers only some forums will miss the case that matters, so be explicit in the product about what is tracked.
- Consolidating several sources is work in itself; see how to consolidate litigation data and what a litigation monitoring API does.
07Where Claw fits
Claw is an all-in-one legaltech platform for Indian advocates, law firms, and corporate legal teams, combining AI-based case search, an AI legal assistant (Legal GPT), case management, and compliance automation across all Indian courts and tribunals.
Rather than build polling against portals that use CAPTCHA, a product can build its tracking feature on Claw, which offers court-data APIs, case export and case tracking across 9,102 courts, benches and forums, covering 30 crore+ judgments with Supreme Court decisions from 1950 and High Court decisions from 1990, with results in under 5 seconds. That gives the breadth and the matching your feature needs behind one interface, so your team can focus on the data model, UX and notifications. Claw does not train its AI models on your case documents.
Create a FREE Claw account to prototype tracking, and use case search across Indian courts to find the cases your feature will watch.
08Sources and further reading
- eCourts services (official portal): ecourts.gov.in
- National Judicial Data Grid: njdg.ecourts.gov.in
- Claw: clawlaw.in
This is general engineering guidance, not legal advice. Polling court sources and storing case data raise terms-of-use and data-protection questions, so take advice before you build.
09Frequently asked questions
What is the hardest part of building case tracking?
Matching your own entities to the right cases when you track by party. Court records are typed by staff, so companies appear under spelling variants and different parties share similar names. You need match confidence scoring and user confirmation, not a string compare, or the feature will show the wrong party's cases.
How often should I sync tracked cases?
Match the cadence to how fast the matter moves. Daily is enough for most cases, with more frequent checks near a listed hearing. Detect change by hashing the meaningful fields and comparing to the last sync, so you notify on real changes rather than on a re-read of the same data.
Can I just poll the eCourts portal from my app?
Not reliably at scale. The public lookup pages use CAPTCHA, have no published rate limit, and change markup without notice. Do-it-yourself polling is fragile and carries terms-of-use risk. Build on a source that supports change notifications or a reasonable query budget instead.
Does one source cover every court for tracking?
Usually not. Core eCourts data covers district and High Courts, but the Supreme Court runs its own system and tribunals such as the NCLT, Debt Recovery Tribunals and tax tribunals may sit outside it. Be explicit in your product about which forums are tracked so users are not misled by a silent gap.
How does Claw help build a tracking feature?
Claw offers court-data APIs, case export and tracking across 9,102 courts, benches and forums covering 30 crore+ judgments, with results in under 5 seconds, so you get breadth and matching behind one interface and can focus on your data model, UX and notifications. It does not train its AI models on your case documents. Confirm exact endpoints and whether change webhooks exist from Claw developer docs.