NHTSA Vehicle Recalls, Complaints & VIN Decoder
Pricing
from $0.20 / 1,000 results
NHTSA Vehicle Recalls, Complaints & VIN Decoder
Search official US vehicle recalls and consumer complaints or decode VIN specifications using NHTSA public APIs.
Pricing
from $0.20 / 1,000 results
Rating
0.0
(0)
Developer
Dmitriy Gyrbu
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Share
NHTSA Recalls US Scraper
This Apify actor provides structured access to the official National Highway Traffic Safety Administration (NHTSA) vehicle recall and complaint datasets. It allows users to search for safety recalls, view consumer complaints, and decode Vehicle Identification Numbers (VINs).
Note: This actor is unofficial and is not affiliated with, endorsed by, or sponsored by NHTSA or any government agency.
Features
- Vehicle Search: Find all recalls or complaints for a specific make, model, and year.
- Direct Lookup: Retrieve specific records using NHTSA campaign numbers, ODI numbers, or VINs.
- Browse Hierarchy: Navigate the dataset via a structured hierarchy: Model Years $\rightarrow$ Makes $\rightarrow$ Models $\rightarrow$ Records.
- VIN Decoding: Decode a VIN to get detailed vehicle specifications and manufacturer information.
Supported Operations
1. Probe (probe)
Verifies the connection to the NHTSA API and returns high-level coverage metadata.
- Input Example:
{"operation": "probe"}
2. List Root Categories (categories)
Returns the starting points for browsing (usually model year lists for recalls and complaints).
- Input Example:
{"operation": "categories"}
3. Browse Category (category)
Navigate through the hierarchy using a category_id.
- Hierarchy Levels:
years:recalloryears:complaint$\rightarrow$ List of years.makes:recall:2012$\rightarrow$ List of makes for 2012 recalls.models:recall:2012:BMW$\rightarrow$ List of models for BMW 2012 recalls.records:recall:2012:BMW:3-SERIES$\rightarrow$ List of actual recall records.
- Input Example:
{"operation": "category","category_id": "years:recall","limit": 5}
4. Search (search)
Search for records using various filters.
By Vehicle:
{"operation": "search","record_type": "recall","make": "Acura","model": "RDX","model_year": 2012,"limit": 5}
By Campaign Number:
{"operation": "search","campaign_number": "12V176000","limit": 5}
By ODI Complaint Number:
{"operation": "search","odi_number": "11184030","limit": 5}
By VIN:
{"operation": "search","vin": "5YJSA1E26HF000337","limit": 5}
5. Item Detail (item)
Retrieve a single detailed record by identifier.
- Input Example:
{"operation": "item","campaign_number": "12V176000"}
Output Schema
The actor outputs normalized records to the Apify dataset.
Common Output Fields
| Field | Description |
|---|---|
id | Unique identifier (Campaign #, ODI #, or VIN) |
record_type | Type of record: recall, complaint, or vin |
campaign_number | NHTSA Campaign Number (for recalls) |
odi_number | ODI Complaint Number (for complaints) |
vin | Vehicle Identification Number |
make | Vehicle manufacturer (normalized to uppercase) |
model | Vehicle model (normalized to uppercase) |
model_year | Vehicle model year |
manufacturer | Official manufacturer name |
summary | Detailed description of the issue |
consequence | Potential risk or result of the issue |
remedy | How the issue is fixed |
received_on | Date the report was received |
source_url | Link to the official NHTSA record |
decoded_fields | Technical specs (for VIN decode only) |
Example Output (Recall)
{"id": "12V176000","record_type": "recall","campaign_number": "12V176000","title": "2012 BMW 3-SERIES recall 12V176000","manufacturer": "BMW OF NORTH AMERICA, LLC","make": "BMW","model": "3-SERIES","model_year": 2012,"component": "SEATS:FRONT ASSEMBLY:HEAD RESTRAINT","summary": "BMW IS RECALLING CERTAIN MODEL YEAR 2012 BMW 3-SERIES...","consequence": "IN THE EVENT OF A VEHICLE CRASH...","remedy": "BMW WILL NOTIFY OWNERS...","received_on": "20/04/2012","source_url": "https://api.nhtsa.gov/recalls/campaignNumber?campaignNumber=12V176000","source": "nhtsa_recalls_us"}
Limits and Capping
- Default Limit: 5 items per page.
- Maximum Limit: 100 items per page.
- Pagination: Use the
pageparameter (1-based) to retrieve subsequent results.
Error Handling
- Invalid Identifiers: If a campaign, ODI, or VIN number is not found, the actor returns an empty dataset and structured
OUTPUT.status=not_found. - Missing Fields: Vehicle searches require
make,model, andmodel_year. Missing fields produceOUTPUT.status=invalid_input. - Unknown Operation: Blocked by the input schema validation.
Run status, totals, and structured errors are stored in the default key-value store under OUTPUT. Probe checks do not create billable result rows.
Use Cases
- Recall Monitoring: Automatically track new recalls for specific vehicle fleets.
- VIN Auditing: Decode VINs to verify vehicle specifications for insurance or sales.
- Safety Research: Analyze consumer complaints (ODI) for specific models.
- Market Analysis: Discover available models and makes via the category hierarchy.
Ready-to-run use cases
Public Saved Tasks provide bounded examples for Tesla Model 3 recall monitoring, Tesla Model 3 complaint research, and VIN decoding. Recall campaigns, consumer complaints, and VIN decode records remain separate record types and should not be interpreted as one-to-one matches without a shared official identifier.