VIN 码可以查询车辆基础信息,二手车交易、车险、车辆贷款租赁、汽修等汽车相关行业,常需要批量解析 VIN 码支来撑业务开展。但手动输入效率低易输错,导致后续统计、对账混乱。车辆每年更新速度快自己建立数据库成本高,更新维护很麻烦。
一、应用场景
- 二手车平台:车辆信息自动建档,减少人工录入
- 保险行业:投保、定损环节车辆信息核验
- 汽车售后 / 维保:快速识别车辆配置,匹配配件
- 车辆风控系统:批量车辆信息核验
二、接口一览
戳这里查看
探数的VIN码查询API,输入17位VIN码,可以查询到以下信息:
| 名称 | 类型 | 说明 |
|---|---|---|
| matching_mode | int | 匹配模式 1 标准车型 2 公告车型 |
| is_commercial | int | 是否商用 1 是 0 否 |
| cid | string | 车ID,车辆车型大全接口 可查看该车所有配置信息 |
| brand_name | string | 品牌名称 |
| series_name | string | 车系 |
| name | string | 车型车款 |
| year | string | 年款 |
| price | string | 厂家指导价 |
| gearbox | string | 变速箱 |
| geartype | string | 变速箱类型 |
| engine_model | string | 发动机型号 |
| driven_type | string | 驱动方式 |
| displacement_ml | string | 排量(mL) |
| displacement | string | 排量(L) |
| nedczhyh | string | 油耗 |
| effluent_standard | string | 环保标准 |
| scale | string | 车辆级别 |
| csjg | string | 车身结构 |
| cms | string | 车门数(个) |
| zws | string | 座位数(个) |
| market_date | string | 上市时间 |
| stop_date | string | 停产日期 |
| length | string | 长度(mm) |
| width | string | 宽度(mm) |
| high | string | 高度(mm) |
| wheelbase | string | 轴距(mm) |
| trackfront | string | 前轮距(mm) |
| trackrear | string | 后轮距(mm) |
| full_weight | string | 整备质量(kg) |
| front_tyre_size | string | 前轮胎规格 |
| rear_tyre_size | string | 后轮胎规格 |
| rlxs | string | 燃料形式 |
| ryxh | string | 燃油标号 |
| gearbox_number | string | 变速箱号 |
| chassis_number | string | 底盘号 |
| model_list | object | 可能的销售车型列表 |
| full_weight_max | string | 最大满载质量(kg) |
数据来源于阿里云市场
model_list返回可能的销售车型列表,例:运动版、旗舰版商用车额外字段:总质量、核定载质量、准牵引总质量、车辆类型
数据定时更新,查得率高达95%以上
三、Json返回示例
{
"code": 1,
"msg": "操作成功",
"data": {
"vin": "LSJA26666666039980",
"matching_mode": 1,
"is_commercial": 0,
"cid": "50146",
"brand_name": "荣威",
"manufacturer": "上汽集团",
"series_name": "荣威RX5",
"name": "2021款 PLUS 330TGI 自动国潮智享版",
"year": "2021",
"price": "12.28万",
"market_price": "12.28万",
"gearbox": "7挡湿式双离合",
"geartype": "湿式双离合变速箱(DCT)",
"engine_model": "15C4E",
"driven_type": "前置前驱",
"displacement_ml": "1490",
"displacement": "1.5",
"nedczhyh": "6.9",
"effluent_standard": "国VI",
"scale": "紧凑型SUV",
"csjg": "SUV",
"cms": "5",
"zws": "5",
"market_date": "2021.07",
"stop_date": "",
"length": "4571",
"width": "1855",
"high": "1719",
"wheelbase": "2708",
"trackfront": "1574",
"trackrear": "1593",
"full_weight": "1539",
"full_weight_max": "1972",
"full_weight_zz": "",
"front_tyre_size": "235/45 R19",
"rear_tyre_size": "235/45 R19",
"rlxs": "汽油",
"ryxh": "92号",
"gearbox_number": "",
"chassis_number": "",
"model_list": [
{
"cid": "50146",
"brand_name": "荣威",
"series_name": "荣威RX5",
"name": "2021款 PLUS 330TGI 自动国潮智享版"
},
{
"cid": "50147",
"brand_name": "荣威",
"series_name": "荣威RX5",
"name": "2021款 PLUS 330TGI 自动国潮智臻版"
},
{
"cid": "50155",
"brand_name": "荣威",
"series_name": "荣威RX5",
"name": "2021款 PLUS 300TGI 自动Ali国潮旗舰荣麟版"
},
{
"cid": "50145",
"brand_name": "荣威",
"series_name": "荣威RX5",
"name": "2021款 PLUS 330TGI 手动国潮智享版"
},
{
"cid": "50151",
"brand_name": "荣威",
"series_name": "荣威RX5",
"name": "2020款 20T 自动4G互联百万款"
},
{
"cid": "50154",
"brand_name": "荣威",
"series_name": "荣威RX5",
"name": "2021款 PLUS 300TGI 自动Ali国潮豪华荣麟版"
}
]
}
}
四、接入要点
前置校验:前端先校验 VIN 长度 = 17,去除 I/O/Q 等非法字符;
缓存策略:VIN 本地缓存,减少调用量;
版本选型:
私家车 / 二手车平台:选乘用车 VIN
货车、重卡、车队、货运保险:需要商用车专用 VIN 接口
错误码:VIN 格式错误、无匹配数据、密钥错误
| 错误码 | 说明 |
|---|---|
| 206601 | 缺少必要参数 |
| 206602 | 未找到相关数据信息 |
| 206603 | 无解码结果 |
五、配套相关 API(常一起使用)
- VIN 图片 OCR 识别:图片识别车架号文字
- 车辆年检、交强险查询(单独接口)
- 车型库查询
六、Java快速接入示例
public static void main(String[] args) {
String host = "https://tsvin.market.alicloudapi.com";
String path = "/vin/index";
String method = "GET";
String appcode = "你自己的AppCode";
Map<String, String> headers = new HashMap<String, String>();
//最后在header中的格式(中间是英文空格)为Authorization:APPCODE
headers.put("Authorization", "APPCODE " + appcode);
Map<String, String> querys = new HashMap<String, String>();
querys.put("vin", "LSJA266666669980");
try {
/**
* 重要提示如下:
* HttpUtils请从
* https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/src/main/java/com/aliyun/api/gateway/demo/util/HttpUtils.java
* 下载
*
* 相应的依赖请参照
* https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/pom.xml
*/
HttpResponse response = HttpUtils.doGet(host, path, method, headers, querys);
System.out.println(response.toString());
//获取response的body
//System.out.println(EntityUtils.toString(response.getEntity()));
} catch (Exception e) {
e.printStackTrace();
}
}