Available Options Packages

The Available Options Packages API returns every manufacturer option package that was available for a specific VIN at the time of sale. When NeoVIN decoding doesn't capture all installed features, this endpoint provides the complete factory options catalog so you can identify missing configurations and use those option codes to filter search results more accurately across Marketcheck APIs.

The Available Options Packages API retrieves all manufacturer options packages available for a specific vehicle identified by its VIN. This endpoint leverages NeoVIN decoder data to provide comprehensive information about factory-available options, including option codes, names, and MSRP values.

This API is useful for applications that need to display all possible configuration options for a vehicle, such as automotive marketplaces, vehicle configurators, and inventory management systems.

Base Path

GET https://api.marketcheck.com/v2/decode/car/neovin/{vin}/options-packages

Path Parameters:

  • vin: The 17-character VIN of the vehicle to retrieve options for.

The following example demonstrates a basic request to the Available Options Packages API:

request.js
import axios from 'axios';

const options = {
method: 'GET',
url: 'https://api.marketcheck.com/v2/decode/car/neovin/3GNKBHR48PS212775/options-packages',
params: {api_key: 'YOUR_API_KEY'},
headers: {Accept: 'application/json'}
};

try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}

Request

The Available Options Packages API returns all available manufacturer options packages for a vehicle using NeoVIN decoder data. The request requires a valid 17-character VIN provided as a path parameter.

Parameters

Available parameters for options packages requests:

1 Params
api_key
string required

Your MarketCheck API authentication key. Required for every request, unless OAuth is used.

Required Parameters

The following parameters are required for options packages requests:

  • vin - The 17-character VIN of the vehicle (provided in URL path)
    • Must be exactly 17 characters in length
    • Case-insensitive string format
    • NeoVIN decode must be available for the VIN

Response

The Available Options Packages API returns a JSON object containing the VIN, country, and an array of available options packages.

Schema

interface Response {
  vin: string; // Vehicle Identification Number
  country: string; // Country of the decoded vehicle
  available_options_packages: AvailableOptionPackage[]; // Array of available options
}

interface AvailableOptionPackage {
  code: string; // Option package code
  name: string; // Option package name
  msrp: string; // MSRP of the option package
}

Success Response

  • 200 OK - Returns a JSON object containing available options packages for the vehicle
    • Includes the original VIN and country of the decoded vehicle
    • Contains an array of all available options with codes, names, and MSRP values
    • Only returns successfully if NeoVIN decode is available for the VIN

Error Response

Status CodeDescriptionCommon Causes
400Bad RequestVIN is too short (less than 17 characters)
401UnauthorizedMissing or invalid API key
403ForbiddenAPI key does not have access to this endpoint
422Unprocessable EntityUnable to get available options for the specified VIN
429Too Many RequestsRate limit exceeded
500Internal Server ErrorTemporary server issues

Example Error Responses:

Invalid VIN length (400):

{
  "code": 400,
  "message": "Request validation failed: Parameter (vin) is too short (16 chars), minimum 17"
}

VIN not found or decode unavailable (422):

{
  "code": 422,
  "message": "Unable to get available options for {vin}"
}

Use Cases & Examples

Retrieve Available Options for Vehicle Configuration

Use this endpoint to get a complete list of all manufacturer options packages available for a specific vehicle. This is useful for displaying configuration options, understanding the full range of features available for a VIN, and for vehicle valuation and comparison purposes.

Example:

Here we're retrieving all available options packages for a vehicle:

request.js
import axios from 'axios';

const options = {
method: 'GET',
url: 'https://api.marketcheck.com/v2/decode/car/neovin/3GNKBHR48PS212775/options-packages',
params: {api_key: 'YOUR_API_KEY'},
headers: {Accept: 'application/json'}
};

try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}

See Also