VIN Decoder & Window Sticker API for Developers
The VIN data your app needs, on one key: full NHTSA decode with open recall campaigns, and original factory window stickers — the actual Monroney PDFs, fetched live for 12 brands (Ford, Lincoln, Chevrolet, GMC + 8 more). Start with a 7-day free trial, then flat $49/month for 1,000 calls. No per-VIN pricing, no sales call, key in your inbox in two minutes.
Developer
$49/mo
1,000 calls/month · 7-day free trial
Scale
$250/mo
25,000 calls/month
Production
$499/mo
75,000 calls/month
VIN decode + recalls
Year, make, model, trim, engine, plant, GVWR from NHTSA vPIC — with every open recall campaign in the same response.
Original window stickers
Availability check as JSON, or the factory Monroney PDF itself. 12 brands: Ford, Lincoln, Chevrolet, GMC, Buick, Cadillac, Chrysler, Dodge, Jeep, Ram, Hyundai, Genesis.
Built for production
Keyed auth, per-key metering, stable JSON contracts, and a human at [email protected] when something looks off.
Seven endpoints, one key, zero ceremony
Auth is a single x-api-key header.
| Endpoint | Returns |
|---|---|
| GET /api/dealer/v1/window-sticker?vin=… | Original factory Monroney PDF (or ?format=check for availability JSON) — 12 brands incl. China-built GM VINs |
| GET /api/dealer/v1/decode?vin=… | Full NHTSA decode: year/make/model/trim, engine, plant, GVWR + open recall campaigns |
| GET /api/dealer/v1/specs?make=…&model=…&year=… | Per-configuration engines, transmissions, drivetrains, EPA MPG — every US model year since 1984 |
| GET /api/dealer/v1/recalls?make=… | Current recall campaigns for a brand, newest first, with do-not-drive flags |
| GET /api/dealer/v1/value?make=…&model=… | Used-market median values by model year, from live US listings |
| GET /api/dealer/v1/parse-sticker?vin=… | Sticker fetched AND parsed: base MSRP, destination, total, every option with its price — structured JSON, no PDF handling. POST a sticker PDF to parse your own. Counts as 5 calls; failed parses are free. |
| GET /api/dealer/v1/image?make=…&model=… | Clean studio-style vehicle render (CarWhere-generated imagery — no stock-photo licensing). Optional &year= and &format=redirect for direct <img> use. |
GET /api/dealer/v1/decode
curl -H "x-api-key: YOUR_KEY" \ "https://www.carwhere.com/api/dealer/v1/decode?vin=1GKS2JKL0TR171996"
GET /api/dealer/v1/window-sticker
# availability check (JSON) curl -H "x-api-key: YOUR_KEY" \ "https://www.carwhere.com/api/dealer/v1/window-sticker?vin=1GKS2JKL0TR171996&format=check" # the original factory PDF curl -H "x-api-key: YOUR_KEY" -o sticker.pdf \ "https://www.carwhere.com/api/dealer/v1/window-sticker?vin=1GKS2JKL0TR171996"
GET /api/dealer/v1/parse-sticker — the sticker as data, not a PDF
The only API anywhere that turns a Monroney into structured JSON: original MSRP, destination charge, and every factory option with its price. Option sums are reconciled against the printed options total and graded with a confidence field. Counts as 5 calls; a VIN we can't fetch or a document we can't read is never charged.
# fetch the factory sticker AND parse it — one call, structured JSON back
curl -H "x-api-key: YOUR_KEY" \
"https://www.carwhere.com/api/dealer/v1/parse-sticker?vin=1GTPHGE80TZ138393"
{
"vehicle": "2026 GMC SIERRA 1500 DENALI",
"baseMsrp": 65900,
"destinationCharge": 2595,
"totalMsrp": 72055,
"optionsTotal": 3560,
"options": [
{ "name": "TECHNOLOGY PACKAGE", "price": 1275 },
{ "name": "POWER SUNROOF", "price": 995 },
{ "name": "ENG: DURAMAX 3.0L TURBO-DIESEL", "price": 795 },
{ "name": "STERLING METALLIC", "price": 495 }
],
"exteriorColor": "STERLING METALLIC",
"interiorColor": "JET BLACK",
"engine": "DURAMAX 3.0L TURBO-DIESEL",
"transmission": "10-SPEED AUTO",
"confidence": "high"
}
# or POST a sticker PDF you already have
curl -X POST -H "x-api-key: YOUR_KEY" -H "Content-Type: application/pdf" \
--data-binary @sticker.pdf "https://www.carwhere.com/api/dealer/v1/parse-sticker"Frequently asked questions
What do I get with the API key?
Seven production endpoints on one key: vehicle images (clean CarWhere-generated renders by make/model/year), original window stickers (availability JSON or the factory Monroney PDF), sticker parsing (fetch + parse to structured JSON — MSRP, destination, total, itemized options), full VIN decode with the vehicle's open recalls, per-configuration specs for every US model year since 1984, a current-recall-campaigns feed per brand, and used-market values by model year from live listings. 1,000 calls/month, flat — a request is one call, except parse-sticker, which counts as five; a parse that fails is never charged.
Which brands have window stickers?
Exactly these 12, fetched live from the manufacturer source: Ford, Lincoln, Chevrolet, GMC, Buick, Cadillac, Chrysler, Dodge, Jeep, Ram, Hyundai, Genesis. Toyota, Honda, and most import brands do not publish a public sticker endpoint, so no provider can fetch their original Monroneys — if an API claims otherwise, it is not the factory document. VIN decode and recalls work for every brand.
Are the recalls VIN-specific repair statuses?
They are the open NHTSA recall campaigns applicable to that VIN’s vehicle. Whether an individual car already had the recall work performed is dealer-service-records data that NHTSA does not publish — no API can honestly claim it.
How is this different from the free tools on carwhere.com?
The free tools are for people in a browser and stay free, and light manual/agent lookups on the open endpoint are fine. The API key is for software in production: a guaranteed lane with its own rate limits, stable JSON contracts, usage metering, and support — instead of building on an anonymous endpoint that is rate-limited per IP and tuned for humans.
I’m a dealership — is this my plan?
Dealership rooftops wanting the sticker widget and per-rooftop setup have their own plan at carwhere.com/dealers/window-sticker-widget. This $49 developer plan is for software teams integrating the raw API.
What happens when I hit my monthly limit?
Calls return HTTP 429 until your billing cycle renews. Need more volume? Reply to your key email or write [email protected] — higher-volume plans are available.
How do I rotate or manage my key?
Self-serve at carwhere.com/api-keys — enter the email your key was issued to, click the emailed link, and rotate in one click. The old key stops working immediately and the new one is shown once.
How fast do I get my key?
Instantly: checkout is self-serve through Stripe (7-day free trial on the $49 plan, card up front), and your key is emailed the moment checkout completes. Cancel anytime — during the trial you pay nothing, and the key deactivates when the subscription ends.
Can I show the window-sticker PDFs to my users?
Yes — that is the point. The PDFs are the original factory documents fetched live from the manufacturer source. We ask that CarWhere attribution on the documents stays intact.
Guides with working code
Building an AI agent? The agents hub covers the hosted MCP server, the ChatGPT app, and when to move to this key.
Ship it this afternoon.
Self-serve checkout, key by email, two curl commands and you're live.