Lightning-fast vehicle data at your fingertips. Simple integration, powerful features, and documentation that doesn't make you cry.
Try our API right here, no signup required
{
"success": true,
"data": {
"vin": "1HGCM82633A004352",
"year": 2003,
"make": "HONDA",
"model": "Accord",
"manufacturer": "AMERICAN HONDA MOTOR CO., INC.",
"plant_country": "UNITED STATES (USA)",
"vehicle_type": "PASSENGER CAR",
"body_class": "Coupe",
"engine_cylinders": 6,
"fuel_type": "Gasoline",
"transmission": "Unknown",
"drive_type": "Unknown"
}
}
import requests
response = requests.get(
'https://api.yugovin.com/api/v1/decode/1HGCM82633A004352',
headers={'X-API-Key': 'your_api_key'}
)
vehicle = response.json()['data']
print(f"{vehicle['year']} {vehicle['make']} {vehicle['model']}")
# Output: 2003 HONDA Accord
curl -X GET "https://api.yugovin.com/api/v1/decode/1HGCM82633A004352" \
-H "X-API-Key: your_api_key" \
-H "Content-Type: application/json"
A plain REST API with copy-paste examples for your favorite languages
# Plain REST API: use the requests library
import requests
headers = {'X-API-Key': 'your_api_key'}
base_url = 'https://api.yugovin.com/api/v1'
# Single VIN decode
response = requests.get(f'{base_url}/decode/1HGBH41JXMN109186', headers=headers)
result = response.json()['data']
print(f"Vehicle: {result['year']} {result['make']} {result['model']}")
# Batch decode
vins = ['1HGBH41JXMN109186', '5UXWX7C5XBA123456']
response = requests.post(f'{base_url}/batch-decode', json={'vins': vins}, headers=headers)
for vehicle in response.json()['results']:
print(f"{vehicle['vin']}: {vehicle['make']} {vehicle['model']}")
// Plain REST API: use the built-in fetch
const API_KEY = 'your_api_key';
const BASE_URL = 'https://api.yugovin.com/api/v1';
const headers = { 'X-API-Key': API_KEY };
// Single VIN decode
const res = await fetch(`${BASE_URL}/decode/1HGBH41JXMN109186`, { headers });
const { data: result } = await res.json();
console.log(`Vehicle: ${result.year} ${result.make} ${result.model}`);
// Batch decode
const vins = ['1HGBH41JXMN109186', '5UXWX7C5XBA123456'];
const batch = await fetch(`${BASE_URL}/batch-decode`, {
method: 'POST', headers: { ...headers, 'Content-Type': 'application/json' },
body: JSON.stringify({ vins })
});
(await batch.json()).results.forEach(v => console.log(`${v.vin}: ${v.make} ${v.model}`));
// Plain REST API: no extra packages needed
$apiKey = 'your_api_key';
$baseUrl = 'https://api.yugovin.com/api/v1';
// Single VIN decode
$opts = ['http' => ['header' => "X-API-Key: $apiKey"]];
$ctx = stream_context_create($opts);
$json = file_get_contents("$baseUrl/decode/1HGBH41JXMN109186", false, $ctx);
$result = json_decode($json)->data;
echo "Vehicle: {$result->year} {$result->make} {$result->model}";
# Plain REST API: use the standard net/http library
require 'net/http'
require 'json'
api_key = 'your_api_key'
base_url = 'https://api.yugovin.com/api/v1'
# Single VIN decode
uri = URI("#{base_url}/decode/1HGBH41JXMN109186")
req = Net::HTTP::Get.new(uri, 'X-API-Key' => api_key)
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
result = JSON.parse(res.body)['data']
puts "Vehicle: #{result['year']} #{result['make']} #{result['model']}"
Powerful features that make integration a breeze
Cached decoding reduces repeat lookups. Monitor actual response times in your dashboard.
Manage and rotate API keys, monitor account usage, and sign in through Yugo Auth.
Decode up to 10 VINs per request on Basic or 100 on Pro and above for inventory imports.
Manufacturer-reported specifications from NHTSA vPIC. Coverage and populated fields vary by vehicle and model year.
Track request volume and errors, download reports, and investigate retained decode history on Pro and above.
Clear guides, interactive examples, and API references that actually make sense.
7-day free trial with 50 VIN decodes. Cancel anytime. Review paid plan changes in Billing for supported options and their effective dates.
Perfect for hobbyists and small projects
For small dealers and growing apps
For growing dealerships
For fleet & insurance companies
Annual billing temporarily unavailable.
For platforms & high-volume
Annual plans cost $150 / $490 / $1,990 per year for Starter / Basic / Pro. Scale annual billing is temporarily unavailable pending price configuration. Monthly allowances reset each billing month.
VIN specifications originate from public NHTSA data. Paid plans cover API delivery, request rate limits, batching and retained usage records. Recall and complaint results match year/make/model; they do not establish a VIN’s unrepaired recall status. Title, accident, ownership and market value reports are not included.
Sustained throughput depends on your workload. Contact us to validate your volume.
Available plans auto-renew at the selected monthly or annual cadence. View billing terms