Vehicle Fitments
Look up tire fitments for a specific vehicle. Supports a cascading selector pattern — pass parameters incrementally to drill down from year to make to model to trim.
Case-insensitive filtering. String filter values such as
make, model, and trim are case-insensitive — for example, make=Toyota and make=TOYOTA produce the same results.
Cascading drill-down. The response
endpoint field tells you which level you reached: year, make, model, trim, or fitment. Omit any parameter to discover valid values for the next one.
Drivetrain in trim names. There is no separate drivetrain field. Where the vehicle has multiple drivetrain options, the trim name includes it, e.g.
LE (AWD) vs LE (FWD) on the 2024 Toyota RAV4, and these appear as separate trim values.
Vehicle Lookup
GET
/api/v1/vehicle/lookup
Pass year to get available makes. Add make to get models. Add model to get trims. Add trim to get tire fitment results. Omit all parameters to get available years.
Query Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
year | string | No | — | Vehicle year (e.g. 2024). Omit to get available years. |
make | string | No | — | Vehicle make (e.g. Toyota). Requires year. |
model | string | No | — | Vehicle model (e.g. Camry). Requires year + make. |
trim | string | No | — | Vehicle trim (e.g. SE). Requires year + make + model. |
Code Examples
Step 1 — Get available years:
curl -H "x-api-key: tl_live_your_key" \
"https://app.tireweblibrary.com/api/v1/vehicle/lookup"
const response = await fetch(
"https://app.tireweblibrary.com/api/v1/vehicle/lookup",
{ headers: { "x-api-key": "tl_live_your_key" } }
);
const years = await response.json();
import requests
response = requests.get(
"https://app.tireweblibrary.com/api/v1/vehicle/lookup",
headers={"x-api-key": "tl_live_your_key"},
)
years = response.json()
Step 2 — Get makes for a year:
curl -H "x-api-key: tl_live_your_key" \
"https://app.tireweblibrary.com/api/v1/vehicle/lookup?year=2024"
const response = await fetch(
"https://app.tireweblibrary.com/api/v1/vehicle/lookup?year=2024",
{ headers: { "x-api-key": "tl_live_your_key" } }
);
const data = await response.json();
import requests
response = requests.get(
"https://app.tireweblibrary.com/api/v1/vehicle/lookup",
params={"year": "2024"},
headers={"x-api-key": "tl_live_your_key"},
)
data = response.json()
Step 3 — Get fitments (full drill-down):
curl -H "x-api-key: tl_live_your_key" \
"https://app.tireweblibrary.com/api/v1/vehicle/lookup?year=2024&make=Toyota&model=Camry&trim=SE"
const response = await fetch(
"https://app.tireweblibrary.com/api/v1/vehicle/lookup?year=2024&make=Toyota&model=Camry&trim=SE",
{ headers: { "x-api-key": "tl_live_your_key" } }
);
const fitments = await response.json();
import requests
response = requests.get(
"https://app.tireweblibrary.com/api/v1/vehicle/lookup",
params={"year": "2024", "make": "Toyota", "model": "Camry", "trim": "SE"},
headers={"x-api-key": "tl_live_your_key"},
)
fitments = response.json()
Response
{
"endpoint": "year",
"options": ["2024", "2023", "2022", "2021", "2020", "..."],
"fitments": null
}{
"endpoint": "make",
"options": ["Acura", "Audi", "BMW", "Buick", "Toyota", "..."],
"fitments": null
}{
"endpoint": "fitment",
"options": null,
"fitments": [
{
"name": "225/65R17 102H",
"position": "B",
"width": "225",
"aspect_ratio": "65",
"rim_size": "17",
"load_rating": "102",
"speed_rating": "H"
}
]
}For staggered vehicles (different front and rear sizes) each axle is a separate row, with position "F" (front) and "R" (rear):
{
"endpoint": "fitment",
"options": null,
"fitments": [
{
"name": "225/45R18 95Y",
"position": "F",
"width": "225",
"aspect_ratio": "45",
"rim_size": "18",
"load_rating": "95",
"speed_rating": "Y"
},
{
"name": "255/40R18 99Y",
"position": "R",
"width": "255",
"aspect_ratio": "40",
"rim_size": "18",
"load_rating": "99",
"speed_rating": "Y"
}
]
}Response Fields
| Field | Type | Description |
|---|---|---|
endpoint | string | Current drill-down level: year, make, model, trim, or fitment |
options | string[]? | Available choices for the next drill-down parameter |
fitments | array? | Tire fitment results (only present when endpoint is fitment) |
fitments[].name | string | Tire size designation including load/speed rating (e.g. "225/65R17 102H") |
fitments[].position | string? | Axle position code: B = both axles (square fitment — same size front and rear), F = front axle, R = rear axle. Staggered vehicles return separate F and R rows. There is no factory-standard-versus-optional flag. |
fitments[].width | string? | Tire width in mm |
fitments[].aspect_ratio | string? | Aspect ratio |
fitments[].rim_size | string? | Rim diameter in inches |
fitments[].load_rating | string? | Load rating code |
fitments[].speed_rating | string? | Speed rating code |
Error Responses
| Status | Condition |
|---|---|
401 | Missing or invalid API key |
Related Endpoints
- Tires — search for specific tire sizes by dimensional attributes from the fitment results
- Tire Patterns — browse tire patterns for the makes and models found