Tire API v1.1.0 Changelog: Major Updates & New Endpoints
The Tire API v1.1.0 release introduces three powerful new endpoints and improvements to vehicle data querying. This changelog provides a comprehensive overview of all changes, upgrades, and new capabilities available in the latest version.
What's New in v1.1.0
Version 1.1.0 focuses on improving vehicle discovery, reverse tire-to-vehicle matching, and better year range filtering. These new endpoints make it easier to build intuitive, cascading search interfaces.
New Endpoint 1: GET /search_allmake
Overview
Retrieve all vehicle makes available in the Tire API database without requiring a year parameter. This endpoint is essential for building first-level dropdown menus in tire search interfaces.
Endpoint Details
- HTTP Method: GET
- Base URL: https://tire.vdim.app/api/v1
- Full Path: /api/v1/search_allmake
- Authentication: x-api-key header
- Rate Limit Impact: Counts as 1 request against daily quota
- Cache Duration: Highly cacheable (1-hour recommended)
Request Format
GET /api/v1/search_allmake
Headers: {'x-api-key': 'YOUR_API_KEY'}
Response Example
{ "makes": [ "Toyota", "Ford", "Chevrolet", "Honda", "BMW", "Mercedes-Benz", ... ] }
Use Cases
- Populate the initial vehicle manufacturer dropdown
- Show customers available brands without a year filter
- Build autocomplete suggestions for vehicle make
- Implement search-as-you-type for manufacturer names
Implementation Example - JavaScript
async function getAllMakes() {
const response = await fetch('/api/v1/search_allmake', {
headers: { 'x-api-key': 'YOUR_API_KEY' }
});
const data = await response.json();
return data.makes; // Returns array of all vehicle makes
}
Implementation Example - Python
import requests
def get_all_makes():
url = 'https://tire.vdim.app/api/v1/search_allmake'
headers = {'x-api-key': 'YOUR_API_KEY'}
response = requests.get(url, headers=headers)
return response.json()['makes']
cURL Example
curl -H "x-api-key: YOUR_API_KEY" \
"https://tire.vdim.app/api/v1/search_allmake"
Performance Notes
- Response time: Typically <100ms
- Data size: ~15-20KB (30-50 makes)
- Caching recommended: Yes, 1-hour TTL
- Response is static and rarely changes
New Endpoint 2: GET /reverse_lookup
Overview
The reverse lookup endpoint solves a critical problem: given a tire size, find all vehicles that use it. This enables "vehicles for this tire" search functionality and helps customers understand tire compatibility across different vehicle models.
Endpoint Details
- HTTP Method: GET
- Full Path: /api/v1/reverse_lookup
- Authentication: x-api-key header
- Rate Limit Impact: Counts as 1 request
- Query Parameters: Accepts either full tiresize OR individual dimensions
Query Parameters
Option 1: Full Tire Size String
- tiresize (string, required if using full size): Complete tire size (e.g., "225/60R16", "275/45R19")
Option 2: Individual Dimensions
- width (integer): Tire width in mm (e.g., 225, 275, 315)
- aspectratio (integer): Sidewall height percentage (e.g., 45, 60, 65)
- diameter (integer): Wheel diameter in inches (e.g., 16, 17, 18, 19, 20)
Request Examples
Using Full Tire Size:
GET /api/v1/reverse_lookup?tiresize=225/60R16
Headers: {'x-api-key': 'YOUR_API_KEY'}
Using Individual Dimensions:
GET /api/v1/reverse_lookup?width=225&aspectratio=60&diameter=16
Headers: {'x-api-key': 'YOUR_API_KEY'}
Response Example
{
"tiresize": "225/60R16",
"count": 142,
"vehicles": [
{
"year": 2020,
"make": "Toyota",
"model": "Camry",
"trim": "LE",
"type": "sedan"
},
...
]
}
Use Cases
- Show customers which vehicles use a specific tire size
- Build "vehicles that fit this tire" search feature
- Enable tire-to-vehicle cross-selling
- Validate tire compatibility before purchase
- Create tire comparison tools showing compatible vehicles
Implementation Example - JavaScript
// Reverse lookup by full tire size
async function findVehiclesForTire(tiresize) {
const response = await fetch(`/api/v1/reverse_lookup?tiresize=${tiresize}`, {
headers: { 'x-api-key': 'YOUR_API_KEY' }
});
const data = await response.json();
return data.vehicles; // Array of vehicles using this tire
}
// Reverse lookup by individual dimensions
async function findVehiclesByDimensions(width, aspectratio, diameter) {
const params = new URLSearchParams({ width, aspectratio, diameter });
const response = await fetch(`/api/v1/reverse_lookup?${params}`, {
headers: { 'x-api-key': 'YOUR_API_KEY' }
});
const data = await response.json();
return data.vehicles;
}
Implementation Example - Python
import requests
def find_vehicles_for_tire(tiresize):
url = 'https://tire.vdim.app/api/v1/reverse_lookup'
headers = {'x-api-key': 'YOUR_API_KEY'}
params = {'tiresize': tiresize}
response = requests.get(url, headers=headers, params=params)
return response.json()['vehicles']
def find_vehicles_by_dimensions(width, aspectratio, diameter):
url = 'https://tire.vdim.app/api/v1/reverse_lookup'
headers = {'x-api-key': 'YOUR_API_KEY'}
params = {'width': width, 'aspectratio': aspectratio, 'diameter': diameter}
response = requests.get(url, headers=headers, params=params)
return response.json()['vehicles']
cURL Examples
curl -H "x-api-key: YOUR_API_KEY" \
"https://tire.vdim.app/api/v1/reverse_lookup?tiresize=225/60R16"
curl -H "x-api-key: YOUR_API_KEY" \
"https://tire.vdim.app/api/v1/reverse_lookup?width=225&aspectratio=60&diameter=16"
Performance Considerations
- Response Time: Typically 150-500ms (depending on matches)
- Result Size: Varies from 10-200KB depending on number of vehicles
- Common Tire Sizes: Larger responses (225/60R16, 225/65R17 are very common)
- Rare Tire Sizes: Faster responses with fewer matches
- Caching: Recommended 24-hour TTL (tire-to-vehicle mappings change slowly)
New Endpoint 3: GET /year_range
Overview
Get the earliest and latest year available for a specific vehicle make, or for a make+model combination. This endpoint helps build year range sliders and validates year inputs without needing to fetch all individual years.
Endpoint Details
- HTTP Method: GET
- Full Path: /api/v1/year_range
- Authentication: x-api-key header
- Rate Limit Impact: Counts as 1 request
- Query Parameters: make (required), model (optional)
Query Parameters
- make (string, required): Vehicle manufacturer (e.g., "Toyota", "Ford")
- model (string, optional): Vehicle model (e.g., "Camry", "F-150")
Request Examples
Year range for all Toyota models:
GET /api/v1/year_range?make=Toyota
Headers: {'x-api-key': 'YOUR_API_KEY'}
Year range for Toyota Camry specifically:
GET /api/v1/year_range?make=Toyota&model=Camry
Headers: {'x-api-key': 'YOUR_API_KEY'}
Response Example
{
"make": "Toyota",
"model": null,
"min_year": 1990,
"max_year": 2026,
"year_count": 37,
"available_years": [1990, 1991, 1992, ..., 2025, 2026]
}
With Model Specified:
{
"make": "Toyota",
"model": "Camry",
"min_year": 1995,
"max_year": 2026,
"year_count": 32,
"available_years": [1995, 1996, ..., 2025, 2026]
}
Use Cases
- Set min/max constraints on year range sliders
- Validate year input before making other API calls
- Show customers the year range available for a vehicle
- Build smart year selection (only show valid years)
- Enable year filtering without fetching all years
Implementation Example - JavaScript
async function getYearRange(make, model = null) {
let url = `/api/v1/year_range?make=${encodeURIComponent(make)}`;
if (model) {
url += `&model=${encodeURIComponent(model)}`;
}
const response = await fetch(url, {
headers: { 'x-api-key': 'YOUR_API_KEY' }
});
const data = await response.json();
return {
minYear: data.min_year,
maxYear: data.max_year,
yearCount: data.year_count,
availableYears: data.available_years
};
}
Implementation Example - Python
import requests
from typing import Optional, Dict
def get_year_range(make: str, model: Optional[str] = None) -> Dict:
url = 'https://tire.vdim.app/api/v1/year_range'
headers = {'x-api-key': 'YOUR_API_KEY'}
params = {'make': make}
if model:
params['model'] = model
response = requests.get(url, headers=headers, params=params)
data = response.json()
return {
'min_year': data['min_year'],
'max_year': data['max_year'],
'year_count': data['year_count'],
'available_years': data['available_years']
}
cURL Examples
curl -H "x-api-key: YOUR_API_KEY" \
"https://tire.vdim.app/api/v1/year_range?make=Toyota"
curl -H "x-api-key: YOUR_API_KEY" \
"https://tire.vdim.app/api/v1/year_range?make=Toyota&model=Camry"
Performance Notes
- Response Time: Typically <50ms
- Data Size: ~2-5KB per request
- Caching: Recommended 7-day TTL (year ranges change slowly)
- No pagination: All available years returned in response
Stable Endpoints (No Changes)
The following endpoints remain unchanged from previous versions and continue to work as documented:
- GET /api/v1/tire_dimensions - Get tire dimensions for a vehicle
- GET /api/v1/by_vehicle/{query} - Get vehicle data by query
- GET /api/v1/by_size/{query} - Get tire size data
- GET /api/v1/search_allyear - Get all available years
- GET /api/v1/search_allwidth - Get all available tire widths
- GET /api/v1/usage - Get API usage statistics
Rate Limits & Pricing
Rate limits remain unchanged in v1.1.0:
- Free Plan: 300 requests/day
- Growth Plan: 5,000 requests/day
- Enterprise Plan: 50,000 requests/day
- Premium Plan: 200,000 requests/day
All new endpoints count as 1 request each against daily quotas.
Migration Guide: From v1.0 to v1.1.0
No Breaking Changes
v1.1.0 is fully backward compatible with v1.0. All existing code continues to work without modification.
Recommended Updates
1. Simplify Vehicle Selection UI
Before v1.1.0, you might have used a workaround to get all makes. Now use /search_allmake directly:
// Old approach (still works)
// Get by_vehicle/make and parse results
// New approach (recommended)
const makes = await fetch('/api/v1/search_allmake');
2. Add Reverse Tire Lookup
If you have a tire size but want to show compatible vehicles, use the new reverse_lookup endpoint for better performance and accuracy.
3. Optimize Year Selectors
Replace fetching all years with year_range for faster, more responsive UIs:
// Old approach
const allYears = await fetch('/api/v1/search_allyear');
// New approach (faster, more relevant)
const { min_year, max_year } = await fetch('/api/v1/year_range?make=Toyota');
Support & Resources
Need Help? Contact support at support@vdimtech.com or visit the API portal at https://tire.vdim.app for interactive documentation.
OpenAPI/Swagger: Download the YAML or JSON spec for automatic code generation and tool integration.
API Status: Check system health at https://tire.vdim.app/api/health
What's Next?
We're continuously improving the Tire API. Future releases may include:
- Tire inventory integration
- Real-time pricing data
- Performance ratings and reviews
- Advanced filtering (load index, speed rating, UTQG ratings)
- Bulk vehicle lookup
Subscribe to our API newsletter or check the blog for announcements of new features.
Conclusion
Tire API v1.1.0 significantly improves the developer experience by introducing powerful new endpoints for vehicle discovery, reverse tire lookup, and year range filtering. These additions enable building more sophisticated, user-friendly tire search interfaces while maintaining full backward compatibility with existing implementations.
Start exploring the new endpoints today and let us know how they improve your tire selection experience!