车架号VIN

传入17位车辆识别码(车架号)VIN码来获取车辆的品牌、车型年款、出厂日期、发动机类型、排量、车系等多维度车辆参数

  • 低延迟
  • 免费试用 20 次

官网购买的套餐通过API调用时请使用“扣套餐次数”密钥进行调用

请求地址

GEThttps://api.shuxuntech.com/v1/vin/query

  • x-www-form-urlencoded
  • 200ms
  • 99.9%

¥0.035元 / 次

阶梯计价,用量越大单价越低

企业认证后额外赠送 666 次调用额度

01 — 接口说明

请求参数与返回结果

所有请求需在 header 中携带签名信息,body 参数按 x-www-form-urlencoded 提交

名称位置类型必填说明
appKeyheadstring是数勋分配appKey
timestampheadstring是unix时间毫秒值
signheadstring是签名,说明
vinquerystring是车架号

签名算法说明

数勋分配的appKey、当前unix时间毫秒值timestamp、数勋分配的appSecret、 按顺序拼接sha256加密得到sign,查看如下示例

appKey = aaa;timestamp = 1682476904289;appSecret = bbb;sign = sha256(appKey+timestamp+appSecret)

02 — 返回说明

返回结构与字段含义

顶层返回 code 与 msg,业务数据在 data 对象内,各字段含义见下方表格

返回字段描述

字段名类型描述
codestring错误码
msgstring错误描述
isFeeint是否计费(1:计费,0:不计费)
seqNostring调用流水号
dataobject返回数据

data对象说明

字段名类型描述
resultint查询结果,1:查询成功,2:无记录
infoobject车辆信息

info对象说明

字段名类型描述
gearboxinfoobject变速箱信息
logostring车辆图片
fueltypestring燃油类型
frontbraketypestring前制动类型
comfuelconsumptionstring油耗
enginemodelstring发动机型号(参考)
gearnumstring档位数
machineoilobject机油信息
lenstring长 mm
maxhorsepowerstring最大马力(Ps)
pricestring厂商指导价
parkingbraketypestring驻车制动类型
vinstring车架号
displacementstring排量(L)
brandstring品牌
environmentalstandardsstring排放标准
rearbraketypestring后制动类型
heightstring高 mm
drivemodestring驱动方式
ratedloadweightstring额定载质量
displacementmlstring排量(mL)
iscorrectstring1 VIN符合规则 0 VIN不符合规则
groupidstring车型组ID
weightstring重量,kg
chassisstring底盘
versionstring版本
groupnamestring车型组名称
yeartypestring年款
sizetypestring尺寸类型
seatnumstring座位数
doornumstring车门数
wheelbasestring轴距
namestring名称
geartypestring变速箱类型
cylindernumstring气缸数(个)
bodystructurestring车体结构
fuelgradestring燃油标号
caridstring车ID 对应车型详情API中的ID
manufacturerstring厂家名称
fuelmethodstring供油方式
enginestring发动机
bodytypestring车身型式
gearboxstring变速箱
fronttiresizestring前轮胎尺寸
maxpowerstring最大功率 KW
isimportstring是否是进口 0国产 1进口
reartiresizestring后轮胎尺寸
listdatestring上市日期
widthstring宽 mm
carlistarray车型列表
typenamestring车型名称 对应typeid
marketpricestring市场价

gearboxinfo变速箱信息说明

字段名类型描述
gearboxbrandstring变速箱品牌
jointstring接口型号
gravityoilstring重力加油量
gearboxmodelstring变速箱型号
mechanicaloilstring机械加油量

machineoil机油信息说明

字段名类型描述
volumestring参考用量
viscositystring粘稠度
levelstring质量等级
gradestring机油分类

carlist车型信息说明

字段名类型描述
namestring名称
typeidstring类型ID
typenamestring类型名称
caridstring车ID
manufacturerstring厂家名称
enginemodelstring发动机型号(参考)
doornumstring车门数
lenstring长 mm
pricestring厂商指导价
geartypestring变速箱类型
widthstring宽
heightstring高

code错误码说明

code说明
0成功
1参数错误
2无记录
3第三方服务异常
4签名错误
5余额不足
6调用频率超限
7账号停用
8接口已停用
9联系服务商开通接口权限
10ip不在白名单
11系统异常
12实名状态错误
99其他异常,具体返回为准

返回示例

正确返回

{    "code": "0",    "msg": "成功",    "isFee": 1,    "seqNo": "bc393r21lk7mz2i6rmgt5oyp33tbcks7",    "data": {        "result": 1,        "info": {            "gearboxinfo": { //变速箱信息                "gearboxbrand": "捷特科", //变速箱品牌                "joint": null, //接口型号                "gravityoil": "4L-5L", //重力加油量                "gearboxmodel": "RE0F10D/J***17E/JATCO", //变速箱型号                "mechanicaloil": "12L" //机械加油量            },            "logo": "https://img.shuxuntech.com/vin_logo/202402/1708504285067.png", //车辆图片            "fueltype": "汽油", //燃油类型            "frontbraketype": "通风盘式", //前制动类型            "comfuelconsumption": "8.4", //油耗            "enginemodel": "QR25", //发动机型号(参考)            "gearnum": "7", //档位数            "machineoil": { //机油信息                "volume": "4.6L", //参考用量                "viscosity": "0W-20", //粘稠度                "level": "SP", //质量等级                "grade": "全合成" //机油分类            },            "len": "4897", //长 mm            "maxhorsepower": "186", //最大马力(Ps)            "price": "27.13万", //厂商指导价            "parkingbraketype": "脚刹", //驻车制动类型            "vin": "LGBR4DE43***0247", //车架号            "displacement": "2.5L", //排量(L)            "brand": "日产", //品牌            "environmentalstandards": "国六", //排放标准            "rearbraketype": "通风盘式", //后制动类型            "height": "1691", //高 mm            "drivemode": "前置前驱", //驱动方式            "ratedloadweight": null, //额定载质量            "displacementml": "2488", //排量(mL)            "iscorrect": 1, //1 VIN符合规则 0 VIN不符合规则            "groupid": "3887", //车型组ID            "weight": "1700", //重量,kg            "chassis": null, //底盘            "version": "智联豪华", //版本            "groupname": "*** 2.5L(2015.08-)", //车型组名称            "yeartype": "2021", //年款            "sizetype": "中型SUV", //尺寸类型            "seatnum": "5", //座位数            "doornum": "5", //车门数            "wheelbase": "2830", //轴距            "name": "*** 2021款 2.5L 两驱 智联豪华版", //名称            "geartype": "无级变速(CVT)", //变速箱类型            "cylindernum": "4", //气缸数(个)            "bodystructure": "承载式", //车体结构            "fuelgrade": "92号", //燃油标号            "carid": 132868, //车ID 对应车型详情API中的ID            "manufacturer": "东风日产", //厂家名称            "fuelmethod": "多点电喷", //供油方式            "engine": "QR25", //发动机            "bodytype": "SUV", //车身型式            "gearbox": "CVT无级变速(模拟7挡)", //变速箱            "fronttiresize": "235/65 R18", //前轮胎尺寸            "maxpower": "124", //最大功率 KW            "isimport": 0, //是否是进口 0国产 1进口            "reartiresize": "235/65 R18", //后轮胎尺寸            "listdate": "2020-08-13", //上市日期            "width": "1908", //宽 mm            "carlist": [ //车型列表 可能的车型                {                    "name": "*** 2021款 2.5L 两驱 智联豪华版",//名称                    "typeid": 1985, //类型ID                    "typename": "***", //类型名称                    "carid": 132868 //车ID 对应车型API中的ID,                    "manufacturer": "长沙***科技发展股份有限公司", //厂家名称                    "enginemodel": "YCA07260N-60;YCA***45N-60;YCA0***0N-60;YCA07190N-60",//发动机型号(参考)                    "doornum": "", //车门数                    "len": "9220", //长 mm                    "price": "79.5万", //厂商指导价                    "geartype": "手动档", //变速箱类型                    "width": "2500", //宽                    "height": "3070" //高                }            ],            "typename": "***", //车型名称 对应typeid            "marketprice": "22.13万" //市场价        }    }}

错误返回

{    "code": "1",    "msg": "参数错误",    "isFee": 0,    "seqNo": null,    "data": null}

03 — 代码示例

七种语言,复制即用

签名规则:sha256(appKey + timestamp + appSecret),下列示例已包含完整签名流程

VinQueryDemo.java
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.security.MessageDigest;

/**
 * VIN车架号查询 - Java 示例代码
 * 接口地址:https://api.shuxuntech.com/v1/vin/query
 *
 * 说明:本示例只使用 JDK 原生 API(java.net / java.security),不依赖任何第三方 jar 包,
 *      也不需要本项目的工具类,复制到本地即可编译运行:
 *          javac VinQueryDemo.java
 *          java VinQueryDemo
 */
public class VinQueryDemo {

    /** 数勋分配的 appKey,请替换为您自己的 appKey */
    private static final String APP_KEY = "您的appKey";
    /** 数勋分配的 appSecret,请替换为您自己的 appSecret */
    private static final String APP_SECRET = "您的appSecret";
    /** 接口地址 */
    private static final String API_URL = "https://api.shuxuntech.com/v1/vin/query";
    /** 车架号 */
    private static final String VIN = "";

    public static void main(String[] args) throws Exception {
        // 1、当前 unix 时间毫秒值,服务端要求与服务器时间相差不能超过 5 分钟
        String timestamp = String.valueOf(System.currentTimeMillis());

        // 2、签名:按顺序拼接 appKey + timestamp + appSecret 后做 sha256,得到小写十六进制字符串
        String sign = sha256Hex(APP_KEY + timestamp + APP_SECRET);

        // 3、业务参数,拼到 url 的 query 里
        String query = "vin=" + urlEncode(VIN);
        String url = API_URL + (query.isEmpty() ? "" : "?" + query);

        // 4、发起 GET 请求,appKey、timestamp、sign 放在请求头
        HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();
        conn.setRequestMethod("GET");
        conn.setRequestProperty("appKey", APP_KEY);
        conn.setRequestProperty("timestamp", timestamp);
        conn.setRequestProperty("sign", sign);
        conn.setConnectTimeout(10000);
        conn.setReadTimeout(20000);

        int status = conn.getResponseCode();
        // 5、读取返回内容:报错时读错误流,避免只拿到一个异常看不到原因
        InputStream in = (status >= 200 && status < 300) ? conn.getInputStream() : conn.getErrorStream();
        String result = readAll(in);
        conn.disconnect();

        System.out.println("HTTP状态码=" + status);
        System.out.println("返回结果=" + result);
    }

    /**
     * sha256 加密,返回小写十六进制字符串
     * 服务端校验签名用的就是这个算法(小写十六进制)
     */
    private static String sha256Hex(String content) throws Exception {
        byte[] bytes = MessageDigest.getInstance("SHA-256").digest(content.getBytes("UTF-8"));
        StringBuilder sb = new StringBuilder(bytes.length * 2);
        for (byte b : bytes) {
            sb.append(Character.forDigit((b >> 4) & 0xF, 16));
            sb.append(Character.forDigit(b & 0xF, 16));
        }
        return sb.toString();
    }

    /** url 编码,中文参数需要编码 */
    private static String urlEncode(String value) throws Exception {
        return URLEncoder.encode(value, "UTF-8");
    }

    /** 读取输入流内容 */
    private static String readAll(InputStream in) throws Exception {
        if (in == null) {
            return "";
        }
        StringBuilder sb = new StringBuilder();
        BufferedReader reader = new BufferedReader(new InputStreamReader(in, "UTF-8"));
        try {
            String line;
            while ((line = reader.readLine()) != null) {
                sb.append(line);
            }
        } finally {
            reader.close();
        }
        return sb.toString();
    }
}

04 — 在线调试

先调通,再决定

用你自己的数据发一次真实请求,表单字段随接口定义自动生成,返回结果附字段注释

GEThttps://api.shuxuntech.com/v1/vin/query按次计费 · 优先扣套餐次数

请求参数

按接口定义自动生成

  • vin*车架号

appKey / timestamp / sign调用时自动按 sha256 生成,无需手填

appKey=未获取 · timestamp=实时生成 · sign=自动生成

这是真实调用,会消耗套餐次数或账户余额; 请勿用真实证件信息反复试调

调不通时先看这里错误码与返回字段的完整说明见上方「02 — 返回说明」;签名口径与「03 — 代码示例」完全一致,可直接复制使用。

返回结果

点击左侧「提交并调用接口」,参数会就地组装、按文档口径签名后直接请求接口, 返回的 JSON 显示在这里。
在线调试使用你自己的 appKey,按实际调用计费。

返回结果是纯 JSON,字段含义见上方「02 — 返回说明」字段类型与取值说明以「02 — 返回说明」的字段表为准;错误码的完整定义同样在那一节。

05 — 产品价格

阶梯计价,用多少买多少

单次价格随调用量阶梯下降,大档位单价最低

调用量价格单价
20 次¥ 0¥ 0
100 次¥ 6¥ 0.06
5,000 次¥ 280¥ 0.056
10,000 次¥ 500¥ 0.05
50,000 次¥ 2,000¥ 0.04
100,000 次¥ 3,800¥ 0.038
200,000 次¥ 7,400¥ 0.037
500,000 次¥ 18,000¥ 0.036
1,000,000 次¥ 35,000¥ 0.035