---
title: "Year Make Model Options"
method: GET
path: "/v1/ymm-options"
tags: ["Year Make Model"]
---

# Year Make Model Options

`GET /v1/ymm-options`

Populate Year, Make, Model, and Variant dropdown menus. Each response returns exactly one layer. `dimension` is optional — when omitted, the response shape is inferred from `make`/`model`/`year`. Billing: most calls cost 1 unit. `dimension=variants` with `year` + `make` (no `model`) costs 1 unit per model; the response includes `modelCount`. Required filters help you get better, more relevant results. `year`, `make`, and `model` can be combined for reversed lookups (e.g. years for a given make+model).

## Query parameters

- `dimension` 'years' | 'makes' | 'models' | 'trims' | 'variants'
- `year` string
- `make` string
- `model` string
- `trim` string

## Response `200`

Distinct values for the requested (or inferred) dimension(s).

- object
  - `success` boolean
  - `input` object
  - `message` string — Optional guidance when the returned layer differs from the requested dimension or when explaining how to get better results.
  - `years` integer[]
  - `makes` string[]
  - `models` string[]
  - `trims` string[]
  - `variants` string[]
  - `modelCount` integer — Present only for bulk variants (`dimension=variants` + year + make, no model). Number of distinct models, which is also the amount billed — except a zero-match query, which returns 0 but still bills a minimum of 1 unit.

## Other responses

- `400` — Invalid dimension, invalid year, missing required filters, or model without make/year.
- `401` — Missing API key, unknown/disabled API key, or inactive account.
- `429` — API usage limit exceeded for the current billing period.
- `500` — Could not fetch data.

---

[API](https://skmtc.net/carsxe/apis/carsxe-api.md) · [All operations](https://skmtc.net/carsxe/apis/carsxe-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/carsxe/carsxe-api/revisions/d90c24450642/schema)
