# 车辆违法查询 · 车辆违章记录查询

> 本文档为机器可读 Markdown，便于 AI / SDK 自动对接。页面原文：https://www.wapi.cn/api_detail/65/173.html
> 纯文本地址：`https://www.wapi.cn/api_detail/65/173.html?format=md`

## 概览

- **接口名称**：车辆违章记录查询
- **子接口**：车辆违法查询（ID `173`）
- **接口简介**：全国车辆违章记录查询，支持大车小车,新能源大小车等违章查询,返回车辆违章记录,违章时间,违章行为,是否缴纳滞留金,扣分等数据。官方直连，目前已覆盖 全国三百多个城市
- **计费说明**：按次
- **请求地址**：`https://uaqy.api.storeapi.net/pyi/65/173`（支持 http/https）
- **请求方式**：`POST,GET`
- **返回格式**：`json,xml`
- **Content-Type（POST）**：`application/x-www-form-urlencoded;charset=utf-8`

## 请求参数

| 名称 | 必填 | 类型 | 说明 | 示例 |
| --- | --- | --- | --- | --- |
| `appid` | 是 | String | 应用ID，在后台我的应用查看或者添加 | 1 |
| `car_no` | 是 | String | 查询的车牌号,必须大写 | 粤AJ44E6 |
| `car_type` | 是 | String | 车辆类型:查看车辆类型说明 | 02 |
| `engine_number` | 是 | String | 发动机号 字母必须大写 | AD50EG081600062 |
| `format` | 否 | String | 返回数据格式类型，每个接口已经说明支持返回格式:json,xml, jsonp调用方法说明 | json |
| `frame_number` | 是 | String | 车架号 字母必须大写 | LNBSCC3H8GF308384 |
| `sign` | 是 | String | 1.使用Md5方式验证，参数按一定规则md5后返回的字符串，详情点击这里阅读 2.使用Hash验证方式，直接跟上密钥即可。如何设置hash验证 通过我的应用里面修改验证方式 | 52a32be274a5c537bbf7a53e2d66c09f |

## 签名（MD5）

按参数名排序后拼接「键名+值」，空值不参与；末尾直接追加 32 位密钥（密钥不写键名）：

```
sign = MD5(appid1car_no粤AJ44E6car_type02engine_numberAD50EG081600062formatjsonframe_numberLNBSCC3H8GF308384{secret})
```

说明：示例中 `appid` 默认为 `1`，请替换为「我的应用」中的 appid；密钥为应用 Secret。

## 返回参数

| 名称 | 必填 | 类型 | 说明 | 示例 |
| --- | --- | --- | --- | --- |
| `carNo` | 否 | String | 查询的车牌号码 | 闽DX009U |
| `codeid` | 否 | Integer | 状态码，返回10000状态都会进行计费。具体说明可查看状态码说明 | 10000 |
| `colOrgan` | 否 | String | 采集机构 |  |
| `data` | 否 | Array | 数据集合 |  |
| `decisionNum` | 否 | String | 决定书编号 |  |
| `description` | 否 | String | 状态描述 | 违章查询成功 |
| `fineTotal` | 否 | Ineger | 违法罚款合计 | 0 |
| `handleNum` | 否 | String | 处理编号 | e0f838560b99462279c6be29588225 |
| `handleSign` | 否 | Ineger | 处理标记，返回值：1：未处理 未缴费 2：已处理 未缴费 3：已处理 已缴费 为空或不存在值时，默认为：未处理 未缴费。 | 1 |
| `integralTotal` | 否 | Ineger | 违法积分合计 | 2 |
| `message` | 否 | String | 请求状态说明 | 返回成功 |
| `monitorNum` | 否 | String | 监控编号 | 4406147906221925 |
| `onlineHandle` | 否 | Ineger | 在线处理，返回值： 1：可以处理 2：不支持处理 为空或不存在结果时，默认为：不支持处理。 | 1 |
| `res` | 否 | String | 返回的状态 | 1 |
| `retdata` | 否 | Array | 回数据集合,可能是数据、对象或者字符串 |  |
| `time` | 否 | String | 请求时传递的当前服务器时间戳 | 1557294956 |
| `vioAction` | 否 | String | 违法行为 | 机动车通过有灯控路口时，不按所需行进方向驶入导向车道的 |
| `vioAddress` | 否 | String | 违法地址 | 季华六路与南海大道交叉路口 |
| `vioCityName` | 否 | String | 违法所在城市名称 |  |
| `vioCityNo` | 否 | String | 违法所在城市代码，同全国标准的行政区划代码 |  |
| `vioCode` | 否 | String | 违法代码 | 1208 |
| `vioFine` | 否 | String | 违法罚款 |  |
| `vioNum` | 否 | Ineger | 违法条数 | 1 |
| `vioScore` | 否 | String | 违法记分 | 2 |
| `vioTime` | 否 | String | 违法时间 | 2017-10-29 02:39:17 |

## JSON 返回示例

```json
{
    "codeid": "10000",
    "message": "返回成功",
    "retdata": {
        "description": "违章查询成功",
        "carNo": "闽DX009U",
        "vioNum": "1",
        "fineTotal": "0",
        "integralTotal": "2",
        "data": [
            {
                "res": 1,
                "vioTime": "2017-10-29 02:39:17",
                "vioAddress": "季华六路与南海大道交叉路口",
                "vioAction": "机动车通过有灯控路口时，不按所需行进方向驶入导向车道的",
                "vioFine": "",
                "vioScore": "2",
                "vioCityName": "",
                "vioCityNo": "",
                "vioCode": "1208",
                "colOrgan": "",
                "decisionNum": "",
                "monitorNum": "4406147906221925",
                "handleSign": "1",
                "handleNum": "e0f838560b99462279c6be29588225",
                "onlineHandle": "1"
            }
        ]
    },
    "time": 1557294956
}
```

## 状态码说明

| 状态码 | 说明 |
| --- | --- |
| `10000` | 返回成功 |
| `10001` | appid必须指定，可以我的应用里面查看 |
| `10002` | sign值必须指定，加密规则请前往帮助中心查看 |
| `10003` | sign值验证不通过，加密规则请前往帮助中心查看 |
| `10004` | 时差不能超过10分钟，可以不传递这个参数，注意时间戳单位是秒 |
| `10005` | appid错误，请检查appid值,前往会员中心->我的应用查看或添加 |
| `10006` | 当前IP地址未授权，请前往用户中心->我的应用添加ip{@info} |
| `10007` | 应用被禁用，请联系客服处理 |
| `10008` | 应用内没有该接口，请到我的应用里面添加这个接口 |
| `10009` | api接口不存在 |
| `10010` | 您没有添加该api接口 |
| `10011` | api已经到期 |
| `10012` | 没有订购任何api,请前往购买后再操作 |
| `10013` | 该接口已经暂停使用 |
| `10014` | 未知的错误，可以联系客服处理 |
| `10015` | 参数个数错误 |
| `10019` | {@info} |
| `10017` | time必须是整型 |
| `10018` | 次数不足 |
| `10020` | 子接口不存在,可能已经被关闭 |
| `10021` | 服务器发生错误 |
| `10022` | 帐户余额不足，请充值！ |
| `10023` | 订单提交成功，等待回调结果 |
| `10024` | 调试模式数据 |
| `10025` | 查无数据 |

## 对接提示

1. 先在挖数据（wapi.cn）创建应用，获取 `appid` 与密钥。
2. 按上方参数组装请求，计算 `sign` 后调用接口地址。
3. 可用在线测试工具：`https://www.wapi.cn/api_debug/65/173.html`
