,

How to Find Any Indian Act or Section: Search, Markdown and the API

Find any Indian Act or section on IndiaCode: search BNS 103 or Order 7 Rule 11, read it as HTML, Markdown or Akoma Ntoso XML, or fetch it through the eCourtsIndia API.

·

·

eCourtsIndia Knowledgebase

IndiaCode Search JSON API developer guide cover: query Central Acts and State legislation from your own code, with structured results and a stable URL for every section

Type bns 103 and you land on murder. Type cheque bounce and you land on NI Act 138. Type Order 7 Rule 11 and you land on the CPC rule, not a 171-section dump. That is IndiaCode: search that understands how lawyers type, then the same provision as HTML, Markdown or Akoma Ntoso XML. Free to read, no login. For software, the same corpus is now part of the eCourtsIndia API. This guide covers the search box, the formats, the API’s Acts and Sections endpoints, and the machine-facing layer (llms.txt and the MCP server) that lets an AI agent fetch the section you meant instead of a 300-page dump.

IndiaCode by eCourtsIndia (indiacode.ecourtsindia.com) is an independent, non-government service and is not the Government of India’s India Code portal (indiacode.nic.in); the Gazette of India remains the authoritative text. Endpoints and counts checked in October 2026.

Prefer a minute of video? Watch how to find any Indian Act or section.

Key takeaways

  • Human search: indiacode.ecourtsindia.com. Citations parse, and an alias table is why cheque bounce opens NI Act 138.
  • Machine access: IndiaCode no longer runs an API of its own. The corpus is served by the Acts and Sections endpoints of the eCourtsIndia API: a Bearer token, ₹0.15 per section (₹0.05 on a subscription) and ₹200 of free credits on signup. Agents start with llms.txt.
  • Three free formats for every provision on IndiaCode: HTML, Markdown and Akoma Ntoso XML. JSON comes from the API.
  • AI agents: llms.txt, and the statute tools on the eCourtsIndia MCP server (sign in once with an eCourtsIndia account to connect). They are charged like the API.
  • No bulk files at present: for many sections, use the batch endpoint, up to 50 sections per call.
  • One API for the law and the cases: Acts and Sections sit beside case search, CNRs and cause lists in the eCourtsIndia API.

IPC to BNS concordance: IPC 302 to BNS 103, 304A to 106, 307 to 109, 323 to 115, 354 to 74, 379 to 303, 420 to 318(4), 498A to 85

Search that understands how lawyers type

The box takes a section number or a phrase people actually say. bns 103 is murder. ni act 138 is cheque bounce. article 21 is the Constitution. Order 7 Rule 11 is the CPC First Schedule rule on its own page. A colloquial name such as cheque bounce, grounds for divorce or rights of an arrested person still lands on the provision, because search reads the statute by meaning and checks an alias table of the names people give provisions, not only the headings.

Results are addressable: indiacode.ecourtsindia.com/search?q=your+phrase. Bookmark them like any other page.

It also answers plain questions. Ask is murder bailable and the offence classification comes back first, straight from the First Schedule to the BNSS: non-bailable, cognizable, triable by the Court of Session, for both the ways Section 103 is classified. Ask what is the BNS section for IPC 302 and the transition answers it before the text results start. The recent searches page shows what readers actually typed, the provision that answered each query, an approximate city and the time. It records no IP address or account.

How to find a section

  1. Citation: bns 103, ni act 138, article 21, Order 7 Rule 11. Example: Punishment for murder.
  2. Old number still in your head: open /ipc-to-bns/302/. Hubs: IPC to BNS, CrPC to BNSS.
  3. Phrase: cheque bounce opens NI Act 138.
  4. Browse: 900+ Central Acts, 9,000+ State Acts, by subject, 43,000+ subordinate instruments.
  5. Judgments: on the section page, such as NI Act 138, each linked to the order on eCourtsIndia. Going the other way, from a case to its law, the API’s GET /api/partner/case/{cnr}/provisions returns the statutes a case record cites, with their text.
KindPatternExample
Section/{act}/section/{number}//bns/section/103/
Article/{act}/article/{number}//constitution-of-india/article/21/
CPC Rule/cpc/order/{ord}/rule/{n}//cpc/order/vii/rule/11/
Markdown / XML.md · .xml.md · .xml
API (JSON)/api/partner/acts/{key}/sections/{number}/api/partner/acts/2023/45/sections/103 on webapi.ecourtsindia.com, with a Bearer token
URL patterns on IndiaCode by eCourtsIndia, and the matching eCourtsIndia API call. Section numbers are strings: 124A and 43-B are valid.

Four formats, one provision

A lawyer pastes a section into a pleading. A language model needs the same section as a clean chunk. IndiaCode gives both one address and serves it three ways, and the eCourtsIndia API serves the same provision as JSON.

FormatURLBuilt for
HTML/bns/section/103/Reading, sharing, search
Markdown/bns/section/103.mdNotes, RAG, a model context window
Akoma Ntoso XML/bns/section/103.xmlLegalDocML and structured pipelines
JSONGET /api/partner/acts/2023/45/sections/103 (eCourtsIndia API)Apps: text, offence classification, equivalents
The HTML page declares Markdown and XML as rel="alternate". JSON comes from the eCourtsIndia API, not a scrape of the page.

CPC rules are first-class pages, all 58 Orders and 728 Rules of the First Schedule: Order 7 Rule 11 is one page, and search answers to either spelling of the citation. Constitution: Article 21.

The API: Acts and Sections in the eCourtsIndia API

IndiaCode no longer runs an API of its own. The old keyless endpoints under indiacode.ecourtsindia.com/api/v1/ now answer 410 Gone, and the same corpus is served as the Acts and Sections endpoints of the eCourtsIndia API, next to case search, CNRs and cause lists. Every call carries a Bearer token (Authorization: Bearer eci_live_...) and draws on prepaid credits: ₹0.15 per section on Pay As You Go, ₹0.05 on a subscription, and new accounts get ₹200 of free credits. A not-found answer costs nothing. GET /api/partner/acts/status is free and reports the corpus version and counts: 60,281 instruments and 420,399 provisions on 14 October 2026.

Acts are addressed by a citation key: 1860/45 is the IPC, 2023/45 the BNS, 1950/constitution the Constitution. Four calls cover most integrations:

# One section: text, offence classification and equivalents (IPC 420)
curl -H "Authorization: Bearer eci_live_..." "https://webapi.ecourtsindia.com/api/partner/acts/1860/45/sections/420"

# Old-code and new-code equivalents of BNS 318
curl -H "Authorization: Bearer eci_live_..." "https://webapi.ecourtsindia.com/api/partner/acts/2023/45/sections/318/equivalents"

# Turn an Act's name into its key
curl -H "Authorization: Bearer eci_live_..." "https://webapi.ecourtsindia.com/api/partner/acts/resolve?name=Indian%20Penal%20Code"

# Full-text search over sections
curl -H "Authorization: Bearer eci_live_..." "https://webapi.ecourtsindia.com/api/partner/acts/search?q=cheating"

The section and equivalents calls cost ₹0.15 each (₹0.05 on a subscription). resolve is charged only when it returns a single match, and search is charged per call. The section endpoint also takes an optional unit for provisions that are not sections, such as articles, rules, CPC Orders and schedules. Every endpoint, parameter and response field is in the API documentation, and our complete guide to the eCourtsIndia API walks through it in the section “Acts and Sections: the law behind a case”.

IPC 302 maps to BNS 103 on the comparison page, and the equivalents endpoint gives the same pairing in code, for IPC and BNS, CrPC and BNSS, and the Evidence Act and BSA. The NI Act 138 page carries the reported Supreme Court line, including MSR Leathers, Dashrath Rupsingh Rathod and Rangappa, each linked to the order on eCourtsIndia. For the offence side, the section endpoint returns the BNSS First Schedule classification next to the text: cognizable, bailable and triable-by.

Browse Central Acts, State Acts and subjects on IndiaCode

For AI agents: llms.txt and the MCP server

An answer engine that cites Indian law needs three things: the right provision, in a form it can chunk, with a signal of how far to trust it. IndiaCode publishes all three on purpose.

llms.txt: the file an agent should read first

indiacode.ecourtsindia.com/llms.txt is the machine front door. It states the URL conventions, how to search, how to pull a section as Markdown or Akoma Ntoso XML, and that programmatic access now runs through the eCourtsIndia API. It also says plainly what the corpus will not do: it never paraphrases a provision and presents the paraphrase as the law. The same idea for court data is behind our llms.txt for Indian courts.

  • Section numbers are strings. 124A, 43-B and 105A are valid.
  • Search parses citations. bns 103 and Order 7 Rule 11 land on the provision.
  • 5,000+ reported judgments, attached only where the order’s own record says it applied that provision.
  • IPC to BNS, CrPC to BNSS, Evidence Act to BSA and Income-tax 1961 to 2025 converters show both texts. Where a mapping is measured by text similarity it carries a score; official tables are labelled official.

Provenance a pipeline can read

Not every text on the site has the same pedigree, and the pages say so.

  • OCR text is flagged. 7,700+ State Acts exist on India Code only as scanned gazettes. IndiaCode reads them by machine, labels each one as machine-read, so a reader or a pipeline can weight or exclude them, and links the Government scan for anything that will be filed. See OCR is not the law.
  • Parent Acts are recorded or inferred. Every subordinate instrument says whether its parent Act was recorded by the source or inferred from its enacting formula.
  • The inference is measured. llms.txt reports that it agrees with the source 93.9 per cent of the time where both exist.
  • Listed-only Acts carry no text. 586 State Acts that India Code lists without any sections are indexed by title and linked to the scan.

For what is official and what is citable, read IndiaCode vs India Code.

The eCourtsIndia MCP server

eCourtsIndia MCP at https://mcp.ecourtsindia.com/mcp (setup) carries eight statute tools: search_statute, resolve_act, lookup_provision, lookup_provisions, lookup_case_provisions, map_provision, get_cpc_rule and lookup_offence. They read this corpus through the same Acts and Sections endpoints, so they are charged like the API: ₹0.15 per section (₹0.05 on a subscription), with not-found answers free. The server asks you to sign in with an eCourtsIndia account when you connect, and the case tools sit on the same server and the same credit balance. Live tool list: mcp.ecourtsindia.com/tools/. Background: MCP 101 for legal teams.

A worked example. Connect the server to Claude (our step-by-step MCP guide walks through it) and ask: “Is cheating under the BNS bailable?” The assistant uses search_statute to find the provision, BNS 318, then calls lookup_offence for section 318. The answer comes back from the First Schedule, not from memory: 318(2) simple cheating is non-cognizable and bailable, triable by any Magistrate, while 318(4), the old IPC 420, is cognizable, non-bailable and triable by a Magistrate of the first class. That split is exactly the kind of detail a model trained on IPC-era text gets wrong.

ProvisionOffenceCognizableBailableTriable by
318(2)CheatingNoYesAny Magistrate
318(3)Cheating a person whose interest the offender was bound to protectNoYesAny Magistrate
318(4) (old IPC 420)Cheating and dishonestly inducing delivery of propertyYesNoMagistrate of the first class
BNS 318 in the First Schedule to the BNSS, as shown on the BNS 318 page (checked October 2026). Sub-section mapping: IPC to BNS high-use sections.

A second example, on the mapping tool. Ask “What is IPC 302 under the new code?” and the assistant calls map_provision for IPC 302. The reply is BNS 103, with a label for how close the match is, the other candidates it considered, and a note that the match is measured by text similarity and is not official. Ask the same for IPC 420 and the match comes back weaker, because the old section was split across the sub-sections of BNS 318 and you must pick the sub-section yourself. An assistant that reports how strong a match is, instead of a bare “302 is now 103”, is one a junior can rely on.

Need many sections? Use the batch endpoint, do not crawl

There are no bulk downloads at present; the CSV files that used to sit under /data/ have been withdrawn, and so have the old list endpoints. To work through many provisions, send them to POST /api/partner/acts/sections/batch on the eCourtsIndia API: up to 50 sections per call, charged per distinct section returned (₹0.15, or ₹0.05 on a subscription). An agent gets the same through the MCP tool lookup_provisions. For a large one-off pull, write to hi@ecourtsindia.com. The words of the Act are Parliament’s, and the Gazette of India remains the authoritative text if anything disagrees.

One API for the law and the cases

IndiaCode says what the law is. The case corpus says what courts did with it: 30 crore+ case records across the Supreme Court, all 25 High Courts, district and taluka courts in all 36 states and union territories, and 18 tribunal and commission types. Both now sit in one place, the eCourtsIndia API: one Bearer token, one prepaid credit balance, and ₹200 of free credits on signup at the time of writing, all documented in our complete guide to the eCourtsIndia API. A typical legal app uses both halves: the Acts and Sections endpoints for the provision, case search for the orders that applied it, and GET /api/partner/case/{cnr}/provisions to join them.

Read next

Sources

Frequently Asked Questions

How do I find a section of an Indian Act online?

Go to indiacode.ecourtsindia.com and type the citation (for example bns 103), a phrase (cheque bounce) or a question (is murder bailable). Or open the address directly: /bns/section/103/ for a section, /constitution-of-india/article/21/ for an article, /cpc/order/vii/rule/11/ for a CPC Rule. Every result is a permanent URL, free and without login.

Is there an API for Indian bare acts?

Yes, as part of the eCourtsIndia API. IndiaCode no longer runs a separate keyless API; its corpus is served by the Acts and Sections endpoints at webapi.ecourtsindia.com, with a Bearer token on every call. For example, GET /api/partner/acts/2023/45/sections/103 returns BNS 103 with its text, offence classification and equivalents. A section costs ₹0.15 (₹0.05 on a subscription), not-found answers are free, and new accounts get ₹200 of credits.

How do I get a section of an Act as Markdown or Akoma Ntoso XML?

Add .md or .xml to the section address: /bns/section/103.md returns Markdown and /bns/section/103.xml returns Akoma Ntoso 3.0 XML (OASIS LegalDocML). The HTML page declares both as alternate versions, so crawlers can find them. Markdown suits notes and AI context windows; XML suits structured legal-document pipelines.

How do I map IPC 302 to the BNS through an API?

Call GET /api/partner/acts/1860/45/sections/302/equivalents on the eCourtsIndia API with your Bearer token. It returns the BNS counterpart, BNS 103, and the call works in reverse from /acts/2023/45/sections/103/equivalents. Without code, open /ipc-to-bns/302/ on IndiaCode. The criminal-code mappings on IndiaCode are text comparisons, not official tables, so confirm the provision before citing it in a pleading.

How can an AI assistant look up Indian statutes reliably?

Point it at structured sources instead of its memory. An agent should read indiacode.ecourtsindia.com/llms.txt, then fetch the section as Markdown or call the eCourtsIndia API. Assistants that support MCP can connect the eCourtsIndia MCP server (one sign-in) and use its statute tools, such as search_statute, lookup_provision, map_provision and lookup_offence, which are charged like the API.

Is cheating under BNS 318 bailable?

It depends on the sub-section. Under the BNSS First Schedule, simple cheating under BNS 318(2) is non-cognizable, bailable and triable by any Magistrate. Cheating and dishonestly inducing delivery of property under BNS 318(4), the old IPC 420, is cognizable, non-bailable and triable by a Magistrate of the first class. Check the specific sub-section charged.

Can I download Indian Acts in bulk?

Not as files: the earlier CSV downloads on IndiaCode have been withdrawn. For many sections at once, use the eCourtsIndia API batch endpoint, POST /api/partner/acts/sections/batch, which takes up to 50 sections per call and charges per distinct section returned. Single sections can still be read free on IndiaCode as HTML, Markdown or XML.

Is there a separate IndiaCode API?

No, not any more. IndiaCode no longer has its own API: the statute corpus is part of the eCourtsIndia API at webapi.ecourtsindia.com, alongside court cases, CNRs, orders and cause lists. One Bearer token and one prepaid credit balance cover both, and new accounts get ₹200 free. Most legal apps use both halves: the Acts and Sections endpoints for the provision, case search for what courts did.

eCourtsIndia is a private legal-technology platform. It is not affiliated with, associated with, or endorsed by the Government of India, the Supreme Court of India or its e-Committee, or any court. Official case information is published on ecourts.gov.in. Always verify details against official court records or certified copies. This article is general information, not legal advice. Spotted an error? Write to support@ecourtsindia.com.

Search 30 crore+ Indian court case records, free

One search across the Supreme Court, all 25 High Courts, district courts and 18 tribunal and commission types. Hearing alerts, AI summaries and an API for developers.