Getting started
There is no key and no account. Nothing to sign up for, nothing to
rotate, nothing to keep out of your client-side code. Every response,
including every error, carries Access-Control-Allow-Origin: *,
so a browser can call this directly.
curl 'https://indiacode.ecourtsindia.com/api/v1/bns/section/103'
Every list is the same shape
Paging code written against one endpoint works on all of them.
total is the size of the whole result set, never the size of the
page; count is what came back this time; next is a URL
you can follow, or null when there is nothing after this page.
{
"total": 7865,
"count": 2,
"limit": 2,
"offset": 0,
"next": "https://indiacode.ecourtsindia.com/api/v1/instruments?kind=rule&limit=2&offset=2",
"instruments": [ … ]
}
No parameter is ever ignored
A misspelled filter is a 400, not a silently different answer.
?kinde=rule returns unknown_param with the list of
parameters that endpoint does accept, because a page answering a question you
did not ask is worse than an error.
Core concepts
Act ids
A slug, stable and readable: bns, cpc,
ni-act, constitution-of-india. It is the same
string in the URL of the page and in the API.
Provision numbers are strings
124A, 43-B and 6A are provision
numbers. Never coerce them to integers: you will lose the letter and land
on a different provision.
Sections and articles
Every Act has sections. The Constitution has articles, and answers at
/api/v1/constitution-of-india/article/21. The
unit field on an Act tells you which.
Published against listed
/acts is what we publish with its text. /listed-acts
is the 8,351 State Acts India Code holds only as a scanned document. They
are different collections because they are different things.
Endpoints
Acts and provisions
The statute book itself: 2,246 Acts and 77,072 provisions, each with its own permanent address.
List Acts
Every Act we publish with its text, newest filter first. Central and State together; narrow with the filters.
Parameters
| Parameter | In | Required | Description |
q |
query |
No |
Substring of the short title. |
ministry |
query |
No |
Substring of the administering Ministry. |
year |
query |
No |
The year the Act was numbered in, which is not always the year in its title: The Uttar Pradesh Rural Abadi Records Act, 2025 is Act 4 of 2026 and answers to year=2026. |
jurisdiction |
query |
No |
central, state, or a State slug from /meta. |
subject |
query |
No |
One of the eighteen subject shelves. See /subjects. |
in_force |
query |
No |
1 or 0. true/false and yes/no are accepted too. |
limit |
query |
No |
Rows per page, up to 1000. limit=0 returns the count alone. |
offset |
query |
No |
Rows to skip. Prefer following next. |
Example request
curl 'https://indiacode.ecourtsindia.com/api/v1/acts?jurisdiction=central&subject=taxation&limit=2'
Open this call in the browser
Example response 200 OK
{
"total": 50,
"count": 2,
"limit": 2,
"offset": 0,
"next": "https://indiacode.ecourtsindia.com/api/v1/acts?jurisdiction=central&subject=taxation&limit=2&offset=2",
"acts": [
{
"id": "income-tax-act",
"short_title": "The Income-tax Act, 1961",
"act_number": "43",
"act_year": 1961,
"ministry": "Ministry of Finance",
"jurisdiction": "CENTRAL",
"unit": "section",
"section_count": 800,
"in_force": false,
"url": "https://indiacode.ecourtsindia.com/income-tax-act/"
}
]
}
One Act
The Act, every provision number and heading, its Schedules and its amending Acts. The Code of Civil Procedure also reports its First Schedule here, because its procedure is not in its sections.
Parameters
| Parameter | In | Required | Description |
act |
path |
Yes |
Act id, e.g. bns, cpc, ni-act. |
Example response 200 OK
{
"act": { "id": "cpc", "short_title": "The Code of Civil Procedure, 1908", ... },
"count": 171,
"sections": [
{ "number": "9", "heading": "Courts to try all civil suits unless barred",
"words": 96, "indexable": true,
"url": "https://indiacode.ecourtsindia.com/cpc/section/9/" }
],
"schedules": [ { "ord": 1, "title": "THE FIRST SCHEDULE" } ],
"amendments": [ { "title": "The Commercial Courts Act, 2015", "year": 2015, "act_number": "4" } ],
"first_schedule": {
"orders": 58,
"rules": 728,
"api": "https://indiacode.ecourtsindia.com/api/v1/cpc/schedule"
}
}
GET
/api/v1/{act}/section/{number}
One provision
The text, and everything the corpus knows about it: how the BNSS First Schedule classifies it, the subordinate legislation made under it, the judgments that construe it, and its counterpart across a statutory transition. Articles of the Constitution answer at /article/{number}.
Parameters
| Parameter | In | Required | Description |
act |
path |
Yes |
Act id. |
number |
path |
Yes |
Provision number. A string, always: 124A and 43-B are valid and are never integers. |
Example response 200 OK
{
"act": { "id": "bns", "short_title": "The Bharatiya Nyaya Sanhita, 2023", ... },
"section": { "number": "103", "heading": "Punishment for murder",
"text": "(1) Whoever commits murder shall be punished with death…",
"html": "<p>…</p>", "words": 76 },
"classification": [
{ "offence": "Murder", "punishment": "Death, or imprisonment for life…",
"cognizable": "Cognizable", "bailable": "Non-bailable",
"triable_by": "Court of Session" }
],
"instruments": [],
"judgments": [ { "title": "…", "court_level": "SC", "date": "…", "url": "…" } ],
"corresponds_to": [ { "act": "ipc", "number": "302", "relation": "near-identical" } ],
"url": "https://indiacode.ecourtsindia.com/bns/section/103/"
}
GET
/api/v1/acts/{act}/xrefs
Cross-references
Every provision this Act points at, or the provisions that point back at it. 45,967 edges across the corpus, generated from the text and emitted only where the destination exists.
Parameters
| Parameter | In | Required | Description |
act |
path |
Yes |
Act id. |
direction |
query |
No |
out (default) or in. |
limit |
query |
No |
Rows per page. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 35,
"count": 2,
"xrefs": [
{ "from": { "act": "ni-act", "act_title": "The Negotiable Instruments Act, 1881",
"section": "1", "url": "https://indiacode.ecourtsindia.com/ni-act/section/1/" },
"to": { "act": "ni-act", "act_title": "The Negotiable Instruments Act, 1881",
"section": "21", "heading": "''At sight''",
"url": "https://indiacode.ecourtsindia.com/ni-act/section/21/" } }
]
}
Search
Full-text over Acts, provisions, the Rules of the CPC First Schedule and the State Acts we hold only as a scan. Citations are parsed rather than matched: bns 103 and Order 7 Rule 11 answer directly.
Parameters
| Parameter | In | Required | Description |
q |
query |
Yes |
The query. A citation, a phrase, or a colloquial name such as cheque bounce. |
kind |
query |
No |
Restrict to one kind of hit: act, section, rule (a Rule of the CPC First Schedule), or listed (a State Act we hold only as a scan). Filtered after ranking, so the order is the order the site shows. |
limit |
query |
No |
Rows per page. 40 by default, 100 at most. |
offset |
query |
No |
Rows to skip. The ranking window is finite; next stops when it does. |
Example response 200 OK
{
"total": 30189,
"count": 1,
"results": [
{ "kind": "rule",
"ref": "cpc/order/vii/rule/11",
"title": "Order VII Rule 11. Rejection of plaint",
"snippet": "The plaint shall be rejected in the following cases:…",
"url": "https://indiacode.ecourtsindia.com/cpc/order/vii/rule/11/" }
]
}
The CPC First Schedule
Order 7 Rule 11, Order 39 Rule 1, Order 41 Rule 27: the procedure a civil suit is actually run on. 728 Rules over 58 Orders. India Code publishes the two as flat lists with no tie between them; the tie here is recovered from the Government’s consolidated text of the Code.
The Orders
All 58 Orders. complete is false where an Order is one Rule short, which is three of them: say so rather than let a caller assume otherwise.
Example response 200 OK
{
"act": "cpc",
"orders": 58,
"rules": 728,
"results": [
{ "order": "VII", "order_arabic": 7, "title": "Plaint",
"rules": 21, "complete": true,
"url": "https://indiacode.ecourtsindia.com/cpc/order/vii/",
"api": "https://indiacode.ecourtsindia.com/api/v1/cpc/order/vii" }
]
}
GET
/api/v1/cpc/order/{order}
One Order
The Order and the Rules under it.
Parameters
| Parameter | In | Required | Description |
order |
path |
Yes |
The numeral or the arabic form: vii and 7 both work. Order XI is in the Schedule twice; the Commercial Division’s is xi-2. |
Example response 200 OK
{
"order": "VII", "order_arabic": 7, "title": "Plaint",
"complete": true, "count": 21,
"rules": [
{ "rule": "11", "heading": "Rejection of plaint", "words": 256,
"api": "https://indiacode.ecourtsindia.com/api/v1/cpc/order/vii/rule/11" }
]
}
GET
/api/v1/cpc/order/{order}/rule/{rule}
One Rule
The Rule and its text, with both forms of its citation.
Parameters
| Parameter | In | Required | Description |
order |
path |
Yes |
Numeral or arabic. |
rule |
path |
Yes |
Rule number. A string: lettered rules are common, as in Order VI rule 14A. Not every Order has every letter, and three Orders are marked complete: false because one Rule of each could not be placed. |
Example response 200 OK
{
"act": "cpc",
"order": "VII", "order_arabic": 7, "order_title": "Plaint",
"rule": "11", "heading": "Rejection of plaint",
"text": "The plaint shall be rejected in the following cases:…",
"words": 256,
"citations": ["Order VII Rule 11 CPC", "Order 7 Rule 11 CPC"],
"url": "https://indiacode.ecourtsindia.com/cpc/order/vii/rule/11/"
}
Subordinate legislation
35,622 Rules, notifications, circulars, regulations and orders, 31,563 of them carrying their English text. 15,297 have no parent Act: the source recorded none and their enacting formula named none.
List instruments
Filter by kind, by the Act they are made under, or by the exact provision they answer to.
Parameters
| Parameter | In | Required | Description |
kind |
query |
No |
rule, notification, circular, regulation, order, statute, form, appendix, annexure, regulation-240. |
act |
query |
No |
Act id. |
section |
query |
No |
With act: everything made under that one provision. |
jurisdiction |
query |
No |
Central or a State. |
year |
query |
No |
Year of the instrument. |
q |
query |
No |
Substring of the title. |
has_text |
query |
No |
1 for the ones whose document yielded English. |
limit |
query |
No |
Rows per page. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 1050,
"count": 1,
"instruments": [
{ "key": "0a1b2c3d", "kind": "notification",
"title": "…", "year": 2026, "jurisdiction": "CENTRAL",
"act": "environment-act", "act_basis": "recorded",
"has_text": true,
"url": "https://indiacode.ecourtsindia.com/rules/0a1b2c3d/" }
]
}
GET
/api/v1/instruments/{key}
One instrument
Its citation, the English text where the document carried any, a link to the source PDF on India Code, and the provisions it answers to.
Parameters
| Parameter | In | Required | Description |
key |
path |
Yes |
Eight hex characters. Stable: it is India Code’s own uuid prefix, not a row number. |
Example response 200 OK
{
"instrument": { "key": "2ef737e1", "kind": "rule", "year": 2003,
"title": "(Certifying Authorities) Amendment Rules, 2003…",
"act": "it-act" },
"source_document": { "url": "https://indiacode.gov.in/…", "bytes": 10275 },
"text": { "chars": 1769, "truncated": false, "body": "…" },
"provisions": [ { "act": "it-act", "number": "87", "relation": "made_under",
"url": "https://indiacode.ecourtsindia.com/it-act/section/87/" } ],
"licence": "…"
}
Case law and transitions
Judgments
Reported judgments and the provisions they decide, with the note saying what the judgment did with that provision.
Parameters
| Parameter | In | Required | Description |
act |
query |
No |
Act id. With section, the case law on one provision. |
section |
query |
No |
Provision number. |
cnr |
query |
No |
Every provision one judgment is authority on. |
court |
query |
No |
The levels the corpus actually holds: SC, HC, DC. Derived from the data, so /meta is authoritative and anything else is a 400 rather than an empty page. |
precedential |
query |
No |
Restrict to judgments of a given authority, as the corpus records it — binding is the Supreme Court and a High Court within its own jurisdiction. Accepted by the API and until now undocumented. |
limit |
query |
No |
Rows per page. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 10,
"count": 1,
"judgments": [
{ "cnr": "SCIN010125642009", "order": "order-19.pdf",
"title": "Prakash Nayi @ Sen vs The State of Goa…",
"court": "SC", "court_name": "Supreme Court of India",
"date": "2023-01-12", "citation": null,
"precedential_value": "Binding (Supreme Court)",
"court_marking": "reportable",
"ratio_decidendi": "When an accused raises a plea of insanity…",
"applied_to_this_section": "…", "basis": "cited",
"decided_under": null,
"url": "…" }
]
}
Statutory transitions
IPC to BNS, CrPC to BNSS, Evidence Act to BSA, Income-tax 1961 to 2025. The income-tax correspondence is the Department’s own and carries no score; the other three are measured by text similarity and say so.
Parameters
| Parameter | In | Required | Description |
pair |
query |
No |
e.g. ipc-bns. See /meta for the four. |
from |
query |
No |
Act id of the older enactment. |
section |
query |
No |
Provision number in the older enactment. |
limit |
query |
No |
Rows per page. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 1,
"count": 1,
"mappings": [
{ "from_act": "ipc", "from_section": "302", "from_heading": "Punishment for murder",
"to_act": "bns", "to_section": "103", "to_heading": "Punishment for murder",
"relation": "near-identical", "score": 0.9,
"alternatives": [
{ "section": "105", "heading": "Punishment for culpable homicide not amounting to murder",
"score": 0.8063 }
],
"from_url": "https://indiacode.ecourtsindia.com/ipc/section/302/",
"to_url": "https://indiacode.ecourtsindia.com/bns/section/103/" }
]
}
State law we hold no text for
India Code lists 8,351 State Acts as a record and a scanned document and publishes no sections for them. They are here so you can find out the Act exists and reach the Government’s copy of it. No text is served: the extracted text of those scans is searchable on this site, and is not reliable enough to set out as the law.
Listed State Acts
Title, State, year, Act number and a link to the document. Not part of /acts, which is what we publish.
Parameters
| Parameter | In | Required | Description |
q |
query |
No |
Substring of the title. |
jurisdiction |
query |
No |
State or Union Territory name. |
year |
query |
No |
Year of the Act. |
central |
query |
No |
1 for the Central Acts India Code files inside a State community, 0 for the State’s own. Those carry central_act and an act_url to the Act itself, which we publish in full. |
limit |
query |
No |
Rows per page, up to 500. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 75,
"count": 1,
"acts": [
{ "key": "1c970aa4",
"title": "The Assam Acquisition of Land for Flood Control …",
"jurisdiction": "Assam", "year": 1959, "act_number": "…",
"central_act": null, "act_url": null,
"document": "https://www.indiacode.gov.in/handle/123456789/494440" }
],
"note": "India Code holds these as a record and a scanned document…"
}
Reference
Corpus and enums
Counts for everything, every valid enum value, and the page ceiling for each endpoint. Call it first and you never have to guess a filter value.
Example response 200 OK
{
"corpus": {
"acts": 2246, "sections": 77072,
"instruments": 35622, "instruments_with_text": 31563,
"cpc_schedule_orders": 58, "cpc_schedule_rules": 728,
"state_acts_listed_only": 8351,
"acts_not_operating": 18,
"judgments": 2667, "offences": 464, "cross_references": 45967
},
"corpus_date": "2026-08-28",
"enums": { "instrument_kind": {…}, "jurisdiction": [...], "court": [...] },
"limits": { … }
}
Offence classification
The BNSS First Schedule: punishment, cognizable, bailable and triable-by for every offence under the Bharatiya Nyaya Sanhita. A section can be classified more than once, and both rows are returned.
Parameters
| Parameter | In | Required | Description |
section |
query |
No |
BNS section number. |
cognizable |
query |
No |
Substring, e.g. non. |
bailable |
query |
No |
Substring. |
limit |
query |
No |
Rows per page. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 2,
"count": 2,
"offences": [
{ "section": "103", "provision": "103(1)", "offence": "Murder",
"punishment": "Death, or imprisonment for life…",
"cognizable": "Cognizable", "bailable": "Non-bailable",
"triable_by": "Court of Session" }
]
}
Subjects
The eighteen shelves and how many Acts are on each. Assigned by a rules-based classifier over the short title, with the Ministry as a weaker second signal. Not an official taxonomy, and the page says so.
Example response 200 OK
{
"count": 18,
"results": [
{ "subject": "taxation", "name": "Tax", "acts": 161, "sections": 7805,
"url": "https://indiacode.ecourtsindia.com/subject/taxation/",
"api": "https://indiacode.ecourtsindia.com/api/v1/acts?subject=taxation" }
]
}
GET
/api/v1/jurisdictions
Jurisdictions
Every State and Union Territory, with what India Code holds against what we publish. The two numbers are the point: the difference is the source’s, not ours.
Example response 200 OK
{
"count": 37,
"results": [
{ "name": "Assam", "slug": "assam",
"acts_in_source": 1128, "acts_published": 0, "acts_listed_only": 1128,
"sections": 0, "instruments": 48,
"url": "https://indiacode.ecourtsindia.com/states/assam/" }
]
}
Repealed Acts
The 4,513 repealed Acts India Code lists, with what repealed them. Metadata only, as the source has it.
Parameters
| Parameter | In | Required | Description |
q |
query |
No |
Substring of the title. |
year |
query |
No |
Year of the Act. |
limit |
query |
No |
Rows per page. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 24,
"count": 1,
"repeals": [
{ "title": "…", "cite": "44 of 1971", "repealed_by": "Act 38 of 1978",
"year": 1971, "document": "https://www.indiacode.gov.in/handle/…" }
]
}
Ordinances
With the Act each concerns. act and relation are our reading of the ordinance’s own title: India Code records no parent for any of them.
Parameters
| Parameter | In | Required | Description |
q |
query |
No |
Substring of the title. |
year |
query |
No |
Year of the ordinance. |
act |
query |
No |
Act id it concerns. |
limit |
query |
No |
Rows per page. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 658,
"count": 1,
"ordinances": [
{ "title": "…", "year": 2026, "act": "…", "relation": "amends",
"document": "https://www.indiacode.gov.in/handle/…" }
]
}
Acts not operating
18 Acts on the statute book and doing nothing: Parliament passed some and never brought them into force, and the rest are spent. Neither group is repealed, so neither is in /repeals.
Parameters
| Parameter | In | Required | Description |
status |
query |
No |
not-enforced or spent. |
limit |
query |
No |
Rows per page. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 4,
"count": 4,
"acts": [
{ "title": "The Whistle Blowers Protection Act, 2011",
"status": "not-enforced", "year": 2011,
"document": "https://www.indiacode.gov.in/handle/…" }
]
}
Income-tax forms
The prescribed forms, with a link to the PDF we host rather than one that expires.
Parameters
| Parameter | In | Required | Description |
rules |
query |
No |
1962 or 2026. |
q |
query |
No |
Substring of the number or description. |
limit |
query |
No |
Rows per page. |
offset |
query |
No |
Rows to skip. |
Example response 200 OK
{
"total": 1,
"count": 1,
"forms": [
{ "no": "3CA", "rules": "1962", "description": "…",
"pdf": "https://indiacode.ecourtsindia.com/income-tax-forms/3ca.pdf", "bytes": 9288 }
]
}
Error handling
Errors are JSON, carry the same CORS headers as a success, and name the
parameter at fault.
{
"error": "unknown_param",
"message": "This endpoint does not accept \"kinde\". A parameter that was silently ignored would return a page answering a different question.",
"param": "kinde",
"allowed": ["act", "has_text", "jurisdiction", "kind", "limit", "offset", "q", "section", "year"]
}
| Status | error | When |
| 400 | unknown_param | A parameter that endpoint does not accept. |
| 400 | invalid_value | A parameter of the right name and the wrong shape. |
| 400 | unknown_jurisdiction | No such State or Union Territory. |
| 400 | unknown_subject | No such subject shelf. |
| 404 | not_found | No such Act, provision, instrument or Rule. |
| 404 | no_such_endpoint | No endpoint at that path. The body names the index. |
Rate limits
There is no quota. No key means no per-key limit, and none is
applied by address either. What there is instead is a page ceiling per
endpoint, given in /api/v1/meta under limits, and
an ask: if you want the whole corpus, take
the CSV exports rather than paging the API a million
times. They are the same data and it is faster for both of us.
Responses carry an ETag. Send it back as
If-None-Match and you get a 304 with no body.
Code examples
cURL
curl 'https://indiacode.ecourtsindia.com/api/v1/cpc/order/vii/rule/11'
JavaScript
const r = await fetch('https://indiacode.ecourtsindia.com/api/v1/search?q=cheque+bounce&limit=5');
const { total, results } = await r.json();
console.log(total, results[0].title);
Python
import urllib.request, json
def get(path):
with urllib.request.urlopen('https://indiacode.ecourtsindia.com/api/v1' + path) as r:
return json.load(r)
# Every page of a collection, following next.
url = '/instruments?act=environment-act&limit=100'
while url:
page = get(url.replace('https://indiacode.ecourtsindia.com/api/v1', ''))
for row in page['instruments']:
print(row['title'])
url = page['next']
Workflows
- What does this provision say, and what have the courts made of it?
One call:
/api/v1/bns/section/103 returns the text, the offence
classification, the judgments and the IPC provision it replaced.
- Everything made under one section.
/api/v1/instruments?act=environment-act§ion=3 returns the
1,050 instruments made under it. Not every provision has any: 15,297 of the
35,622 instruments carry no parent Act at all, because the source recorded
none and their own enacting formula did not name one.
- The old provision for a new one, or the reverse.
/api/v1/mappings?from=ipc§ion=302. Check
relation: official is the Department’s own
correspondence and carries no score; near-identical,
close and weak are measured here and each
carries one.
- Order 7 Rule 11.
/api/v1/cpc/order/7/rule/11, or search for the citation and get
it as the first hit.
- Does this State Act exist?
/api/v1/listed-acts?jurisdiction=Assam&q=land, then follow
document to the Government’s copy.
Notes on the data
- Everything comes out of our own database. The published site makes
no external call at request time. The corpus is refreshed by re-running the
harvest under review, and
corpus_date in /meta says
when that last happened.
- Where a thing is inferred, it says so. An instrument’s parent Act is
recorded where India Code recorded it and inferred
where we read it out of the enacting formula. A transition mapping is
official or measured. An Order of the CPC First
Schedule reports complete.
- Provisions with no text are still served. 3,601 provisions are
published for their heading alone, because India Code holds no text for them.
They carry
indexable: false and an empty text rather
than being hidden.
- Nothing here is a substitute for the Gazette. Statutory text is
reproduced from the enactments as published by the Government of India. For
the State Acts under
/listed-acts the Government’s PDF is the
only authority, and we link to it rather than paraphrase it.
What changed
1.5.0: ?kind= on /search, taking a comma
list; a kind that belongs to subordinate legislation is a 400 pointing at
/instruments rather than an empty page. Articles of the
Constitution answer at /{act}/article/{number} and carry the
provision under article as well as section;
asking for the wrong one of the two redirects rather than serving the same
body at two addresses. /acts/{act} reports
not_held where it holds no Schedules, no amendments or no
text at all. Over-limit is answered with clamped instead of
silently, a wrong method with 405 and an Allow header, and an
unknown path under /api/v1 with JSON rather than the HTML
404 page. Rules of the CPC First Schedule gained .md and
.xml.
1.4.0: The rest of the corpus. The CPC First Schedule is addressable
at /cpc/schedule, /cpc/order/{order} and
/cpc/order/{order}/rule/{rule} — 786 provisions that were on
the site and not in the API, with /acts/cpc reporting 171
sections and no hint the Orders existed. New: /listed-acts,
/repeals, /ordinances, /unenforced,
/subjects, /jurisdictions, and
?subject= on /acts. /acts/{act} now
returns its Schedules, its amending Acts, and a pointer to the First
Schedule where there is one.
1.3.0: Judgments and the offence classification. Search parses a
citation instead of matching it, so bns 103 and
Order 7 Rule 11 answer directly rather than ranking.
1.2.0: ?text= searches the body of an instrument, not
just its title. Instruments carry act_basis, saying whether the
parent Act is the one India Code recorded or one we read off the enacting
formula. Search answers the name a provision is known by, so "cheque bounce"
finds section 138, and ranks a provision by how much of the corpus cites it.
1.1.0: Every list paginates and returns total. No
parameter is silently ignored any more: ?page= is a 400, not a
first page. in_force is a boolean everywhere. CORS on errors, on
OPTIONS and on the Markdown export. ETags, and a 304 on
If-None-Match.
Source and method. Compiled from the enactments of Parliament as published by
the Government of India, and republished together with commentary and other original matter under
section 52(1)(q)(ii) of the Copyright Act, 1957. Structured, cross-referenced and maintained by
eCourtsIndia. This page is not a substitute for legal advice.