India API

Docs › Places and transport

RTO codes API

Vehicle registration code to transport office.

Which Regional Transport Office a number plate belongs to: TN-28 is Namakkal (North). Accepts a code or a whole registration number.

Base URL https://api.dharun.devNo API key600 requests a minuteThis page as Markdown

Office for an RTO code

GET/v1/rto/{code}

ParameterDescription
codepath, requiredRTO code (TN-28, TN28) or a registration number (TN28AB1234).

curl

curl "https://api.dharun.dev/v1/rto/TN-28"

JavaScript

const response = await fetch("https://api.dharun.dev/v1/rto/TN-28");
const body = await response.json();
if (!response.ok) throw new Error(body.error.message);
console.log(body.data);

Python

import requests

response = requests.get("https://api.dharun.dev/v1/rto/TN-28", timeout=10)
body = response.json()
if not response.ok:
    raise RuntimeError(body["error"]["message"])
print(body["data"])

Response, with lists and long text shortened

{
  "data": {
    "code": "TN-28",
    "office": "Namakkal (North)",
    "jurisdiction": "Namakkal",
    "stateCode": "TN",
    "state": "Tamil Nadu",
    "notes": null
  },
  "meta": {
    "source": {
      "name": "List of Regional Transport Office districts in India",
      "url": "https://en.wikipedia.org/w/index.php?title=List_of_Regional_Transport_Office_districts_in_India&oldid=1377425763",
      "licence": "CC BY-SA 4.0",
      "version": "revision 1377425763",
      "retrieved": "2026-10-13",
      "attribution": "RTO codes adapted from the Wikipedia article \"List of Regional Transport Office districts in India\", licensed CC BY-SA 4.0. This dataset is shared under the sam…"
    }
  }
}

List or search RTO codes

GET/v1/rto

ParameterDescription
statequeryState code or name, for example TN or Tamil Nadu.
qqueryText to find in the office name or jurisdiction.
limitqueryResults per page, 1 to 100.
offsetqueryResults to skip.

curl

curl "https://api.dharun.dev/v1/rto?state=TN&q=chennai"

JavaScript

const response = await fetch("https://api.dharun.dev/v1/rto?state=TN&q=chennai");
const body = await response.json();
if (!response.ok) throw new Error(body.error.message);
console.log(body.data);

Python

import requests

response = requests.get("https://api.dharun.dev/v1/rto?state=TN&q=chennai", timeout=10)
body = response.json()
if not response.ok:
    raise RuntimeError(body["error"]["message"])
print(body["data"])

Response, with lists and long text shortened

{
  "data": [
    {
      "code": "TN-01",
      "office": "Chennai (Central): Ayanavaram",
      "jurisdiction": "Chennai",
      "stateCode": "TN",
      "state": "Tamil Nadu",
      "notes": "SETC & MTC buses are registered here under TN 01 N XXXX."
    },
    {
      "code": "TN-02",
      "office": "Chennai (North West): Anna Nagar",
      "jurisdiction": "Chennai",
      "stateCode": "TN",
      "state": "Tamil Nadu",
      "notes": null
    },
    {
      "code": "TN-03",
      "office": "Chennai (North East): Tondiarpet",
      "jurisdiction": "Chennai",
      "stateCode": "TN",
      "state": "Tamil Nadu",
      "notes": null
    }
  ],
  "meta": {
    "total": 11,
    "limit": 50,
    "offset": 0,
    "source": {
      "name": "List of Regional Transport Office districts in India",
      "url": "https://en.wikipedia.org/w/index.php?title=List_of_Regional_Transport_Office_districts_in_India&oldid=1377425763",
      "licence": "CC BY-SA 4.0",
      "version": "revision 1377425763",
      "retrieved": "2026-10-13",
      "attribution": "RTO codes adapted from the Wikipedia article \"List of Regional Transport Office districts in India\", licensed CC BY-SA 4.0. This dataset is shared under the sam…"
    }
  }
}

Data source

List of Regional Transport Office districts in India, revision 1377425763. Retrieved 2026-10-13. Licence: CC BY-SA 4.0. RTO codes adapted from the Wikipedia article "List of Regional Transport Office districts in India", licensed CC BY-SA 4.0. This dataset is shared under the same licence.

Using an AI assistant? Connect the MCP server and it can call this API by itself.