Tire Library API Documentation

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

ParameterTypeRequiredDefaultDescription
yearstringNo—Vehicle year (e.g. 2024). Omit to get available years.
makestringNo—Vehicle make (e.g. Toyota). Requires year.
modelstringNo—Vehicle model (e.g. Camry). Requires year + make.
trimstringNo—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

FieldTypeDescription
endpointstringCurrent drill-down level: year, make, model, trim, or fitment
optionsstring[]?Available choices for the next drill-down parameter
fitmentsarray?Tire fitment results (only present when endpoint is fitment)
fitments[].namestringTire size designation including load/speed rating (e.g. "225/65R17 102H")
fitments[].positionstring?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[].widthstring?Tire width in mm
fitments[].aspect_ratiostring?Aspect ratio
fitments[].rim_sizestring?Rim diameter in inches
fitments[].load_ratingstring?Load rating code
fitments[].speed_ratingstring?Speed rating code

Error Responses

StatusCondition
401Missing or invalid API key

Related Endpoints