VIN decoder API
Pricing
Pay per event
VIN decoder API
Decode and validate VINs at scale. Extract WMI/manufacturer, country/region, model year, plant, and sequence. ISO 3779 check digit with configurable policy (auto/require/ignore). Accepts an array of VINs, outputs a structured dataset with validity views.
5.0 (1)
Pricing
Pay per event
0
2
1
Last modified
6 days ago
VIN Extractor
Decode and validate Vehicle Identification Numbers (VINs) at scale. The Actor accepts an array of VINs and returns structured details such as manufacturer (WMI), model year, plant, country/region, and check‑digit status. When available, it enriches results.
Usage
Provide input in Apify Console (or via API) as JSON:
{"vins": ["1HGCM82633A004352","WBA3A5C50DF123456"]}
Console output example (sectioned format):
Processing 2 VIN(s)...VIN: 1HGCM82633A004352Valid: yesStructure valid: yesIdentity: WMI=1HG VDS=CM8263 VIS=3A004352Origin: USA | Manufacturer=HondaModel: Make=Honda | Model=Accord | Year=2003 | Type=Passenger Car | Body=Sedan | Doors=4Build: Plant=A | Sequence=004352Check digit: expected=3 actual=3 (match; required=yes)
Check digit policy
Control how the check digit affects validity using checkDigitPolicy in INPUT:
{"vins": ["VF1ABCD12C1234567"],"checkDigitPolicy": "auto" // one of: auto | require | ignore}
auto(default): required only for North America (1–5).require: required for all VINs (invalid if mismatch).ignore: never required (validity based on structure only; mismatch still shown).
Output
One dataset item per VIN with these key fields (non‑exhaustive):
vin: Original VIN;wmi,vds,vis.valid: Overall validity per policy;invalid(inverse).validStructure: Length/charset checks;validCheckDigit: Check‑digit match;checkDigitRequired(true/false).checkDigit.expected,checkDigit.actual,checkDigit.match.manufacturer,country,countryCode(2‑char, if resolved),region,origin(country or region).year(model year),plant(11th char),sequence(last 6).- Enrichment (when available):
make,model,vehicleType,bodyClass,doors. extra: the full grouped decode (object of groups and fields).
Example dataset item
{"vin": "5YJSA1E14HF000001","valid": false,"validStructure": true,"checkDigitRequired": true,"wmi": "5YJ","vds": "SA1E14","vis": "HF000001","checkDigit": {"expected": "8","actual": "4","match": false},"validCheckDigit": false,"region": "North America","country": "United States","manufacturer": "TESLA, INC.","year": 2017,"plant": "F","sequence": "000001","origin": "United States","countryCode": "5Y","make": "Tesla","model": "Model S","vehicleType": "Passenger Car","bodyClass": "Hatchback/Liftback/Notchback","doors": "5","extra": {"General": {"Make": "Tesla","Manufacturer Name": "TESLA, INC.","Model": "Model S","Model Year": "2017","Plant City": "FREMONT","Vehicle Type": "Passenger Car","Plant Country": "UNITED STATES (USA)","Plant State": "CALIFORNIA"},"Exterior / Body": {"Body Class": "Hatchback/Liftback/Notchback","Doors": "5"},"Engine": {"Fuel Type - Primary": "Electric","Electrification Level": "BEV (Battery Electric Vehicle)","Other Engine Info": "Single Motor - Standard"}}}
Output views
- Overview: General details and errors.
- Validity: Focus on
validStructure,validCheckDigit,checkDigitRequired. - Invalid VINs: Quick triage of failures and mismatches.
Notes & Limitations
- Check digit per ISO 3779; requirement per region/policy as above.
- Manufacturer resolution via WMI tables, broad but not exhaustive.
- Country resolution prefers 2‑char prefix when available, then first‑char region fallback.
Categories
- Data extraction
- Validation
- Automotive / VIN decoding
- Data quality & compliance
On this page
Share Actor:
