image

A VIN lookup or a trim list gives you a vehicle_id. This call prices that id. You send the id, a mileage, and an optional ZIP code. Trade-in comes back as one low-to-high range. Private-party comes back as a range for each condition: excellent, very good, good, and fair.

Mileage is sent as a string. The default ZIP is 73101 when you omit zipcode.

👉 To access this endpoint, you must obtain an API key: https://steadyapi.com/register


Authentication

Every call uses a Bearer token from your SteadyAPI dashboard.

Documentation:
https://docs.steadyapi.com/#authenticating-requests

headers = {
  'Authorization': 'Bearer YOUR_API_KEY'
}

Where this fits

Two earlier calls can supply vehicleId. GET /v1/vehicles/vin returns vehicle_id for a VIN. GET /v1/vehicles/trims returns vehicle_id for a year, make, and model, after GET /v1/vehicles/make and GET /v1/vehicles/model. Recalls, GET /v1/vehicles/recalls, take the same id and do not need mileage. Price this id twice if you want both trade-in and private-party.


Value for a vehicle

Endpoint: GET /v1/vehicles/car-value

Documentation:
https://docs.steadyapi.com/#autohub-api-GETapi-v1-vehicles-car-value

Parameters

  • vehicleId — required vehicle id
  • mileage — required mileage, sent as a string
  • zipcode — optional ZIP code, default 73101
  • priceType — optional: trade-in (default) or private-party

priceType changes the shape of body, not just a label. trade-in is one object with value, low, and high. private-party is four condition objects, each with those three numbers. mileage and zipcode move the numbers. Mileage has to be present even when you only want the default trade-in price. Send it as a string, for example 50000.

Python

import requests

url = "https://api.steadyapi.com/v1/vehicles/car-value"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
params = {
    "vehicleId": trim["vehicle_id"],
    "mileage": "50000",
    "zipcode": "73101",
    "priceType": "trade-in",
}

response = requests.get(url, headers=headers, params=params)
response.raise_for_status()
value = response.json().get("body", {})
print(value.get("value"), value.get("low"), value.get("high"))

Annotated sample

A trade-in body is one object with value, low, and high. A private-party body uses those same three keys under each condition:

{
  "excellent": { "value": 26880, "low": 24380, "high": 29380 },
  "verygood": { "value": 26280, "low": 23780, "high": 28780 },
  "good": { "value": 25680, "low": 23280, "high": 27980 },
  "fair": { "value": 23980, "low": 21780, "high": 26180 }
}

Read meta.price_type before you parse body. For trade-in, value is the point estimate and low and high are the range. For private-party, those three numbers sit under excellent, verygood, good, and fair. There is no poor key on this response. meta also echoes vehicle_id, zipcode, and mileage.


Practical use

Do not assume body.value exists. That key is only on a trade-in response. On a private-party response, body.value is missing and the numbers live under the condition keys.

The same vehicleId with a different mileage or zipcode is a different price. The default ZIP is 73101, so an omitted ZIP is still a location, not a national average you chose.

The id has to be a vehicle id from VIN or trims. A make id or a model id will not price. Recalls can use the id with no mileage. This call cannot.

👉 Get your API key and price a vehicle: https://steadyapi.com/register

How to Read TikTok Video Comments Using SteadyAPI Oct 05, 2026

How to Read TikTok Video Comments Using SteadyAPI

Read TikTok comments 20 at a time. Video 7106594312292453675 has 1269 comments. The next cursor is the string 20.

How to Look Up a Crypto Profile Using SteadyAPI Oct 09, 2026

How to Look Up a Crypto Profile Using SteadyAPI

Look up one coin by slug. Store the symbol, status, and website list. Quotes are a later call and use data, not body.

How to Read Stock Financials Using SteadyAPI Oct 09, 2026

How to Read Stock Financials Using SteadyAPI

Annual income, balance sheet, and cash flow for one ticker. Amounts come back as formatted strings in three tables.

How to Read AliExpress Reviews Using SteadyAPI Oct 06, 2026

How to Read AliExpress Reviews Using SteadyAPI

Learn how to read AliExpress reviews with SteadyAPI. Page buyer comments, ratings, and photos for one product.