Tire API v1.2.0 Changelog: VIN Lookup

Tire API v1.2.0 ships one headline feature: a VIN lookup endpoint that takes a 17-character VIN and returns the decoded vehicle plus its factory (OE) tire sizes in a single call. This changelog covers the new endpoint, the quota model behind it, and a few smaller platform updates that shipped alongside it.

Why VIN Lookup Matters

Most tire search flows ask a customer for year, make, model, and trim — four or five dropdowns before you can return a single result. But most vehicle owners don't know their trim off the top of their head. They do know their VIN — it's on their registration and on the door jamb. VIN lookup collapses that entire flow into one field: send the VIN, get back the decoded vehicle and its OE tire sizes.

This is built for service-desk and checkout flows at tire shops, automotive e-commerce, and fleet platforms, where asking for a VIN is faster and more accurate than asking a customer to self-identify their trim level.

New Endpoint: GET /by_vin/{vin}

Overview

Decode a 17-character VIN and get the vehicle's factory tire sizes in a single request.

Endpoint Details

  • HTTP Method: GET
  • Base URL: https://tire.vdim.app/api/v1
  • Full Path: /api/v1/by_vin/{vin}
  • Authentication: x-api-key header
  • Availability: Included on all plans — Free, Starter, Pro, and Business

How It Works

The VIN is decoded against the NHTSA vPIC dataset, then matched to the fitment database by year, make, and model. The response includes the decoded vehicle fields plus an indexed tireSizes list.

Input Rules

  • VIN must be exactly 17 characters, passed in the path
  • Letters I, O, and Q are invalid per the VIN spec
  • Syntactically invalid VINs return a 400 before any quota is consumed
  • The check digit (position 9) is not verified in this version

Request Example

curl -H "x-api-key: your-api-key-here" \\
  "https://tire.vdim.app/api/v1/by_vin/1HGCM82633A004352"

Errors

  • 400 — invalid VIN format
  • 404 (code DECODE_EMPTY) — VIN is syntactically valid but could not be decoded
  • 429 — monthly VIN quota exhausted

Example 429 response:

{
  "error": "VIN quota exceeded",
  "code": "VIN_QUOTA_EXCEEDED"
}

VIN Quota: Metered Separately From Your Daily Limit

VIN lookups draw from their own monthly quota, on top of your existing daily request limit. A single /by_vin call counts as one daily request unit and one VIN quota unit.

PlanMonthly VIN QuotaDaily Request Limit
Free10300/day (max 100/hr)
Starter5005,000/day
Pro5,00050,000/day
Business20,00080,000/day

Free plan pricing is $0/mo, no credit card required. Starter is $40/mo or $420/yr, Pro is $70/mo or $700/yr, and Business is $150/mo or $1,500/yr (all CAD).

Welcome Bonus for New Free Signups

New Free plan signups get a one-time bonus of 50 VIN lookups on top of their regular monthly quota, so you can properly trial the endpoint before deciding if you need to upgrade.

Reading the Quota Headers

Every /by_vin response carries quota telemetry in its headers:

  • X-VIN-Quota-Limit — your monthly VIN quota
  • X-VIN-Quota-Remaining — lookups left this cycle
  • X-VIN-Quota-Reset — when the quota resets
  • X-VIN-Bonus-Remaining — remaining welcome-bonus lookups (Free plan only)

VIN quotas reset on the first of each month, America/Toronto time. You can also check vinQuota (monthly limit, used, remaining, bonus remaining, and reset time) directly from GET /api/v1/usage.

Rate Limit Resets Are Now Anchored to Toronto Time

Daily request limits reset at midnight America/Toronto, not UTC. The Free plan's hourly cap resets at the top of each Toronto hour. X-RateLimit-Reset and every documented reset time now reflect this — if your integration was assuming UTC resets, double-check your logic against Toronto time instead.

Trying It Out

The interactive demo doesn't currently have a VIN search UI, so the easiest ways to try /by_vin are Swagger UI or a direct curl request:

Docs & Site Updates

  • OpenAPI spec bumped to 1.2.0 with full /by_vin documentation, importable as openapi.yaml / openapi.json into Postman or Insomnia
  • The VIN endpoint is now documented in the API guide, FAQ, and Help Center, including quota tables
  • Pricing pages are unified — Monthly and Yearly tabs both show Free / Starter / Pro / Business
  • General site cleanup: unified navigation across all pages, dead links removed, and the sitemap now covers FAQ, Help Center, and Contact

No Breaking Changes

v1.2.0 is fully backward compatible. Existing integrations continue to work without modification — VIN lookup is additive.

Support & Resources

Need help? Contact support at support@vdimtech.com or visit the API portal at https://tire.vdim.app for interactive documentation.

Conclusion

VIN lookup turns a multi-field vehicle search into a single request, backed by its own quota so it doesn't eat into your regular daily limit. Every plan gets access, and new Free signups get 50 bonus lookups to try it out. Give it a spin and let us know how it fits into your workflow.