India Court Judgments Scraper - Supreme Court & High Courts API avatar

India Court Judgments Scraper - Supreme Court & High Courts API

Pricing

Pay per event

Go to Apify Store
India Court Judgments Scraper - Supreme Court & High Courts API

India Court Judgments Scraper - Supreme Court & High Courts API

Crawl Indian court judgments and orders from the Supreme Court, all 24 High Courts, Tribunals, and central laws. Filter by court, date range, judge, citation, or keyword. Optional full judgment text. Requires user-supplied Indian Kanoon API token (paid - apply at api.indiankanoon.org).

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

7 days ago

Last modified

Categories

Share

Indian Kanoon API Scraper — India Court Judgments (Supreme Court, High Courts & Tribunals)

Access the Indian Kanoon API (api.indiankanoon.org) — also written IndianKanoon — via a thin, BYO-token Apify wrapper. The actor extracts structured records of Indian court judgments and orders from the Supreme Court of India, all 24 High Courts, central tribunals (NCLT, NGT, ITAT, CESTAT, etc.), Law Commission reports, and central acts. The official Indian Kanoon API indexes more than 30 million judgments, making it the largest single source of decided case law in India.

What this Actor returns

  • 25+ structured fields per judgment: case title, court, jurisdiction tier, publish date, authoring judge, citation count, citing/cited cases, and canonical URL
  • Optional full judgment text (HTML and plain text) and acts cited, opt-in via the fetchFullText flag
  • Filter by court, free-text keyword, authoring judge, citation, date range, or any combination
  • Sort by relevance (best for keyword search) or by date — newest or oldest first
  • Coverage across India's full judicial hierarchy: Supreme Court → 24 High Courts → tribunals → central laws → Constitution → Law Commission

Required: Indian Kanoon API token

This is a BYO-API-token actor. It does not include credit for the underlying Indian Kanoon service.

  1. Register at api.indiankanoon.org/signup/. New accounts receive Rs. 500 of free trial credit.
  2. Copy your shared API token from the dashboard.
  3. Paste it into the apiToken input field when running the actor.

Indian Kanoon's per-call pricing (billed by IK directly to the token holder, on top of any Apify usage):

Call typeCost (INR)
Search page (10 results)0.50
Document metainfo0.02
Full document HTML0.20
Original court PDF copy0.50

A search of 100 results with fetchFullText: false costs roughly Rs. 5 (10 search pages). Toggling fetchFullText: true adds Rs. 0.20 per record. Plan accordingly.

ToS note: Per Indian Kanoon's terms, downstream rendering of these results to end users requires displaying the "Powered by IKanoon" attribution. The actor returns raw structured data; attribution is the consumer's responsibility.

Who uses Indian court data and why?

  • Indian legal-tech startups — build precedent search, citation graphs, and AI-driven research tools without scraping eCourts directly
  • Compliance and corporate litigation teams — screen counterparties and directors for past or pending litigation
  • Law firms and litigators — surface judgments authored by a specific judge or interpreting a specific section
  • Legal academics and researchers — bulk-pull judgments by court, period, or topic for empirical and doctrinal studies
  • Journalists and policy analysts — monitor recent rulings on constitutional, civil-rights, regulatory, or commercial matters
  • AI/ML teams — train and evaluate legal language models on structured Indian case-law data

How the scraper works

  1. You provide an apiToken and at least one filter (search query, court, judge, citation, or date range).
  2. The actor builds an Indian Kanoon formInput query string — for example, right to privacy doctypes: supremecourt fromdate: 1-1-2017 todate: 31-12-2017 sortby: mostrecent.
  3. It POSTs to api.indiankanoon.org/search/ with your token in the Authorization header, paginating 10 results at a time until it reaches maxItems.
  4. For each result it builds a flat record — case ID, title, court, dates, judge, citation counts, and so on.
  5. If fetchFullText: true, it additionally calls /doc/{tid}/ per record to pull the full judgment HTML, citing cases, cited-by cases, and a regex-extracted list of acts referenced.
  6. Records are streamed to the Apify dataset as they're collected.

Input

Right-to-privacy line of cases at the Supreme Court

{
"apiToken": "your_indian_kanoon_token",
"query": "right to privacy",
"court": "supremecourt",
"orderBy": "mostrecent",
"maxItems": 50
}

Delhi High Court judgments by a specific judge

{
"apiToken": "your_indian_kanoon_token",
"court": "delhi",
"author": "Sanjeev Sachdeva",
"orderBy": "mostrecent",
"maxItems": 100
}

All Bombay High Court IP cases in a date range

{
"apiToken": "your_indian_kanoon_token",
"query": "trademark infringement",
"court": "bombay",
"fromDate": "2023-01-01",
"toDate": "2024-12-31",
"maxItems": 200
}

Look up a specific case by citation

{
"apiToken": "your_indian_kanoon_token",
"citation": "(2017) 10 SCC 1",
"maxItems": 5
}

Full judgment text for further analysis (more expensive)

{
"apiToken": "your_indian_kanoon_token",
"query": "Section 138 Negotiable Instruments Act",
"court": "supremecourt",
"fetchFullText": true,
"maxItems": 25
}

Tribunals — NCLT/ITAT/NGT decisions

{
"apiToken": "your_indian_kanoon_token",
"query": "insolvency resolution",
"court": "tribunals",
"orderBy": "mostrecent",
"maxItems": 100
}

Input parameters

FieldTypeDefaultDescription
apiTokenstring(required)Your paid Indian Kanoon API token. Stored as a secret.
querystring"right to privacy"Free-text search over judgment content and metadata. Use double quotes for phrases. Supports IK syntax: author:, cites:, citedby:, etc.
courtstring"supremecourt"Restrict to a specific court. See the cheat sheet below. Empty string = all courts.
authorstring""Authoring-judge filter (partial match, e.g. Chandrachud, Bhushan).
citationstring""Citation filter (e.g. (2017) 10 SCC 1 for Puttaswamy).
fromDatestring""Earliest publish date, ISO YYYY-MM-DD. Converted internally to IK's DD-MM-YYYY.
toDatestring""Latest publish date, ISO YYYY-MM-DD.
orderBystring"relevance"relevance, mostrecent, or leastrecent.
fetchFullTextbooleanfalseIf true, additionally fetch the full HTML body of each judgment. Adds Rs. 0.20 per record to your IK bill.
maxItemsinteger10Maximum records to return. Each search page returns 10 results (Rs. 0.50 per page).
proxyConfigurationobjectdisabledProxy settings. Not required — IK is a public API.

Court cheat sheet

CodeCourt
supremecourtSupreme Court of India
delhiDelhi High Court
bombayBombay High Court
madrasMadras High Court
calcuttaCalcutta High Court
keralaKerala High Court
karnatakaKarnataka High Court
allahabadAllahabad High Court
andhraAndhra Pradesh / pre-bifurcation Andhra & Telangana
chattisgarhChhattisgarh High Court
gauhatiGauhati High Court
gujaratGujarat High Court
himachal_pradeshHimachal Pradesh High Court
jammuJammu & Kashmir High Court
jharkhandJharkhand High Court
madhyapradeshMadhya Pradesh High Court
meghalayaMeghalaya High Court
manipurManipur High Court
orissaOrissa / Odisha High Court
patnaPatna High Court
punjabPunjab & Haryana High Court
rajasthanRajasthan High Court
sikkimSikkim High Court
telanganaTelangana High Court
tripuraTripura High Court
uttaranchalUttarakhand High Court
tribunalsTribunals (NCLT, NGT, ITAT, CESTAT, etc.)
centralCentral Indian acts
lawcommissionofindiaLaw Commission of India reports
constitutionConstitution of India

Output

Each dataset record carries the following fields:

FieldTypeDescription
doc_idnumberIndian Kanoon document ID — use to fetch the full doc via https://indiankanoon.org/doc/{doc_id}/.
titlestringCase title, typically "Petitioner vs Respondent on Date".
courtstringFull court name (e.g. "Supreme Court of India").
court_codestringIK doctype code (supremecourt, delhi, etc.).
jurisdiction_levelstringHierarchy: supreme, high_court, tribunal, central, law_commission, or other.
publish_datestringDate of judgment / publication, ISO YYYY-MM-DD.
publish_yearnumberYear of judgment.
authorstringAuthoring judge or bench description.
headlinestringSearch-result snippet with HTML highlights stripped, truncated to 1,000 characters.
doctypestringIndian Kanoon document-type code.
num_citesnumberNumber of cases this judgment cites.
num_cited_bynumberNumber of later cases citing this judgment.
has_court_copybooleanTrue when an original court PDF is available via /origdoc/{doc_id}/.
citationsstring[]Cases this judgment cites (only populated with fetchFullText: true). Up to 25.
cited_bystring[]Later cases citing this judgment (only with fetchFullText: true). Up to 25.
acts_citedstring[]Indian Acts referenced in the body — Indian Penal Code, Negotiable Instruments Act, Constitution Articles, etc. Only with fetchFullText: true.
full_textstringPlain-text judgment body (only with fetchFullText: true).
full_text_htmlstringHTML judgment body, truncated to 100,000 characters.
urlstringCanonical Indian Kanoon URL.
api_urlstringIndian Kanoon API URL.
scraped_atstringISO timestamp of when the record was scraped.

What this actor does NOT cover

  • Live case status / next hearing date — these belong to the eCourts portal (services.ecourts.gov.in), not Indian Kanoon. IK indexes decided judgments and orders, not live docket status.
  • CNR numbers — Case Number Records are an eCourts-internal identifier and aren't reliably exposed in IK metadata. Use doc_id (Indian Kanoon's tid) as the stable PAN-India identifier instead.
  • District court records — coverage in IK is sparse below the High Court level.
  • Pending cases that haven't been decided — by definition not in IK.

If you need any of the above, you'll need a different scraper that talks to eCourts directly. eCourts uses aggressive captcha and is not in scope for this actor.

Pricing model

You pay Apify per record (per the actor's PPE pricing) and you pay Indian Kanoon directly for each search/document call charged against your IK token. The two bills are independent. The actor is a thin, transparent wrapper — the IK costs are a 1:1 pass-through, not marked up.