您手中有一个VIN,并且需要在周五之前为该车辆在您的应用程序中提供一个可辩护的市场价值。在本指南中,您将使用curl向车辆价值计算器API发出真实请求,解析Node.js中的JSON,并了解您可以发送到生产的字段(平均价格、分布区间、确定性、里程调整等)。
车辆价值计算器API的功能
车辆价值计算器API估算特定车辆(通过VIN识别)的市场价格,并提供支持数据,例如观察期、样本大小、标准偏差和价格分布。它还提供帮助端点以列出支持的制造商和型号。
开发人员使用它来提供以旧换新的报价、列出价格建议、承保检查和车队再营销仪表板。您提供一个VIN,API返回您可以直接放入UI小部件或定价逻辑的核心统计数据。
在Zyla API Hub上开始
所有调用都通过Zyla API Hub进行。打开API的列表,订阅,并在您的请求头中使用Bearer令牌:
- 访问市场项目并点击开始7天试用(或订阅)以获取您的密钥: 在车辆价值计算器API上开始7天试用
- 身份验证通过Authorization: Bearer YOUR_API_KEY
- 计费为订阅+配额(不是按调用计费)。对于首次集成,预计有7天的试用或50个请求。没有免费计划;请查看API页面以获取当前访问选项和定价。
Zyla API Hub在一个帐户和一个API密钥下托管超过10,000个公共API,因此您可以将其他数据源插入您的堆栈,而无需管理多个身份验证流程。
您将调用的端点
以下是Zyla API Hub上车辆价值计算器API公开的端点。请准确使用这些URL和方法,并在Authorization头中传递您的API密钥。
获取车辆价格数据
获取给定VIN的价格统计数据。
- 方法:GET
- URL:https://zylalabs.com/api/3624/vehicle-value-calculator-api/4063/get-vehicle-price-data
- 所需查询参数:vin(字符串)。示例:JNKCA31A61T027494
- 描述:插入VIN以接收市场定价指标。API支持可选参数,例如一般情况下的里程(公里),但此处仅记录vin。默认的里程假设为50,000公里,除非服务另行调整。
官方curl示例:
curl -s -X GET "https://zylalabs.com/api/3624/vehicle-value-calculator-api/4063/get-vehicle-price-data?vin=JNKCA31A61T027494"
-H "Authorization: Bearer YOUR_API_KEY"
官方JSON示例响应:
{
"status": true,
"code": 200,
"data": {
"vin": "JNKCA31A61T027494",
"success": true,
"id": "2001_infiniti_i30_luxury",
"vehicle": "2001 Infiniti I30 Luxury",
"mean": 4427.14,
"stdev": 1066,
"count": 18,
"mileage": 100000,
"certainty": 91,
"period": [
"2024-06-15",
"2024-12-04"
],
"prices": {
"average": 4427.14,
"below": 3360.23,
"above": 5494.05,
"distribution": [
{
"group": {
"min": 2095,
"max": 2350,
"count": 2
}
},
{
"group": {
"min": 2350,
"max": 2690,
"count": 2
}
},
{
"group": {
"min": 2690,
"max": 3555,
"count": 2
}
},
{
"group": {
"min": 3555,
"max": 3999,
"count": 2
}
},
{
"group": {
"min": 3999,
"max": 4200,
"count": 2
}
},
{
"group": {
"min": 4200,
"max": 4250,
"count": 1
}
},
{
"group": {
"min": 4250,
"max": 4500,
"count": 2
}
},
{
"group": {
"min": 4500,
"max": 4990,
"count": 2
}
},
{
"group": {
"min": 4990,
"max": 5250,
"count": 2
}
},
{
"group": {
"min": 5250,
"max": 5697,
"count": 1
}
}
]
},
"adjustments": {
"mileage": {
"average": 153135.17,
"input": 100000,
"adjustment": 463
}
}
},
"message": "数据成功获取!"
}
如何阅读此内容:
- data.vehicle和data.id标识车辆。
- data.mean和data.prices.average是主要的平均价格。单位是数值价格;在您的应用中直接使用它们。如果您显示货币,请在您的UI中明确标记,因为响应未提供货币代码。
- data.prices.below和data.prices.above定义了围绕平均值的下限和上限价格参考。
- data.prices.distribution是一个跨价格范围的直方图,具有最小/最大边界和样本计数。
- data.count是用于估算的观察次数。data.stdev是价格的标准偏差。
- data.period包含界定观察窗口的ISO-8601日期。
- data.certainty是一个信心指标(越高越好),您可以在用户体验中显示或用于要求手动审核。
- data.adjustments.mileage显示里程输入、平均参考和应用于估算的里程调整。里程以公里为单位表示。
获取制造商
检索所有支持的车辆制造商。
- 方法:GET
- URL:https://zylalabs.com/api/3624/vehicle-value-calculator-api/4064/get-makers
- 参数:未记录。
curl:
获取型号
检索给定制造商的所有型号。
- 方法:GET
- URL:https://zylalabs.com/api/3624/vehicle-value-calculator-api/4065/get-models
- 所需查询参数:maker(字符串)。示例:audi
curl:
Node.js:首次请求和JSON处理
下面的代码片段调用获取车辆价格数据,验证响应,并提取您通常会持久化或在UI中呈现的字段。它使用上面显示的确切端点和参数值。
import fetch from "node-fetch";
const API_KEY = process.env.ZYLA_API_KEY; // 在此处设置YOUR_API_KEY
const VIN = "JNKCA31A61T027494";
async function fetchVehiclePriceData(vin) {
const url = `https://zylalabs.com/api/3624/vehicle-value-calculator-api/4063/get-vehicle-price-data?vin=${encodeURIComponent(vin)}`;
const res = await fetch(url, {
method: "GET",
headers: {
"Authorization": `Bearer ${API_KEY}`
},
// 如果您需要更严格的SLA,请考虑在此处使用控制器+超时。
});
if (!res.ok) {
const text = await res.text();
throw new Error(`HTTP ${res.status}: ${text}`);
}
const json = await res.json();
if (!json.status || !json.data || json.data.success !== true) {
throw new Error(`API error: ${JSON.stringify(json)}`);
}
return json.data;
}
function summarize(data) {
const {
vin,
vehicle,
mean,
stdev,
count,
mileage,
certainty,
period,
prices,
adjustments
} = data;
return {
vin,
vehicleLabel: vehicle,
stats: {
average: prices?.average ?? mean,
stdev,
count,
below: prices?.below,
above: prices?.above,
periodStart: period?.[0],
periodEnd: period?.[1],
certainty
},
mileage: {
inputKm: mileage,
referenceKm: adjustments?.mileage?.average,
appliedAdjustment: adjustments?.mileage?.adjustment
},
distribution: (prices?.distribution || []).map(bin => bin.group)
};
}
(async () => {
try {
const data = await fetchVehiclePriceData(VIN);
const summary = summarize(data);
console.log("车辆:", summary.vehicleLabel);
console.log("平均价格:", summary.stats.average);
console.log("区间:", summary.stats.periodStart, "到", summary.stats.periodEnd);
console.log("确定性:", summary.stats.certainty);
console.log("里程(公里):", summary.mileage.inputKm, "(参考:", summary.mileage.referenceKm, ")");
console.log("分布区间:", summary.distribution.length);
// 持久化到您的数据库或在您的API中返回。
} catch (err) {
console.error(err);
process.exit(1);
}
})();
错误处理和可靠性
- 状态:使用顶级HTTP代码和JSON代码/状态字段来分支逻辑。
- 重试:在瞬态错误(HTTP 5xx)上进行退避,并避免在客户端错误(HTTP 4xx)上进行重试循环。
- 缓存:价格数据通常不会每分钟更改。按VIN缓存短TTL以减少延迟和配额使用。响应包括观察期;将其视为信息,而不是缓存键。
实用集成说明
- 身份验证:始终发送Authorization: Bearer YOUR_API_KEY。
- 参数:对于获取车辆价格数据,传递vin。API可能接受可选的里程,但此处仅记录vin,因此除非在中心页面上列出,否则请勿添加额外参数。
- 单位和格式:
- 里程以公里为单位。
- 期间日期为ISO-8601(YYYY-MM-DD)。
- 价格数字为数值。如果您的UI需要货币符号,请在客户端应用它们。
- 速率和配额:使用基于订阅+配额模型(不是按调用计费)。首次集成通常使用7天试用或50个请求。请查看列表以获取当前限制。
端到端流程想法
以下是开发人员通常如何将端点连接在一起:
- 后端中的VIN查找路由调用获取车辆价格数据,并将结果按VIN存储,使用短TTL缓存。
- 您的UI呈现:
- 车辆标签(例如,2001 Infiniti I30 Luxury),
- 主要价格(data.prices.average),
- 作为建议列表范围的下限/上限,
- 来自prices.distribution的图表以传达市场差异,
- 作为信心徽章的确定性,
- 里程输入与参考和调整值的透明度。
- 使用获取制造商和获取型号来构建引导搜索流程,当用户没有VIN时,或验证库存条目。
您可以复制的其他curl
以下准备运行的curl调用对于设置Makefiles、Postman集合或烟雾测试非常有用。
- 获取车辆价格数据:
- 获取制造商:
- 获取型号(以Audi为例):
通过MCP从AI代理使用API
您还可以通过MCP兼容工具(Claude Code、Cursor、Windsurf)调用此API。将您的客户端指向MCP端点,并在查询字符串中包含您的Zyla API密钥:
- MCP端点:https://mcp.zylalabs.com/mcp?apikey=YOUR_API_KEY
- 文档和兼容性说明: MCP
在您的代理中,构造与上面显示的相同的HTTPS GET URL,并传递Authorization头。MCP允许您的代理按需检索车辆价格数据,而无需在您的工具链中嵌入另一个HTTP客户端。
安全性和部署检查清单
- 请勿提交YOUR_API_KEY。将其存储在您平台的秘密管理器或环境变量中。
- 对vin和制造商实施输入验证,以防止SSRF或日志注入。VIN是字母数字和固定长度的。
- 添加服务器端超时和电路断路器,以保护您的应用程序免受上游延迟的影响。
- 记录请求ID和响应摘要(而不是完整有效负载),以保持无PII的遥测。
常见问题解答
API是否需要VIN才能获取定价?
是的。获取车辆价格数据端点需要vin查询参数。
我可以在请求中调整里程吗?
里程是服务支持的可选因素,但此处仅记录vin作为请求参数。在构造请求时,请使用中心页面上记录的参数。
价格使用什么货币?
响应返回数值价格,而没有货币代码。如果您的UI需要货币标签,请根据您的业务上下文一致地应用。
我如何进行身份验证?
在每次调用列出的URL时发送Authorization: Bearer YOUR_API_KEY。
是否有免费计划?
没有。访问基于订阅+配额模型。对于首次集成,预计有7天的试用或50个请求;请查看API页面以获取当前访问选项和定价。
准备好发布了吗?在列表页面上订阅并运行上面的curl: 在车辆价值计算器API上开始7天试用。您第一次成功的响应将包括平均价格、分布区间、信心和您可以今天在应用中连接的里程调整。