Coverage
How complete this is, honestly.
Two directories, shown as they really are. One routes filings and carries its own trust state: confirmed by an officer, flagged by a citizen, or plainly unverified. The other is a 37-jurisdiction research dataset, gaps included.
28 central authorities
The routing directory, with its trust state shown
28 authorities
| Authority | Status | Action |
|---|---|---|
Railway Board Ministry of Railways | Not yet verified | |
Northeast Frontier Railway Ministry of Railways | Not yet verified | |
Department of Expenditure Ministry of Finance | Not yet verified | |
Department of Pension and Pensioners Welfare Ministry of Personnel, Public Grievances and Pensions | Not yet verified | |
Central Pension Accounting Office Ministry of Finance | Not yet verified | |
Department of Higher Education Ministry of Education | Not yet verified | |
Department of School Education and Literacy Ministry of Education | Not yet verified | |
Department of Personnel and Training Ministry of Personnel, Public Grievances and Pensions | Not yet verified | |
Department of Health and Family Welfare Ministry of Health and Family Welfare | Not yet verified | |
National Highways Authority of India Ministry of Road Transport and Highways | Not yet verified | |
Department of Posts Ministry of Communications | Not yet verified | |
Department of Food and Public Distribution Ministry of Consumer Affairs, Food and Public Distribution | Not yet verified | |
Ministry of Rural Development Ministry of Rural Development | Not yet verified | |
Ministry of Environment, Forest and Climate Change Ministry of Environment, Forest and Climate Change | Not yet verified | |
Ministry of Power Ministry of Power | Not yet verified | |
Ministry of Electronics and Information Technology Ministry of Electronics and Information Technology | Not yet verified | |
Unique Identification Authority of India Ministry of Electronics and Information Technology | Not yet verified | |
Ministry of Labour and Employment Ministry of Labour and Employment | Not yet verified | |
Department of Defence Ministry of Defence | Not yet verified | |
Ministry of Civil Aviation Ministry of Civil Aviation | Not yet verified | |
Ministry of Housing and Urban Affairs Ministry of Housing and Urban Affairs | Not yet verified | |
Central Information Commission Central Information Commission | Not yet verified | |
Cabinet Secretariat Cabinet Secretariat | Not yet verified | |
Ministry of Women and Child Development Ministry of Women and Child Development | Not yet verified | |
Delhi Jal Board Government of NCT of Delhi | Not yet verified | |
Municipal Corporation State Government | Not yet verified | |
State Police Department State Government | Not yet verified | |
State Revenue Department State Government | Not yet verified |
The physical lane
Where a letter can actually be sent
Eight jurisdictions have no online filing channel at all, so an application there only reaches the public information officer on paper. This is the count that decides whether that works: not how many rows the dataset holds, but how many of the authorities a citizen is actually routed to resolve to an address India Post could deliver on. A jurisdiction can hold two thousand rows and still have nowhere to send an application, because none of them is named what the router asks for.
The gap between the second and third numbers is the honest one. Most postable addresses in the directory belong to bodies nothing routes to — a named hospital, an airport health office — so they are correct and unreachable at the same time. Everything not counted here is refused by name in the filing form, with the reason stated, rather than guessed at: a letter to an unusable address costs money, arrives nowhere, and starts no statutory clock.
1 Central + 28 States + 8 Union Territories
The 37-jurisdiction research dataset
Sourced to an official rule, gazette or portal, or marked NOT_FOUND. Never guessed. Two sources disagreeing is kept as Conflict, not resolved by a guess.
| Jurisdiction | Fee | Appeal (1st / 2nd) | Online filing | Authority directory | Postable | Last verified | Reload |
|---|---|---|---|---|---|---|---|
| Government of India (Central)Central | ₹10 | 30 / 90 days | rtionline.gov.in | Directory extracted | 24 / 24 | 4 Sept 2026 | |
| Andhra PradeshState | ₹10 | 30 / 90 days | No online portal found | No directory found | 16 / 16 | 4 Sept 2026 | |
| Arunachal PradeshState | Not confirmed | 30 / 90 days | rti.arunachal.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| AssamState | ₹10 | 30 / 90 days | rtionline.assam.gov.in | No directory found | 16 / 16 | 4 Sept 2026 | |
| BiharState | ₹10 | 30 / 90 days | jaankari.bihar.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| ChhattisgarhState | Not confirmed | 30 / 90 days | rtionline.cg.gov.in | No directory found | 16 / 16 | 4 Sept 2026 | |
| GoaState | ₹10 | 30 / 90 days | rtionline.goa.gov.in | Found, not parsed yet | 16 / 16 | 4 Sept 2026 | |
| GujaratState | Not confirmed | 30 / 90 days | onlinerti.gujarat.gov.in | No directory found | 16 / 16 | 4 Sept 2026 | |
| HaryanaState | ₹10 | 30 / 90 days | rtiharyana.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| Himachal PradeshState | ₹10 | 30 / 90 days | onlinerti.hp.gov.in | No directory found | 16 / 16 | 4 Sept 2026 | |
| JharkhandState | ₹10 | 30 / 90 days | rti.jharkhand.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| KarnatakaStateConflict | ₹10 | 30 / 90 days | rtionline.karnataka.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| KeralaState | ₹10 | 30 / 90 days | rtiportal.kerala.gov.in | No directory found | 16 / 16 | 4 Sept 2026 | |
| Madhya PradeshState | ₹10 | 30 / 90 days | services.mp.gov.in | No directory found | 16 / 16 | 4 Sept 2026 | |
| MaharashtraState | ₹10 | 30 / 90 days | rtionline.maharashtra.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| ManipurState | Not confirmed | 30 / 90 days | No online portal found | Found, not parsed yet | 16 / 16 | 4 Sept 2026 | |
| MeghalayaState | ₹10 | 30 / 90 days | megrti.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| MizoramState | ₹10 | 30 / 90 days | rti.mizoram.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| NagalandState | ₹10 | 30 / 90 days | No online portal found | No directory found | 16 / 16 | 4 Sept 2026 | |
| OdishaState | ₹10 | 30 / 90 days | rtiodisha.gov.in | Found, not parsed yet | 16 / 16 | 4 Sept 2026 | |
| PunjabState | ₹10 | 30 / 90 days | rti.punjab.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| RajasthanState | Not confirmed | 30 / 90 days | rti.rajasthan.gov.in | Blocked by robots.txt | 16 / 16 | 4 Sept 2026 | |
| SikkimState | ₹10 | 30 / 90 days | No online portal found | No directory found | 16 / 16 | 4 Sept 2026 | |
| Tamil NaduState | ₹10 | 30 / 90 days | rtionline.tn.gov.in | Source unreachable | 16 / 16 | 4 Sept 2026 | |
| TelanganaState | ₹10 | 30 / 90 days | rti.telangana.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| TripuraStateConflict | ₹10 | 30 / 90 days | rtionline.tripura.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| Uttar PradeshState | ₹10 | 30 / 90 days | rtionline.up.gov.in | Found, not parsed yet | 16 / 16 | 4 Sept 2026 | |
| UttarakhandState | ₹10 | 30 / 90 days | rtionline.uk.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| West BengalState | ₹10 | 30 / 90 days | No online portal found | Found, not parsed yet | 16 / 16 | 4 Sept 2026 | |
| Andaman & Nicobar IslandsUT | ₹10 | 30 / 90 days | rtionline.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| ChandigarhUT | ₹10 | 30 / 90 days | rtionline.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| Dadra & Nagar Haveli and Daman & DiuUT | ₹10 | 30 / 90 days | No online portal found | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| Delhi (NCT)UT | ₹10 | 30 / 90 days | rtionline.delhi.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| Jammu & KashmirUTConflict | ₹10 | 30 / 90 days | rtionline.jk.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| LadakhUT | ₹10 | 30 / 90 days | No online portal found | No directory found | 16 / 16 | 4 Sept 2026 | |
| LakshadweepUT | ₹10 | 30 / 90 days | No online portal found | Directory extracted | 16 / 16 | 4 Sept 2026 | |
| PuducherryUT | ₹10 | 30 / 90 days | rtionline.gov.in | Directory extracted | 16 / 16 | 4 Sept 2026 |
Where this comes from, and how often
The pipeline that collects it
A pipeline in scrapers/ collects this from official portals and gazettes, respecting each site’s robots.txt and rate limits (see the steps below). It reruns on its own every month. Reload sooner, for one state or all 37.
Reads candidate URLs from data/seeds/jurisdiction_seeds.json (leads, not values) and loads each one. A jurisdiction is only index_verified once every link it claims actually resolved. Output: data/jurisdiction_index.json, one entry per jurisdiction across all 37, each recording an RTI portal, a rules page and an Information Commission URL, or NOT_FOUND with a reason.
Fees, timelines and appeal procedures usually live in the prose of a gazette notification, not a parseable table, so this step is written by hand from the snapshots Phase 1 saved, never automated. Where scans have no text layer, scrapers/ocr.py reads them (falling back to 300dpi rendering + tesseract), but OCR output is only ever evidence of what a scan appears to say, so every figure it produces is re-checked against the rendered page (scrapers/pdf_to_png.py) before it's entered.
One extractor per jurisdiction, since every state publishes its directory differently. A field only gets a value if the official page actually states it. A listing that names authorities but not PIOs yields pio_name_or_designation: NOT_FOUND, never a guess. Output: data/authorities/*.json, one file per jurisdiction so re-running one never disturbs the others.
Checks every record against the JSON Schemas in schemas/, and writes reports/validation_report.md (completeness matrix, conflicts, staleness) and reports/gaps_for_manual_review.csv. Where two official sources disagree, both values are kept with both URLs and conflict is set true. Nothing here picks a winner.
Flattens every jurisdiction and authority record into the two files scripts/load-directory-data.mjs reads. rti_master.csv / authorities.csv are generated from these JSON files, never edited separately, so the two can't drift apart.