Tires

Three endpoints for discovering and inspecting tires: a simple dimensional search, a full faceted catalog browser, and a detail endpoint for individual tire sizes.

Case-insensitive filtering. String filter values such as make_name, category, season, terrain, and exclude_category are case-insensitive — for example, make_name=Michelin and make_name=MICHELIN produce the same results.

Search Tires

GET /api/v1/tires/search

Search tire sizes by dimensional attributes. Returns paginated results with basic tire information.

Query Parameters

ParameterTypeRequiredDefaultDescription
widthstringNoTire width in mm (e.g. 205)
aspect_ratiostringNoAspect ratio (e.g. 65)
rim_sizestringNoRim diameter in inches (e.g. 15)
load_ratingstringNoLoad rating code (e.g. 97)
speed_ratingstringNoSpeed rating code (e.g. H)
exclude_categorystring[]No[]Exclude tires in these categories. Repeat for multiple: ?exclude_category=OTR/Construction, Earthmover&exclude_category=Industrial
pageintNo1Page number (1-based)
per_pageintNo20Results per page (max 100)

Code Examples

curl -H "x-api-key: tl_live_your_key" \
  "https://app.tireweblibrary.com/api/v1/tires/search?width=205&aspect_ratio=65&rim_size=15"
const response = await fetch(
  "https://app.tireweblibrary.com/api/v1/tires/search?width=205&aspect_ratio=65&rim_size=15",
  { headers: { "x-api-key": "tl_live_your_key" } }
);
const data = await response.json();
import requests

response = requests.get(
    "https://app.tireweblibrary.com/api/v1/tires/search",
    params={"width": "205", "aspect_ratio": "65", "rim_size": "15"},
    headers={"x-api-key": "tl_live_your_key"},
)
data = response.json()

Response

{
  "current_page": 1,
  "data": [
    {
      "id": 12345,
      "name": "205/65R15",
      "item_number": "12345",
      "tire_model_id": 678,
      "tire_make_id": 90,
      "width": "205",
      "aspect_ratio": "65",
      "rim_size": "15",
      "load_rating": "97",
      "speed_rating": "H",
      "make_name": "Michelin",
      "model_name": "Defender T+H",
      "season": "All Season",
      "category": "Passenger",
      "three_pmsf": false,
      "run_flat": false,
      "mud_and_snow": true,
      "thumbnail_image": "https://..."
    }
  ],
  "from": 1,
  "last_page": 3,
  "per_page": 20,
  "to": 20,
  "total": 55
}

Response Fields

FieldTypeDescription
idlongUnique tire size identifier
namestringTire size name (e.g. "205/65R15")
item_numberstring?Item number / SKU
tire_model_idlongID of the tire pattern
tire_make_idlongID of the tire make
widthstring?Tire width in mm
aspect_ratiostring?Aspect ratio
rim_sizestring?Rim diameter in inches
load_ratingstring?Load rating code
speed_ratingstring?Speed rating code
make_namestring?Make name (e.g. "Michelin")
model_namestring?Pattern name (e.g. "Defender T+H")
seasonstring?Season classification
categorystring?Tire category
warrantystring?Warranty mileage
ply_ratingstring?Ply rating
load_rangestring?Load range (e.g. "SL")
utqgstring?UTQG rating (e.g. "820 A B")
tread_depthstring?Tread depth (32nds of an inch)
weightstring?Tire weight (lbs)
make_imagestring?URL to make logo image
terrainstring?Terrain classification
studdablebool?Studdable tire
three_pmsfboolThree-Peak Mountain Snowflake certification
run_flatboolRun-flat tire
mud_and_snowboolM+S rated
thumbnail_imagestring?URL to tire thumbnail image

Error Responses

StatusCondition
401Missing or invalid API key

Related Endpoints


Browse Catalog

GET /api/v1/tires/catalog

Full-featured faceted catalog browser. Returns matching tires along with available facet values for building interactive filters. Most parameters accept multiple values — repeat the query parameter for each value.

Query Parameters

ParameterTypeRequiredDefaultDescription
searchstringNoFree-text search
make_namestring[]No[]Filter by make. Repeat for multiple: ?make_name=Michelin&make_name=Bridgestone
widthstring[]No[]Filter by width
aspect_ratiostring[]No[]Filter by aspect ratio
rim_sizestring[]No[]Filter by rim size
speed_ratingstring[]No[]Filter by speed rating
load_ratingstring[]No[]Filter by load rating
ply_ratingstring[]No[]Filter by ply rating
load_rangestring[]No[]Filter by load range
utqgstring[]No[]Filter by UTQG
warrantystring[]No[]Filter by warranty
item_numberstring[]No[]Filter by item number
seasonstring[]No[]Filter by season
terrainstring[]No[]Filter by terrain
categorystring[]No[]Filter by category
exclude_categorystring[]No[]Exclude tires in these categories. Repeat for multiple: ?exclude_category=OTR/Construction, Earthmover&exclude_category=Industrial
three_pmsfboolNoThree-Peak Mountain Snowflake
run_flatboolNoRun-flat tires only
mud_and_snowboolNoM+S rated only
studdableboolNoStuddable only
sortstringNoSort key (e.g. name_asc)
pageintNo1Page number
per_pageintNo30Results per page (max 100)

Code Examples

curl -H "x-api-key: tl_live_your_key" \
  "https://app.tireweblibrary.com/api/v1/tires/catalog?make_name=Michelin&per_page=30"
const response = await fetch(
  "https://app.tireweblibrary.com/api/v1/tires/catalog?make_name=Michelin&per_page=30",
  { headers: { "x-api-key": "tl_live_your_key" } }
);
const data = await response.json();
import requests

response = requests.get(
    "https://app.tireweblibrary.com/api/v1/tires/catalog",
    params={"make_name": "Michelin", "per_page": 30},
    headers={"x-api-key": "tl_live_your_key"},
)
data = response.json()

Response

{
  "results": {
    "current_page": 1,
    "data": [
      {
        "id": 12345,
        "name": "205/65R15",
        "item_number": "12345",
        "tire_model_id": 678,
        "tire_make_id": 90,
        "width": "205",
        "aspect_ratio": "65",
        "rim_size": "15",
        "load_rating": "97",
        "speed_rating": "H",
        "make_name": "Michelin",
        "model_name": "Defender T+H",
        "season": "All Season",
        "category": "Passenger",
        "warranty": "90000",
        "ply_rating": "4",
        "load_range": "SL",
        "utqg": "820 A B",
        "tread_depth": "9.5",
        "weight": "22",
        "make_image": "https://...",
        "terrain": "Highway",
        "studdable": false,
        "three_pmsf": false,
        "run_flat": false,
        "mud_and_snow": true,
        "thumbnail_image": "https://..."
      }
    ],
    "from": 1,
    "last_page": 5,
    "per_page": 30,
    "to": 30,
    "total": 150
  },
  "facets": {
    "make_name": ["Michelin", "Bridgestone", "Goodyear", "..."],
    "width": ["155", "165", "175", "185", "195", "205", "..."],
    "aspect_ratio": ["40", "45", "50", "55", "60", "65", "..."],
    "rim_size": ["14", "15", "16", "17", "18", "..."],
    "speed_rating": ["H", "V", "W", "Y", "..."],
    "load_rating": ["93", "97", "101", "..."],
    "ply_rating": ["4", "6", "8", "..."],
    "load_range": ["SL", "XL", "E", "..."],
    "utqg": ["820 A B", "740 A A", "..."],
    "warranty": ["90000", "80000", "60000", "..."],
    "season": ["All Season", "Winter", "Summer", "..."],
    "terrain": ["Highway", "All-Terrain", "Mud-Terrain", "..."],
    "category": ["Passenger", "Light Truck", "..."]
  }
}

Response Fields

FieldTypeDescription
resultsobjectPaginated tire results (same fields as Search Tires)
facetsobjectAvailable filter values for building interactive UIs
facets.make_namestring[]Distinct make names in the result set
facets.widthstring[]Distinct widths
facets.aspect_ratiostring[]Distinct aspect ratios
facets.rim_sizestring[]Distinct rim sizes
facets.speed_ratingstring[]Distinct speed ratings
facets.load_ratingstring[]Distinct load ratings
facets.ply_ratingstring[]Distinct ply ratings
facets.load_rangestring[]Distinct load ranges
facets.utqgstring[]Distinct UTQG ratings
facets.warrantystring[]Distinct warranty values
facets.seasonstring[]Distinct seasons
facets.terrainstring[]Distinct terrain values
facets.categorystring[]Distinct categories

Error Responses

StatusCondition
401Missing or invalid API key

Related Endpoints


Get Tire by ID

GET /api/v1/tires/{id}

Get the full specification sheet for a single tire size, including dimensions, performance ratings, images, rebates, and vehicle fitments.

Path Parameters

ParameterTypeDescription
idlongTire size ID (obtained from search or catalog endpoints)

Query Parameters

ParameterTypeRequiredDefaultDescription
rebate_statusstringNo— (returns all)Filter rebates by status: Active, Upcoming, or Expired. Without this parameter, all rebates are returned.

Code Examples

curl -H "x-api-key: tl_live_your_key" \
  "https://app.tireweblibrary.com/api/v1/tires/12345"

# Only include active rebates
curl -H "x-api-key: tl_live_your_key" \
  "https://app.tireweblibrary.com/api/v1/tires/12345?rebate_status=Active"
const response = await fetch(
  "https://app.tireweblibrary.com/api/v1/tires/12345",
  { headers: { "x-api-key": "tl_live_your_key" } }
);
const tire = await response.json();

// Only include active rebates
const response2 = await fetch(
  "https://app.tireweblibrary.com/api/v1/tires/12345?rebate_status=Active",
  { headers: { "x-api-key": "tl_live_your_key" } }
);
const tire2 = await response2.json();
import requests

response = requests.get(
    "https://app.tireweblibrary.com/api/v1/tires/12345",
    headers={"x-api-key": "tl_live_your_key"},
)
tire = response.json()

# Only include active rebates
response = requests.get(
    "https://app.tireweblibrary.com/api/v1/tires/12345",
    params={"rebate_status": "Active"},
    headers={"x-api-key": "tl_live_your_key"},
)
tire = response.json()

Response

{
  "id": 12345,
  "name": "205/65R15",
  "item_number": "12345",
  "width": "205",
  "aspect_ratio": "65",
  "rim_size": "15",
  "load_rating": "97",
  "speed_rating": "H",
  "price": "129.99",
  "load_capacity_dual": "1709",
  "load_capacity_single": "1609",
  "max_inflation_pressure": "44",
  "revolutions_per_mile": "775",
  "rolling_circumference": "81.8",
  "diameter_overall": "25.5",
  "sidewall": "5.3",
  "section_width": "8.5",
  "weight": "22",
  "warranty": "90000",
  "utqg": "820 A B",
  "ply_rating": "4",
  "load_range": "SL",
  "tread_depth": "9.5",
  "category": "Passenger",
  "season": "All Season",
  "terrain": "Highway",
  "studdable": false,
  "three_pmsf": false,
  "run_flat": false,
  "mud_and_snow": true,
  "thumbnail_image": "https://...",
  "tire_make": {
    "id": 90,
    "name": "Michelin",
    "image_url": "https://...",
    "dot_reg_url": "https://..."
  },
  "tire_model": {
    "id": 678,
    "name": "Defender T+H",
    "image_url": "https://...",
    "image_360_url": "https://...",
    "image_360_thumbnail_url": "https://...",
    "video_url": "https://...",
    "manufacturer_url": "https://...",
    "features": "Extended tread life...",
    "benefits": "All-season confidence...",
    "description": "...",
    "three_pmsf": false
  },
  "rebates": [
    {
      "id": 10,
      "name": "Spring Rebate",
      "description": "Save on select Michelin tires",
      "start_date": "2025-03-01",
      "end_date": "2025-05-31",
      "global": false,
      "status": "Active"
    }
  ],
  "fitments_grouped": {
    "2024": {
      "SE": [
        { "trim": "SE", "years": "2023, 2024" }
      ]
    }
  }
}

Response Fields

FieldTypeDescription
idlongUnique tire size identifier
namestringTire size name (e.g. "205/65R15")
item_numberstring?Item number / SKU
widthstring?Tire width in mm
aspect_ratiostring?Aspect ratio
rim_sizestring?Rim diameter in inches
load_ratingstring?Load rating code
speed_ratingstring?Speed rating code
pricestring?List price
load_capacity_dualstring?Load capacity for dual fitment (lbs)
load_capacity_singlestring?Load capacity for single fitment (lbs)
max_inflation_pressurestring?Maximum inflation pressure (PSI)
revolutions_per_milestring?Revolutions per mile
rolling_circumferencestring?Rolling circumference (inches)
diameter_overallstring?Overall diameter (inches)
sidewallstring?Sidewall height (inches)
section_widthstring?Section width (inches)
weightstring?Tire weight (lbs)
warrantystring?Warranty mileage
utqgstring?UTQG rating (e.g. "820 A B")
ply_ratingstring?Ply rating
load_rangestring?Load range (e.g. "SL")
tread_depthstring?Tread depth (32nds of an inch)
categorystring?Tire category
seasonstring?Season classification
terrainstring?Terrain classification
studdablebool?Studdable tire
three_pmsfboolThree-Peak Mountain Snowflake certification
run_flatboolRun-flat tire
mud_and_snowboolM+S rated
thumbnail_imagestring?URL to tire thumbnail image
tire_makeobject?Nested make object with id, name, image_url, dot_reg_url
tire_modelobject?Nested pattern object with id, name, image_url, image_360_url, image_360_thumbnail_url, video_url, manufacturer_url, features, benefits, description, three_pmsf
rebatesarrayApplicable rebates with id, name, description, start_date, end_date, global, status
fitments_groupedobject?Vehicle fitments grouped by year and trim. Each item has trim (string) and years (string)

Error Responses

StatusCondition
401Missing or invalid API key
404Tire with the given ID does not exist

Related Endpoints

Compare & Export not available. The /api/v1/tires/compare and /api/v1/tires/compare-export endpoints require a logged-in web session and are not available via API keys.