Discover/CarInfo API
live

CarInfo APIcarinfo.app

Look up any Indian vehicle registration number via the CarInfo API. Get owner name, make/model, RTO details, insurance expiry, and PUC status in structured JSON.

Endpoint health
verified 4h ago
get_vehicle_details
1/1 passing latest checkself-healing
Endpoints
1
Updated
4h ago

What is the CarInfo API?

The CarInfo API exposes 1 endpoint — get_vehicle_details — that returns 9 structured fields for any Indian vehicle registration (RC) number, including the masked owner name, make/model, registering RTO office details, insurance expiry date, and pollution-certificate status. It covers both two-wheelers and four-wheelers registered across Indian states and union territories.

This call costs2 credits / call— charged only on success
Try it
Indian vehicle registration number, e.g. MH01CL3390. Case-insensitive; spaces and hyphens are removed before lookup (DL 3C AB 1234 is accepted).
api.parse.bot/scraper/ee7a3855-c293-4068-a7e7-30b2d941aa9d/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/ee7a3855-c293-4068-a7e7-30b2d941aa9d/get_vehicle_details?vehicle_number=MH01CL3390' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace carinfo-app-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: CarInfo SDK — look up an Indian vehicle registration."""
from parse_apis.carinfo_app_api import CarInfo, VehicleNotFound

client = CarInfo()

# Look up a vehicle by its registration number.
try:
    vehicle = client.vehicles.get(vehicle_number="MH01CL3390")
except VehicleNotFound:
    print("No record found for that registration number.")
    raise SystemExit

print(f"{vehicle.vehicle_number}  {vehicle.make_model}")
print(f"Two-wheeler: {vehicle.is_two_wheeler}")

# RTO office details (may be absent for some registrations).
if vehicle.rto is not None:
    print(f"RTO: {vehicle.rto.code} — {vehicle.rto.state}")
    print(f"Office: {vehicle.rto.registered_rto}")

# Insurance status.
if vehicle.insurance is not None:
    print(f"Insurance expires: {vehicle.insurance.expiry_date}  Expired: {vehicle.insurance.expired}")

# Pollution certificate flag.
print(f"PUC expired: {vehicle.pollution_certificate_expired}")

# Informational notices the site shows for this vehicle.
for notice in vehicle.notices:
    print(f"  ⚠ {notice.title} — {notice.subtitle}")

print("exercised: vehicles.get")
All endpoints · 1 totalmissing one? ·

Returns the public registration summary for one Indian vehicle registration number: masked owner name, make/model, two-wheeler flag, the registering RTO (code, office address, state, phone, website), insurance expiry date with expired/expiring flags, pollution-certificate expiry flag, and the informational notices the site shows for the vehicle. One vehicle per call, two upstream round trips. Full ownership details, registration/fitness dates and chassis/engine data are shown by the site only to logged-in users and are not returned. A number the site has no record for returns a stale_input (input_not_found) error; a value that is not shaped like an Indian registration number returns stale_input (input_format_invalid) without contacting the site. Date values are returned as the site formats them, e.g. 26-Jul-2025.

Input
ParamTypeDescription
vehicle_numberrequiredstringIndian vehicle registration number, e.g. MH01CL3390. Case-insensitive; spaces and hyphens are removed before lookup (DL 3C AB 1234 is accepted).
Response
{
  "type": "object",
  "fields": {
    "rto": "object: code (e.g. MH-01), registered_rto (office address), state, phone, website; each null when absent",
    "notices": "array of informational banners the site shows: title, subtitle (HTML stripped), action_types (list of site action codes such as CHALLAN_DETAILS)",
    "insurance": "object: expiry_date (site date string like 26-Jul-2025, null if unknown), expired (boolean), expiring_soon (boolean)",
    "make_model": "vehicle make and model string; null when absent",
    "is_two_wheeler": "boolean, true for two-wheelers",
    "vehicle_number": "normalized registration number (uppercase, no separators)",
    "owner_name_masked": "owner name as the site shows it publicly, partially masked with asterisks; null when absent",
    "vehicle_image_url": "URL of the site's vehicle image; null when absent",
    "pollution_certificate_expired": "boolean, true when the site flags the PUC as expired"
  },
  "sample": {
    "data": {
      "rto": {
        "code": "MH-01",
        "phone": "+91-22-23532337 / 23534600",
        "state": "Maharashtra",
        "website": "https://transport.maharashtra.gov.in/1035/Home",
        "registered_rto": "Old Bodyguard Lane, Tulsiwadi, Tardeo, Mumbai - 400034"
      },
      "notices": [
        {
          "title": "Insurance Expired! 🚨",
          "subtitle": "Renew instantly to avoid heavy traffic fines",
          "action_types": [
            "BIKE_INSURANCE"
          ]
        },
        {
          "title": "View Pending Challans on this Vehicle",
          "subtitle": "Check & pay challans instantly",
          "action_types": [
            "CHALLAN_DETAILS"
          ]
        }
      ],
      "insurance": {
        "expired": true,
        "expiry_date": "26-Jul-2025",
        "expiring_soon": false
      },
      "make_model": "CB UNICORN (BSIII)",
      "is_two_wheeler": true,
      "vehicle_number": "MH01CL3390",
      "owner_name_masked": "S***R S******O J****V",
      "vehicle_image_url": "https://files.carinfo.app/September22nd2025/tmposxhplhs.jpg",
      "pollution_certificate_expired": true
    },
    "status": "success"
  }
}

About the CarInfo API

What the API Returns

The get_vehicle_details endpoint accepts a single vehicle_number parameter — an Indian RC number such as MH01CL3390. Case, spaces, and hyphens are normalized automatically. The response includes the vehicle's make and model string, a boolean is_two_wheeler flag, the owner_name_masked field (partially asterisked as the source shows it publicly), and a vehicle_image_url when the source has an associated image.

RTO and Compliance Fields

The rto object returns the RTO code (e.g. MH-01), the full office address, the state name, a phone number, and the RTO website URL — each field is null when the source does not have it on record. The insurance object carries an expiry_date in the site's date-string format (e.g. 26-Jul-2025), plus expired and expiring_soon booleans so you can flag vehicles needing attention without parsing dates yourself. A top-level pollution_certificate_expired boolean signals PUC status directly.

Notices Array

The response also includes a notices array of informational banners CarInfo surfaces for the vehicle — each notice has a title, a plain-text subtitle (HTML stripped), and an action_types list. These banners may carry reminders, alerts, or service prompts the source associates with the registration.

Coverage and Scope

Coverage maps to vehicles registered under India's Vahan system and surfaced on carinfo.app. Data freshness depends on what the source has on record for each RC number. Not every field is populated for every vehicle; fields return null when absent rather than erroring.

Reliability & maintenanceVerified

The CarInfo API is a managed, monitored endpoint for carinfo.app — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when carinfo.app changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official carinfo.app API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
4h ago
Latest check
1/1 endpoint passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Fleet management dashboards that need to flag vehicles with expired or soon-to-expire insurance using the insurance.expired and expiring_soon booleans
  • Used-car marketplace verification tools that display masked owner name, make/model, and RTO state to buyers
  • Logistics apps that validate whether a delivery vehicle's pollution certificate is current via pollution_certificate_expired
  • Insurance renewal reminder services that batch-check RC numbers and alert customers when expiry_date is approaching
  • RTO office lookup tools that resolve a registration number to a physical office address, phone number, and website
  • Two-wheeler vs. four-wheeler segmentation pipelines using the is_two_wheeler boolean for category-specific processing
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does CarInfo have an official developer API?+
CarInfo does not publish a documented public developer API. The CarInfo API on Parse gives you structured access to the same registration data shown on carinfo.app.
What does `get_vehicle_details` return for the owner's name?+
It returns owner_name_masked — the name partially obscured with asterisks, exactly as the source displays it publicly. Full unmasked owner names are not available through this endpoint; the source does not expose them without user authentication.
Does the API return vehicle challan (traffic fine) or fitness certificate data?+
Not currently. The endpoint covers registration details, RTO office information, insurance status, and PUC status. Challan history and fitness certificate data are not included. You can fork this API on Parse and revise it to add an endpoint targeting that data.
What happens when a field like RTO phone or insurance expiry date is unavailable?+
Fields that the source does not have on record return null rather than an error. For example, rto.phone, rto.website, and insurance.expiry_date are each nullable. The expired and expiring_soon booleans in the insurance object will be false when no expiry date is known, so your code should check expiry_date for null before relying on those flags.
Does this API cover vehicles registered in all Indian states?+
Coverage spans vehicles whose records appear on carinfo.app, which draws from the Vahan national registry. However, some older registrations or vehicles in certain states may have incomplete or missing records, returning null for several fields. The API does not currently support bulk or batch lookups — each call resolves a single vehicle_number. You can fork it on Parse and revise to add batch-processing logic.
Page content last updated . Spec covers 1 endpoint from carinfo.app.
Related APIs in AutomotiveSee all →
biluppgifter.se API
Look up Swedish vehicle details, valuations, ownership information, and complete history using registration plates or partial matches. Search by vehicle make, access fleet statistics, and get current market valuations all from the official Swedish vehicle registry.
coches.net API
coches.net API
carjam.co.nz API
Look up detailed New Zealand vehicle information by license plate, VIN, or chassis number to instantly access registration status, WOF/COF compliance, service history, odometer readings, and damage records. Verify if a vehicle is stolen and get comprehensive specs to make informed decisions before purchasing or for fleet management.
sadriaticaauto.it API
sadriaticaauto.it API
cardekho.com API
Search and browse used and new car listings with detailed vehicle information, pricing, and specifications from CarDekho.com. View immersive 360-degree vehicle imagery to inspect cars from every angle before making a purchase decision.
carvana.com API
Search Carvana's used car inventory by make, model, price, fuel type, and more. Retrieve paginated listings with pricing, specs, and delivery details, or fetch comprehensive information for a specific vehicle by ID.
cars24.com API
Search and browse used car listings across Indian cities with complete details including prices, specifications, and features. Find the perfect car by filtering options and comparing vehicle information all in one place.
cheki.co.ke API
Search and browse vehicles on Cheki Kenya's automotive marketplace, view detailed information about specific cars, and discover dealer profiles and inventory. Filter your vehicle search by available metadata to find exactly what you're looking for.