Platform

One API for every vehicle fact

A REST API, SDKs for TypeScript and Python, and an MCP server for agents. A single API key calls all of them.

GET/v2/vin/LRW3E7FA8RC099361200
{
  "vin": "LRW3E7FA8RC099361",
  "valid": true,
  "year": 2024, "make": "Tesla",
  "model": "Model 3",
  "refs": {
    "make": "make:tesla",
    "model": "model:tesla/model-3",
    "modelYear": "model-year:tesla/model-3/2024",
    "fuelType": "fuel-type:electric"
  },
  "nano": "nano:LRW3E7FARC",
  "squish": "squish:LRW3E7FAR"
}

Keys

One credential for every product

The same API key calls Identity, Specifications, Recalls, Market and Feeds.

Scoped to your organization

Issue, rotate and revoke keys in the portal.

One rate card

Every product draws from the same credit balance.

WHERE THE CALL STARTSCARDOG, IN ONE REQUESTWHERE THE ANSWER LANDSYour codeTypeScript · PythonAI agenttool callDecodeJoinspecs · recalls · marketSDK responseMCP tool resultWebhookvehicle.updated
decode.tsTypeScript
1import { CardogClient } from "@cardog/api";2 3const cardog = new CardogClient({ apiKey });4const car = await cardog.v2.vin5  .getByVin("LRW3E7FA8RC099361");6 7car.year            // 20248car.model           // "Model 3"9car.refs.modelYear  // "model-year:tesla/model-3/2024"
$ pip install cardog

SDKs

SDKs for TypeScript and Python

Install the SDK and read back a vehicle your compiler already knows the shape of.

Nothing is guessed

A field with no source comes back empty, and the type says so.

MCP

An MCP server for agents

Point an agent at the MCP server and it gets the same actions as the API.

An action keeps its name

identify_vehicle, check_recalls and market_quote carry the API's names.

Cardog agent

3 sources

Is 2HGFC2F54KH012345 safe to drive?

Checked the record

  • Decode VIN

    2019 Honda Civic LX · valid

  • Check recalls

    Transport Canada and NHTSA

  • Compose answer

Ten campaigns cover this model year. One replaces a front seat sensor at no charge.

How it works

Three calls, one vehicle

Decode the VIN, then read the build sheet and the price for the same vehicle.

01 · decode200
GET /v2/vin/LRW3E7FA8RC099361

{
  "year": 2024, "make": "Tesla",
  "model": "Model 3",
  "refs": { "modelYear":
    "model-year:tesla/model-3/2024" }
}
02 · specs200
GET /v2/specs/model-year%3Atesla%2Fmodel-3%2F2024

{
  "grain": "model-year",
  "spec": { "driveType":
    "rwd-rear-wheel-drive",
    "towingCapacity": null }
}
03 · price200
GET /v2/quotes/model-year%3Atesla%2Fmodel-3%2F2024

{
  "liveCount": 148,
  "priceMedian": 39300,
  "priceP25": 37600
}
one vehicle through all three callsmodel-year:tesla/model-3/2024

Related products

Products on the same key

Identity

Any VIN, decoded with a source on every field. This is the call the rest of the platform is built on.

Make your first call

Create an organization, issue a key and decode a VIN.

  • Free plan, no expiry
  • No credit card required
  • Your first decode in one call