carmax.com APIcarmax.com ↗
Search CarMax used car inventory, retrieve full vehicle specs and images, and get store locations and hours via a structured JSON API.
curl -X GET 'https://api.parse.bot/scraper/ac3c0c60-727b-4ee5-bf80-9bab762f7082/search_cars?uri=%2Fcars%2Ftoyota&skip=0&sort=bestmatch&take=3&zip_code=90001' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for used cars on CarMax with filters and pagination. The uri parameter filters by make, model, or body type. Returns vehicle listings with pricing, mileage, and availability info.
| Param | Type | Description |
|---|---|---|
| uri | string | Filter path for cars (e.g. /cars, /cars/toyota, /cars/toyota/camry, /cars/suv). |
| skip | integer | Number of results to skip for pagination. |
| sort | string | Sort order. Accepted values: bestmatch, price-asc, price-desc, mileage-asc, year-desc, distance-asc. |
| take | integer | Number of results to return per page. |
| zip_code | string | 5-digit US ZIP code for location-based results and shipping estimates. |
{
"type": "object",
"fields": {
"items": "array of vehicle objects with stockNumber, make, model, year, basePrice, mileage, exteriorColor, storeId, distance, and more",
"totalCount": "integer total number of matching vehicles"
},
"sample": {
"data": {
"items": [
{
"make": "Toyota",
"trim": "SE",
"year": 2019,
"model": "Corolla",
"mileage": 97325,
"storeId": 7124,
"distance": 26.2,
"basePrice": 16998,
"storeName": "Canoga Park",
"engineType": "Gas",
"stockNumber": 27928239,
"heroImageUrl": "https://img2.carmax.com/assets/27928239/hero.jpg?width=400&height=300",
"transmission": "Automatic",
"exteriorColor": "Blue",
"stateAbbreviation": "CA"
}
],
"totalCount": 6565
},
"status": "success"
}
}About the carmax.com API
The CarMax API covers 5 endpoints that expose used car inventory, vehicle details, and store data from CarMax.com. The search_cars endpoint returns paginated vehicle listings with pricing, mileage, and availability across the full national inventory, while get_vehicle_details delivers per-vehicle specs, feature lists, images, and customer review summaries — all in structured JSON.
Inventory Search and Vehicle Details
The search_cars endpoint accepts a uri parameter that scopes results to a make, model, or body type — for example /cars/toyota/camry or /cars/suv. Combine it with sort (accepted values: bestmatch, price-asc, price-desc, mileage-asc, year-desc, distance-asc), a zip_code for distance-sorted results, and skip/take for pagination. Each item in the response includes stockNumber, make, model, year, basePrice, mileage, exteriorColor, storeId, and distance.
Once you have a stockNumber, pass it to get_vehicle_details to retrieve the full record: a base object with VIN and color data, a specs array organized by category, a features array with category and feature names, highlights with titled descriptions, an images object with direct URLs, and a reviews object containing customerReviews, average rating, topPros, and topCons for that make/model.
Store Locations and Store Inventory
get_stores returns the full list of CarMax locations with name, structured address fields (addressLocality, addressRegion, addressCountry), and geo coordinates — no inputs required. For a specific location, get_store_details takes a store_id and returns operating hours, holiday hours, service hours, phone numbers, real-time open/closed status, and store capabilities. To browse the cars available near a specific store, pass the same store_id to get_store_inventory, which returns paginated vehicle listings in the same format as search_cars.
- Build a used car price tracker that monitors
basePricechanges across a specific make and model usingsearch_cars. - Populate a vehicle comparison tool with specs, features, and images pulled from
get_vehicle_details. - Display a store locator map using latitude/longitude coordinates from
get_stores. - Show real-time store open/closed status and hours in a dealership finder app via
get_store_details. - Filter local inventory for a specific store by pairing
get_store_inventorywithstore_idandzip_code. - Aggregate customer review sentiment (average rating,
topPros,topCons) across vehicle models usingget_vehicle_details. - Generate mileage-sorted shortlists of available SUVs using
search_carswithuri=/cars/suvandsort=mileage-asc.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does CarMax offer an official public developer API?+
What does `get_vehicle_details` return beyond basic listing data?+
base object (VIN, year, price, colors), a specs array grouped by category, a features array with category and feature names, highlights with title and description pairs, an images object with direct URLs, and a reviews object with individual customer reviews, average rating, topPros, and topCons for the make/model.Can I filter `search_cars` results by price range or mileage range?+
price-asc, price-desc, mileage-asc) and scoping by make, model, or body type via the uri parameter, but min/max price or mileage range filters are not currently exposed as inputs. You can fork this API on Parse and revise it to add those filter parameters.Does the API expose CarMax financing or monthly payment estimates?+
basePrice and listing metadata, but financing terms, APR estimates, or monthly payment calculations are not included in the response fields. You can fork the API on Parse and revise it to add a financing-details endpoint.How does pagination work across `search_cars` and `get_store_inventory`?+
skip and take integer parameters. totalCount in the response tells you the full number of matching records, so you can calculate how many pages exist and increment skip by take to walk through results.