biegalski-llc / nhtsa-vehicle-api
A package to consume the National Highway Traffic Safety Administration (NHSTA) Vehicles API for decoding VINs and pulling lists of Vehicle Year, Make and Model.
Installs: 24 450
Dependents: 0
Suggesters: 0
Security: 0
Stars: 13
Watchers: 2
Forks: 6
Open Issues: 0
Requires
- php: ~7.1|^8.0
- ext-json: *
- guzzlehttp/guzzle: *
- nesbot/carbon: *
Requires (Dev)
- phpunit/phpunit: >=8.0
- squizlabs/php_codesniffer: ^3.0
README
A package to consume the National Highway Traffic Safety Administration (NHSTA) Vehicles API for decoding VINs and pulling lists of Vehicle Year, Make and Model.
Install
Via Composer
$ composer require biegalski-llc/nhtsa-vehicle-api
Usage
All methods return an alphabetized array of data.
Initialize
use BiegalskiLLC\NHTSAVehicleAPI\VehicleApi; $vehicles = new VehicleApi();
Get Years List
This method will allow you to pull a generated list of years. It accepts a parameter for the earliest year you want to start at and runs up to two years past the current year (to match some make/models are release schedules).
$vehicles->listYears();
$vehicles->listYears(1990);
$vehicles->listYears(1960);
Get All Makes
This method will allow you to pull a live listing of all vehicle makes from the NHSTA Vehicles API.
The data will include the Make Name and Make ID.
$vehicles->listAllMakes();
Get Pre-Loaded List Of Makes
Considering the make list is extremely extensive from the NHSTA Vehicles API we have curated our own pre-loaded list of commonly used makes in the United States.
The data will include the Make Name and Make ID.
It defaults to a mix of car/truck makes and motorcycle/scooter makes. It accepts an optional parameter to only pull car/truck or motorcycle/scooter makes as well.
$vehicles->listPreloadedMakes();
$vehicles->listPreloadedMakes('car/truck');
$vehicles->listPreloadedMakes('motorcycle/scooter');
You can review the default list at: biegalski-llc/nhtsa-vehicle-api/config/VehicleMakes/preloadedMakeList.php
You can review the car/truck make list at: biegalski-llc/nhtsa-vehicle-api/config/VehicleMakes/preloadedCarMakeList.php
You can review the motorcycle/scooter make list at: biegalski-llc/nhtsa-vehicle-api/config/VehicleMakes/preloadedMotoMakeList.php
Get Accepted List Of Makes
Considering the make list is extremely extensive from the NHSTA Vehicles API we have another method which accepts an array parameter of all of the makes you would like to pull. The accepted list should be an array of Make ID's from the NHSTA Vehicles API.
The data will include the Make Name and Make ID.
$vehicles->listAcceptedListMakes([6124,9172]);
Get All Models By Make
This method will allow you to pull a live listing of all vehicle models for a vehicle make. It requires a Make ID integer as a parameter.
The data will include the Make Name, Make ID, Model Name and Model ID.
$vehicles->listModelsByMake(460);
Get All Models By Make and Year
This method will allow you to pull a live listing of all vehicle models for a vehicle make by year. It requires a Make ID integer and Year integer as parameters.
The data will include the Make Name, Make ID, Model Name and Model ID.
$vehicles->listModelsByMakeYear(460, 2020);
Use VIN Decoder
This method will allow you to decode a VIN to get information on that particular vehicle.
$vehicles->decodeVin('1J4GZ58S7VC697710');
Change log
Please see CHANGELOG for more information on what has changed recently.
Testing
$ composer test
Contributing
Please see CONTRIBUTING and CODE_OF_CONDUCT for details.
Security
If you discover any security related issues, please email packages@biegalski-llc.com instead of using the issue tracker.
Credits
- Michael Biegalski - Biegalski LLC
- Franco Petitfour - Added curated motorcycle/scooter list
License
The MIT License (MIT). Please see License File for more information.