Kelley Blue Book API: Get KBB car review
Gets Kelley Blue Book's expert and consumer ratings, trim prices with the KBB Fair Purchase Price, fuel economy, pros, cons and the expert review's opening verdict for a car model by year, make and model. Some details are unavailable for certain model years.
Unofficial. Not affiliated with or endorsed by Kelley Blue Book.
Inputs
Values from the run on Oct 31, 2026, shown under Output.
- Car, required
car The year, make and model, for example 2024 Honda CR-V.
2024 Toyota Camry
Input as JSON
{ "car": "2024 Toyota Camry"}Output
{ "cons": [ "Due for a revamp" ], "pros": [ "Dependable and roomy", "Strong resale values", "Available all-wheel drive" ], "trims": [ { "name": "LE Sedan 4D", "starting_price_usd": 27515 }, { "name": "SE Sedan 4D", "starting_price_usd": 29055 }, { "name": "SE Nightshade Edition Sedan 4D", "starting_price_usd": 30055 } ], "car_name": "2024 Toyota Camry", "currency": "USD", "page_url": "https://www.kbb.com/toyota/camry/2024/" , "fuel_economy": "28 city / 39 highway MPG", "expert_rating": 4.6, "consumer_rating": 3.9, "starting_price_usd": 27515, "consumer_review_count": 350, "expert_verdict_summary": "It might seem odd to recommend the Toyota Camry as an antidote to boredom, but that’s where we are. Midsize sedans were once seen as rather vanilla, but as an alternative to the ubiquitous SUV, cars like the Toyota Camry can be comparatively responsive, nimble and satisfying to drive. They’re also c…", "fair_purchase_price_usd": 23900, "five_year_cost_to_own_usd": null}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"kbb.com/get_car_review","input":{"car":"2024 Toyota Camry"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "kbb.com/get_car_review" , "input": { "car": "2024 Toyota Camry" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "kbb.com/get_car_review" , "input": { "car": "2024 Toyota Camry" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run kbb.com/get_car_review# with {"car":"2024 Toyota Camry"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "car" ], "properties": { "car": { "type": "string", "description": "The year, make and model, for example 2024 Honda CR-V." } }}Output schema
{ "type": "object", "required": [ "car_name", "expert_rating", "consumer_rating", "consumer_review_count", "starting_price_usd", "fair_purchase_price_usd", "currency", "fuel_economy", "five_year_cost_to_own_usd", "pros", "cons", "expert_verdict_summary", "trims", "page_url" ], "properties": { "cons": { "type": "array", "items": { "type": "string" } }, "pros": { "type": "array", "items": { "type": "string" } }, "trims": { "type": "array", "items": { "type": "object", "required": [ "name", "starting_price_usd" ], "properties": { "name": { "type": "string" }, "starting_price_usd": { "type": "number" } } } }, "car_name": { "type": "string" }, "currency": { "type": "string" }, "page_url": { "type": "string" }, "fuel_economy": { "type": [ "string", "null" ] }, "expert_rating": { "type": [ "number", "null" ], "description": "KBB expert rating out of 5." }, "consumer_rating": { "type": [ "number", "null" ], "description": "Consumer rating out of 5." }, "starting_price_usd": { "type": [ "number", "null" ], "description": "Starting MSRP in USD, original MSRP for used cars." }, "consumer_review_count": { "type": [ "integer", "null" ] }, "expert_verdict_summary": { "type": [ "string", "null" ] }, "fair_purchase_price_usd": { "type": [ "number", "null" ], "description": "KBB Fair Purchase Price in USD for the base trim." }, "five_year_cost_to_own_usd": { "type": [ "number", "null" ] } }}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
kbb.com/get_car_review- Returns
- car name, expert rating, consumer rating and review count, starting price, fair purchase price, fuel economy, 5-year cost to own, pros, cons, expert verdict summary, trims with starting prices, page URL
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method kbb.com/get_car_review with the inputs above.
Ask your agent
- What do the experts think of the 2023 Toyota RAV4? I want the rating, pros and cons, and what people are actually paying for it.
- Pull up the KBB review for the 2022 Ford F-150, including trim prices and the fair purchase price
- How does the 2021 Mazda CX-5 rate with owners and reviewers, and what's its fuel economy and 5-year cost to own?
- I'm thinking about buying a 2024 Hyundai Tucson — give me the starting price for each trim and the expert verdict
- Check Kelley Blue Book for the 2020 Subaru Outback: consumer rating, number of reviews, MPG, and main drawbacks
See more
All Kelley Blue Book methodsEstimates a used car's trade-in and private-party values and ranges on Kelley Blue Book for a given mileage, ZIP code, trim and condition.
kbb.com/get_car_valueGets the current average used asking price, the CarGurus price range and the 12-month price history for a model year (all trims), from CarGurus price trends.
cargurus.com/get_market_valueSearches new and used cars for sale near a US ZIP code for a make and model, with prices, dealer details and CarGurus deal ratings. Used cars come first, then new cars, each in CarGurus order; market difference is positive below market and negative above.
cargurus.com/search_carsSearches Cars.com car listings for a make and model around a US ZIP code within a radius, optionally by condition (new, used or certified pre-owned) and maximum price, in Cars.com search order.
cars.com/search_carsCompares the official fuel economy and estimated annual fuel cost of two to four cars by year, make and model, using FuelEconomy.gov. Selects a base version when no trim is given.
fueleconomy.gov/compare_carsSearches Carvana's used-car inventory by make and model, with optional price, year, mileage and ZIP filters, and returns each car's price, estimated monthly payment, mileage and delivery or pickup estimate for the ZIP.
carvana.com/search_carsFinds a dealership on Cars.com by name and city/state or ZIP and returns its latest customer reviews with its rating, address and phone.
cars.com/get_dealer_reviewsSearches CARFAX used-car listings for a make and model near a US ZIP code, in CARFAX order, with listing details and free vehicle-history highlights. Paid full history reports are not included.
carfax.com/search_cars