概述
使用场景
经销商自己有一套系统,想在这个基础上扩充相关GPS功能。 经销商的客户的账号由经销商自己的系统管理,用于登录经销商的系统。 经销商系统的账号和汽车在线平台的账号对应关系,经销商自己管理,经销商使用汽车在线平台的账号来获取相应设备数据。设备IMEI由经销商自己的系统管理,经销商可根据imei获取设备数据。 经销商的应用服务器调用API接口。
使用方法
经销商提供他的几米平台登录账号和密码来获取appKey,appSecret 通过appkey、appSecret调用api接口获取访问令牌(access_token)。 经销商在应用服务器端使用该接口获取所需的数据。
协议格式
公共约定
约定
请求:Context-Type:application/x-www-form-urlencoded
时间统一采用UTC时间,国内是北京时间,格式
国外环境,时间是零时区UTC时间,格式
返回数据公共属性
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 结果码 |
| message | String | Code描述 |
Code解释
| code | 值 | 描述 |
|---|---|---|
| -1 | -1 | 系统繁忙 |
| 0 | 0 | 成功 |
| 1xxx | 1001 | 参数错误(缺少必选参数或格式错误),具体查看接口描述 |
| 1002 | 非法用户/非法设备(查询的账号或设备不是自己的或下级的) | |
| 1003 | 重复提交操作 | |
| 1004 | 非法访问,token异常!(token失效或不存在) | |
| 1005 | 非法访问,ip访问超过限定次数! | |
| 1006 | 非法访问,请求频率过高! | |
| 1007 | 非法访问,请求方法错误! | |
| 1008 | 非法访问,来路异常! | |
| 1009 | 非法访问,来路异常! | |
| 1010 | 无权限操作! | |
| 12001 | 创建平台账号操作失败 | |
| 12002 | 转移设备操作失败 | |
| 12003 | 创建电子围栏操作失败 | |
| 12004 | 删除电子围栏操作失败 | |
| 12005 | 发送指令失败 | |
| 12006 | 更新设备信息失败 | |
| 12007 | 当前围栏名称已存在 | |
| 12008 | 围栏超过创建个数 | |
| 12009 | 围栏名称存在特殊字符 | |
| 12010 | 保存围栏告警失败 | |
| 12011 | 非法用户,删除围栏失败 | |
| 12012 | 删除围栏失败 | |
| 12020 | 车辆创建失败 | |
| 12021 | 车辆更新失败 | |
| 12022 | 车辆删除失败 | |
| 12023 | 车辆移动失败 | |
| 12024 | 车辆绑定设备失败 | |
| 12025 | 车辆解绑设备失败 |
业务错误码
| 业务 | 错误码 | 描述 |
|---|---|---|
| 创建账号 | 213 | 账号已存在 |
| 214 | 操作账号不存在 | |
| 215 | 用户类型错误,可能原因:1,新建用户类型为空;2,新建用户类型不存在;3,当前登录用户无权限新加该类型用户 | |
| 100001 | 没有创建平台账号的权限 | |
| 转移设备 | 217 | 目标用户不存在 |
| 218 | 操作用户只能往下级用户转移/销售设备 | |
| 219 | imei列表不合法 | |
| 220 | imei数量超出限制 | |
| 修改设备 | 223 | 车辆图标无效 |
| 电子围栏 | 41001 | 超过机型支持围栏数 |
| 41002 | 围栏名已存在 | |
| 41003 | 设备不在线 | |
| 41004 | 电子围栏操作失败 | |
| 指令 | 225 | 超时 |
| 226 | 参数错误 | |
| 227 | 指令未正确执行 | |
| 228 | 设备不在线 | |
| 229 | 网络错误,连接断开等 | |
| 238 | 设备中断 | |
| 240 | 数据错误 | |
| 243 | 设备不支持 | |
| 252 | 设备忙 | |
| 255 | 设备成功 | |
| 车辆 | 230 | 车辆不存在 |
| 231 | 没有权限操作此车辆 | |
| 232 | 车辆不可删除 | |
| 233 | 车辆绑定IMEI错误 | |
| 234 | 车辆解绑IMEI错误 | |
| 235 | 车牌号重复 |
通信流程
API数据流程
API列表
协议详情
调用入口
调用 API的服务URL地址,文档中所有接口都使用该url访问
| 调用环境 | 服务地址(HTTP) |
|---|---|
| 国内正式环境 | http://fkapi.tuqiangol.com/route/rest |
认证
由几米服务平台给出api连接地址、有效的appkey和appSecret,用户通过
获取。
调用API时传入,并对请求参数进行签名,几米服务器端会验证
请求参数是否合法。
通用参数
| 参数名称 | 参数类型 | 是否必填 | 参数说明 | 取值说明 | 默认值 |
|---|---|---|---|---|---|
| method | String | 是 | API接口名称 | ||
| timestamp | String | 是 | 时间戳,格式为yyyy-MM-dd HH:mm:ss允许与系统时间误差正负10分钟,例如:2012-03-25 20:00:00 | ||
| app_key | String | 是 | 几米分给客户的APP_KEY | ||
| sign | String | 是 | API输入参数签名结果 | ||
| sign_method | String | 是 | 可选,指定签名方式。系统默认md5,支持方式有:md5 | md5 | md5 |
| v | String | 是 | 可选,指定API版本。系统默认1.0 | 1.0:进行签名校验 | |
| format | String | 是 | 可选,指定响应格式。系统默认json | json |
API签名
为了防止API调用过程中被黑客恶意篡改,调用任何一个API都需要携带签名,TOP服务端会根据请求参数,对签名进行验证,签名不合法的请求将会被拒绝。TOP目前支持的签名算法有: MD5(本接口通用参数里面sign_method的值为md5),签名大体过程如下:
对所有API请求参数(包括公共参数和业务参数,但除去sign参数和byte[]类型的参数),根据参数名称的ASCII码表的顺序排序。如: foo=1, bar=2, foo_bar=3, foobar=4排序后的顺序是bar=2, foo=1, foo_bar=3, foobar=4。
将排序好的参数名和参数值拼装在一起,根据上面的示例得到的结果为:bar2foo1foo_bar3foobar4
把拼装好的字符串采用utf-8编码,使用签名算法对编码后的字节流进行摘要。如果使用MD5算法,则需要在拼装的字符串前后加上app的secret后,再进行摘要,如:md5(secret+bar2foo1foo_bar3foobar4+secret)
将摘要得到的字节流结果使用十六进制表示,如: hex(“helloworld”.getBytes(“utf-8”)) = “68656C6C6F776F726C64”
说明:MD5是128位长度的摘要算法,用16进制表示,一个十六进制的字符能表示4个位,所以签名后的字符串长度固定为32个十六进制字符。
算法
JAVA代码示例:
public static String signTopRequest(Mapparams, String secret, String signMethod) throws IOException { // 第一步:检查参数是否已经排序 String[] keys = params.keySet().toArray(new String[0]); Arrays.sort(keys); // 第二步:把所有参数名和参数值串在一起 StringBuilder query = new StringBuilder(); if ("md5".equals(signMethod)) { query.append(secret); } for (String key : keys) { String value = params.get(key); if (StringUtils.areNotEmpty(key, value)) { query.append(key).append(value); } } // 第三步:使用MD5/HMAC加密 byte[] bytes; if ("hmac".equals(signMethod)) { bytes = encryptHMAC(query.toString(), secret); } else { query.append(secret); bytes = encryptMD5(query.toString()); } // 第四步:把二进制转化为大写的十六进制 return byte2hex(bytes); } public static byte[] encryptHMAC(String data, String secret) throws IOException { byte[] bytes = null; try { SecretKey secretKey = new SecretKeySpec(secret.getBytes("UTF-8"), "HmacMD5"); Mac mac = Mac.getInstance(secretKey.getAlgorithm()); mac.init(secretKey); bytes = mac.doFinal(data.getBytes("UTF-8")); } catch (GeneralSecurityException gse) { throw new IOException(gse.toString()); } return bytes; } public static byte[] encryptMD5(String data) throws IOException { return encryptMD5(data.getBytes("UTF-8")); } private static byte[] encryptMD5(byte[] bytes) throws IOException { MessageDigest md = null; try { md = MessageDigest.getInstance("MD5"); } catch (NoSuchAlgorithmException e) { throw new IOException(e.toString()); } return md.digest(bytes); } public static String byte2hex(byte[] bytes) { StringBuilder sign = new StringBuilder(); for (int i = 0; i < bytes.length; i++) { String hex = Integer.toHexString(bytes[i] & 0xFF); if (hex.length() == 1) { sign.append("0"); } sign.append(hex.toUpperCase()); } return sign.toString(); }
IOS代码示例:
#import "JAVAToOC.h"
#import <CommonCrypto/CommonDigest.h>
@implementation JAVAToOC
+ (NSString *)signToRequest:(NSDictionary *)params
secret:(NSString *)secret
signMethod:(NSString *)signMethod
{
//第一步:参数按ASCII码表排序
NSArray *keys = params.allKeys;
NSStringCompareOptions comparisonOptions =NSCaseInsensitiveSearch|NSNumericSearch|
NSWidthInsensitiveSearch|NSForcedOrderingSearch;
NSComparator sort = ^(NSString *obj1,NSString *obj2){
NSRange range =NSMakeRange(0,obj1.length);
return [obj1 compare:obj2 options:comparisonOptions range:range];
};
NSArray *keysSort = [keys sortedArrayUsingComparator:sort];
//第二步:把所有参数名和参数串在一起
NSMutableString *appendStr = [[NSMutableString alloc] init];
if ([@"md5" isEqualToString:signMethod]) {
[appendStr appendString:secret];
}
for (NSString *key in keysSort) {
NSString *value = params[key];
if (value) {
[appendStr appendString:[NSString stringWithFormat:@"%@%@",key,value]];
}
}
// 第三步:使用MD5加密
[appendStr appendString:secret];
NSString *md5Result = [self md5HexDigest:appendStr];
return md5Result;
}
//MARK - md5加密
+ (NSString *) md5HexDigest:(NSString *)str
{
const char *original_str = [str UTF8String];
unsigned char result[CC_MD5_DIGEST_LENGTH];
CC_MD5(original_str, strlen(original_str), result);
NSMutableString *hash = [NSMutableString string];
for (int i = 0; i < 16; i++)
[hash appendFormat:@"%02X", result[i]];
return [hash uppercaseString];
}
@end
获取accesstoken
接口说明
获取后续访问接口的令牌,1分钟内只能访请求1次,在有效期内访问token不变。
请求URL
本接口通用参数里面method的值为jimi.oauth.token.get
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名称 | 参数类型 | 是否必填 | 参数说明 | 取值说明 | 默认值 |
|---|---|---|---|---|---|
| user_id | String | 是 | 用户ID | ||
| user_pwd_md5 | String | 是 | 用户ID密码的MD5 | 使用commons-codec.jar DigestUtils.md5Hex(pwd.getBety()); | MD5结果是小写的 |
| expires_in | String | 是 | access token的有效期,以秒为单位 | 60-7200 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 结果 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| accessToken | String | 后续接口访问的访问令牌,对应到公司下的帐号 |
| expiresIn | String | 有效期 |
| account | String | 请求的账号 |
| appKey | String | 几米分给给客户的APP_KEY |
| refreshToken | String | 刷新令牌,用于更新accessToken |
| time | String | 令牌生成的时间 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": {
"appKey": "8FB345B8693CCD003CC2DAB123456789",
"account": "jimitest",
"accessToken": "7da3330ec28e3996b6ef4a7123456789",
"expiresIn": 60,
"refreshToken": "7da3330ec28e3996b6ef4a7123456789",
"time": "2017-06-15 10:00:00"
}
}
错误返回示例:
{"code":xxx,"message":"账号或密码错误"}
刷新accesstoken
接口说明
该接口用于在accessToken即将失效时,通过该接口强制更新令牌,1分钟内只能访请求1次。
请求URL
本接口通用参数里面method的值为jimi.oauth.token.refresh
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名称 | 参数类型 | 是否必填 | 参数说明 | 取值说明 | 默认值 |
|---|---|---|---|---|---|
| access_token | String | 是 | 授权的令牌 | ||
| refresh_token | String | 是 | 授权的刷新令牌 | ||
| expires_in | String | 是 | access token的有效期,以秒为单位 | 60-7200 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 结果 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| accessToken | String | 后续接口访问的访问令牌,对应到公司下的帐号 |
| expiresIn | String | 有效期 |
| account | String | 请求的账号 |
| appKey | String | 几米分给给客户的APP_KEY |
| refreshToken | String | 刷新令牌,用于更新accessToken |
| time | String | 令牌生成的时间 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": {
"appKey": "8FB345B8693CCD003CC2DAB123456789",
"account": "jimitest",
"accessToken": "7da3330ec28e3996b6ef4a7123456789",
"expiresIn": 60,
"refreshToken": "7da3330ec28e3996b6ef4a7123456789",
"time": "2017-06-15 10:00:00"
}
}
错误返回示例:
{"code":xxx,"message":"非法请求,token无效"}
创建平台账号
接口说明
为指定账号创建子账号。
请求URL
本接口通用参数里面method的值为jimi.user.child.createPlatformUsers
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名称 | 参数类型 | 是否必填 | 参数说明 | 取值说明 | 默认值 |
|---|---|---|---|---|---|
| access_token | String | 是 | 授权的令牌 | ||
| top_account | String | 是 | 上级账号 | 取值范围3-30字符 | |
| nick_name | String | 是 | 客户名称 | 取值范围3-50字符 | |
| account_type | String | 是 | 新增账号类型 | (8:代理商,9:机构)说明:代理商可建用户:代理商,机构;机构可建用户:机构 | |
| account | String | 是 | 登录账号 | 取值范围3-30字符 | |
| password | String | 是 | 密码,采用md5加密后的值,小写 | 一个32位固定值使用commons-codec.jar DigestUtils.md5Hex(pwd.getBety()); | |
| phone | String | 否 | 手机号 | 取值范围0-20字符 | |
| String | 否 | 邮箱 | 取值范围0-50字符 | ||
| contact | String | 否 | 联系人 | 取值范围0-50字符 | |
| company_name | String | 否 | 公司名 | 取值范围0-50字符 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 结果 |
正确返回示例:
{
"code": 0,
"message": "添加成功",
"result": null
}
错误返回示例:
{"code":12001,"message":"创建用户失败,结果码:213"}
根据账户,获取该账户下的所有子账户信息
接口说明
查询账号下的所有子账户信息。
请求URL
本接口通用参数里面 method的值为jimi.user.child.list
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 无 | 访问令牌,表明其是一个合法第三方 |
| target | String | 是 | 无 | 要查询的用户账号(获取token时使用的账户或者其子账户) |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的参数 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| account | String | 登录帐号 |
| name | String | 显示名称 |
| type | Int | 帐号类型 1:普通用户 |
| address | String | 所在地 |
| birth | String | 生日 |
| companyName | String | 公司名 |
| String | 邮箱 | |
| phone | String | 联系电话 |
| enabledFlag | Int | 标志:1可用,0不可用 |
| remark | String | 备注 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": [
{
"account": "123123",
"name": "测试",
"type": 8,
"displayFlag": 1,
"address": null,
"birth": "2017-04-22 00:00:00",
"companyName": "",
"email": "",
"phone": "",
"language": "zh",
"sex": 0,
"enabledFlag": 1,
"remark": null
}
]
}
错误返回示例:
{"code":xxx,"message":"查询的账号不存在"}
根据账户,获取该账户下的所有IMEI信息
接口说明
查询账户下所有设备信息。
请求URL
本接口通用参数里面method的值为jimi.user.device.list
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| target | String | 是 | 无 | 要查询的用户账号(获取token时使用的账户或者其子账户) |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| imei | String | 设备IMEI |
| deviceName | String | 设备名称 |
| mcType | String | 设备型号 |
| mcTypeUseScope | String | 机型使用范围(aotomobile:汽车 electromobile:电动车 personal:个人 pet:宠物 plane:飞机 others:其他) |
| equipType | String | 设备类型(WIRED:有线 WIRELESS:无线) |
| sim | String | Sim卡号 |
| expiration | String | 到期时间,格式yyyy-MM-dd HH:mm:ss |
| activationTime | String | 激活时间,格式yyyy-MM-dd HH:mm:ss |
| reMark | String | 备注 |
| vehicleName | String | 车辆名称 |
| vehicleIcon | String | 车辆图标 |
| vehicleNumber | String | 车牌号 |
| carFrame | String | 车架号 |
| driverName | String | 司机名称 |
| driverPhone | String | 司机电话 |
| engineNumber | String | 电机发动机号 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": [
{
"imei": "868120145233604",
"deviceName": "868120145233604",
"mcType": "GT300L",
"mcTypeUseScope": "personal",
"sim": "415451",
"expiration": "2037-04-01 23:59:59",
"activationTime": "2017-04-01 11:02:20",
"reMark": "test",
"vehicleName": null,
"vehicleIcon": "bus",
"vehicleNumber": "粤B3604",
"vehicleModels": null,
"carFrame": "2235",
"driverName": "driver",
"driverPhone": "13825036579",
"enabledFlag": 1,
"engineNumber": "8565674"
}
]
}
错误返回示例:
{"code":xxx,"message":"查询的账号不存在"}
根据账户,获取该账户下所有IMEI的最新定位数据
接口说明
获取一个账户名下所有设备最新位置信息。
请求URL
本接口通用参数里面method的值为jimi.user.device.location.list
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| target | String | 是 | 无 | 要查询的用户账号(获取token时使用的账户或者其子账户) |
| map_type | String | 否 | 无 | 如果要显示在百度地图上,map_type=BAIDU此时返回的经纬度将经过baidu校准方式校准 如果要显示在google地图上,map_type=GOOGLE,此时返回的经纬度将经过google校准方式校准 map_type如果不填,则返回原始经纬度 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result数据:
| 参数 | 类型 | 描述 |
|---|---|---|
| imei | String | 设备IMEI |
| deviceName | String | 设备名称 |
| icon | String | 车辆图标 |
| status | String | 设备状态 0,离线; 1,在线 |
| lat | Double | 经度 (如果设备过期,值为0) |
| lng | Double | 纬度 (如果设备过期,值为0) |
| expireFlag | String | 是否过期1-未过期 0-过期 |
| activationFlag | String | 是否激活1-激活 0-未激活 |
| posType | String | 卫星定位-GPS, 基站定位-LBS, WIFI定位-WIFI, 蓝牙定位-BEACON |
| gpsTime | String | GPS定位时间 |
| hbTime | String | 心跳时间 |
| speed | String | 速度 (单位:km/h) |
| accStatus | String | Acc状态 0:关闭 1:打开 |
| electQuantity | String | 设备电量(0-100),部分设备型号不支持 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": [
{
"imei": "868120145233604",
"deviceName": "868120145233604",
"icon": "bus",
"status": "0",
"posType": "GPS",
"lat": 22.577282,
"lng": 113.916604,
"hbTime": "2017-04-26 09:14:50",
"accStatus": "0",
"speed": "0",
"gpsTime": "2017-04-26 09:17:46",
"activationFlag": "1",
"expireFlag": "1",
"electQuantity": "60",
}
]
}
错误返回示例:
{"code":xxx,"message":"查询的账号不存在"}
根据IMEI获取最新定位数据
接口说明
获取单个或多个设备最新的位置信息
请求URL
本接口通用参数里面method的值为jimi.device.location.get
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imeis | String | 是 | 无 | 设备imei号,多个中间用英文逗号隔开; 如果设备过多,建议采用POST方式(一次最多100个IMEI) |
| map_type | String | 否 | 无 | 如果要显示在百度地图上,map_type=BAIDU此时返回的经纬度将经过baidu校准方式校准 如果要显示在google地图上,map_type=GOOGLE,此时返回的经纬度将经过google校准方式校准 map_type如果不填,则返回原始经纬度 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
| 参数 | 类型 | 描述 |
|---|---|---|
| imei | String | 设备IMEI |
| deviceName | String | 设备名称 |
| icon | String | 车辆图标 |
| status | String | 设备状态 0,离线; 1,在线 |
| lat | Double | 经度 (如果设备过期,值为0) |
| lng | Double | 纬度 (如果设备过期,值为0) |
| expireFlag | String | 是否过期 1-未过期 0-过期 |
| activationFlag | String | 是否激活 1-激活 0-未激活 |
| posType | String | 卫星定位-GPS, 基站定位-LBS, WIFI定位-WIFI, 蓝牙定位-BEACON |
| gpsTime | String | GPS定位时间 |
| hbTime | String | 心跳时间 UTC秒数(如果设备过期,值为0) |
| speed | String | 速度 (单位:km/h) |
| accStatus | String | Acc状态 0:关闭 1:打开 |
| electQuantity | String | 设备电量(0-100),部分设备型号不支持 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": [
{
"imei": "868120145233604",
"deviceName": "868120145233604",
"icon": "bus",
"status": "0",
"posType": "GPS",
"lat": 22.577282,
"lng": 113.916604,
"hbTime": "2017-04-26 09:14:50",
"accStatus": "0",
"speed": "0",
"gpsTime": "2017-04-26 09:17:46",
"activationFlag": "1",
"expireFlag": "1",
"electQuantity": "60",
}
]
}
错误返回示例:
{"code":xxx,"message":"非法设备"}
根据IMEI获取设备详细信息
接口说明
获取单个或多个设备的详细信息
请求URL
本接口通用参数里面method的值为jimi.open.device.getDetails
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imeis | String | 是 | 无 | 设备imei号,多个中间用英文逗号隔开; 如果设备过多,建议采用POST方式(一次最多100个IMEI) |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
| 参数 | 类型 | 描述 |
|---|---|---|
| imei | String | 设备IMEI |
| deviceName | String | 设备名称 |
| account | String | 所属用户账号 |
| activationTime | String | 激活时间 |
| expiration | String | 过期时间 |
| mcType | String | 机型 |
| sim | String | 卡号 |
| driverPhone | String | 司机电话 |
| driverName | String | 司机名称 |
| vehicleIcon | String | 车辆图标 |
| equipType | String | 设备类型(WIRED:有线 WIRELESS:无线) |
| mcTypeUseScope | String | 机型使用范围(aotomobile:汽车 electromobile:电动车 personal:个人 pet:宠物 plane:飞机 others:其他) |
| reMark | String | 备注 |
| vehicleName | String | 车辆名称 |
| vehicleNumber | String | 车牌号 |
| carFrame | String | 车架号 |
| idCard | String | 身份证 |
| engineNumber | String | 发动机号 |
| installTime | String | 安装时间 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": [
{
"imei": "987456123012358",
"deviceName": "123456788012354ui",
"account": "jimitest",
"activationTime": "2016-10-27 11:44:29",
"expiration": "2036-10-27 11:44:29",
"mcType": "ET200",
"driverPhone": "25",
"vehicleIcon": "taxi",
"equipType": "WIRED",
"mcTypeUseScope": "electromobile",
"reMark": "123456788012354",
"sn": "123456788012354",
"vehicleName": null,
"vehicleNumber": "123456788012354u",
"carFrame": "123456788012354",
"idCard": "123456788012354",
"engineNumber": "123456788012354",
"installTime": null,
}
]
}
错误返回示例:
{"code":xxx,"message":"非法设备"}
根据IMEI获取轨迹数据
接口说明
允许有线设备获取三个月内,时间跨度不超过2天的轨迹数据。
允许无线设备获取三个月内,时间跨度不超过60天的轨迹数据。
请求URL
本接口通用参数里面 method的值为jimi.device.track.list
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 无 | 访问令牌,表明其是一个合法第三方 |
| imei | String | 是 | 无 | 设备imei号(一次只能一个IMEI) |
| begin_time | String | 是 | 无 | 开始时间,格式为yyyy-MM-dd HH:mm:ss |
| end_time | String | 是 | 无 | 结束时间,格式为yyyy-MM-dd HH:mm:ss end_time不应大于当前时间。 |
| map_type | String | 否 | 无 | 如果要显示在百度地图上,map_type=BAIDU此时返回的经纬度将经过baidu校准方式校准 如果要显示在google地图上,map_type=GOOGLE,此时返回的经纬度将经过google校准方式校准 map_type如果不填,则返回原始经纬度 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result数据列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| lng | Double | 经度 |
| lat | Double | 纬度 |
| gps Time | String | gps定位时间 格式yyyy-MM-dd HH:mm:ss |
| direction | String | 方位,正北开始的一个360度的极坐标方向 |
| gpsSpeed | String | GPS速度 |
| posType | String | 定位类型1是卫星定位 2是基站定位 3是wifi定位 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": [
{
"lat": 22.577144898887813,
"lng": 113.91674845964586,
"gpsTime": "2017-04-26 00:00:58",
"direction": 0,
"gpsSpeed": -1,
"posType": 3
},
{
"lat": 22.57708,
"lng": 113.916631,
"gpsTime": "2017-04-26 00:01:30",
"direction": 184,
"gpsSpeed": 0,
"posType": 1
}
]
}
错误返回示例:
{"code":xxx,"message":"IMEI不存在{353419031939627}"}
{" code ":xxx,"message":"该设备已过期{353419031939627}"}
转移设备
接口说明
将账号上的设备转移到指定账号上。
请求URL
本接口通用参数里面 method的值为jimi.open.device.move
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| src_account | String | 是 | 无 | 原用户账号(必须是授权账号的下级) |
| dest_account | String | 是 | 无 | 目标用户账号(必须是授权账号的下级) |
| imeis | String | 是 | 无 | 设备imei列表,使用逗号分隔,最多支持500个 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
正确返回示例:
{
"code": 0,
"message": "转移设备成功",
"result": null
}
错误返回示例:
{"code":12002,"message":"转移设备失败,结果码:217"}
创建车辆信息
接口说明
指定账号下创建车辆信息。如果指定账号下存在相同的车牌号,则返回该车辆的信息,不对其进行更新操作。
请求URL
本接口通用参数里面 method的值为jimi.open.car.create
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| account | String | 是 | 无 | 绑定账号(包含子级账号) |
| carOwnerName | String | 是 | 无 | 车主姓名 |
| carPlateNumber | String | 是 | 无 | 车牌号(此项必须唯一,不可重复) |
| carOwnerPhone | String | 否 | 无 | 车主手机号 |
| cardType | String | 否 | 无 | 证件类型[IDCARD-身份证,PASSPORT-护照] |
| carOwnerIdCard | String | 否 | 无 | 车主证件号 |
| carModel | String | 否 | 无 | 车型 |
| carEngineNumber | String | 否 | 无 | 发动机号 |
| carFrameNumber | String | 否 | 无 | 车架号 |
| carType | String | 否 | 无 | 车辆类型[NEWCAR-新车;USEDCAR-二手车;IMPORTEDCAR-进口车] |
| loanMonth | String | 否 | 无 | 贷款期限(整数格式) |
| loanSum | String | 否 | 无 | 贷款额度(金额格式) |
| overallSum | String | 否 | 无 | 总评额度(金额格式) |
| salesman | String | 否 | 无 | 业务员 |
| homeAddress | String | 否 | 无 | 家庭住址 |
| workAddress | String | 否 | 无 | 工作单位地址 |
| sex | String | 否 | 1 | 性别[0-女,1-男],不填默认 1 |
| carColor | String | 否 | 无 | 车辆颜色 |
| loanDate | String | 否 | 无 | 贷款日期,格式:yyyy-MM-dd |
| repaymentType | String | 否 | 无 | 还款方式,[STAGES-等额本金, ONCE-先息后本] |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| carId | String | 车辆编号 |
| carOwnerName | String | 车主名称 |
| carPlateNumber | String | 车牌号 |
| carOwnerPhone | String | 车主手机号 |
| cardType | String | 证件类型[IDCARD-身份证,PASSPORT-护照] |
| carOwnerIdCard | String | 证件号码 |
| carModel | String | 车型 |
| carEngineNumber | String | 发动机号 |
| carFrameNumber | String | 车架号 |
| carType | String | 车辆类型[NEWCAR-新车;USEDCAR-二手车;IMPORTEDCAR-进口车] |
| loanMonth | Integer | 贷款期限 |
| loanSum | Double | 贷款额度 |
| overallSum | Double | 总评额度 |
| salesman | String | 业务员 |
| homeAddress | String | 家庭住址 |
| workAddress | String | 工作单位地址 |
| sex | String | 性别[0-女,1-男] |
| carColor | String | 车辆颜色 |
| loanDate | String | 贷款日期,格式:yyyy-MM-dd |
| repaymentType | String | 还款方式,[STAGES-等额本金, ONCE-先息后本] |
| bindAccount | String | 绑定账号 |
| createTime | String | 创建时间 |
正确返回示例:
{
"code": 0,
"message": "添加成功",
"result": {
"id": 5756,
"carOwnerName": "测试车主",
"carOwnerPhone": "12356456456465456456",
"cardType": "IDCARD",
"carOwnerIdCard": "4526011995132565221",
"carPlateNumber": "TX85512",
"carModel": "Tc1",
"carEngineNumber": "axsq123456",
"carFrameNumber": "axsq12345623",
"carType": "NEWCAR",
"createTime": "2018-05-23 19:03:56",
"overallSum": 18000,
"loanMonth": "12",
"loanSum": 15000,
"salesman": "wwq",
"homeAddress": "测试地址1",
"workAddress": "测试地址2",
"sex": 1,
"carColor": "蓝色",
"loanDate": "2018-08-15",
"repaymentType": "STAGES"
"bindAccount": "jimitest"
}
}
错误返回示例:
{"code":xxx,"message":"非法用户"}
修改车辆信息
接口说明
通过车辆ID更新车辆信息,可更新子账户下的车辆。请求参数为空的情况下,自动设置值为空或者0
请求URL
本接口通用参数里面 method的值为jimi.open.car.update
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| carId | String | 是 | 无 | 车辆ID |
| carOwnerName | String | 是 | 无 | 车主姓名 |
| carPlateNumber | String | 是 | 无 | 车牌号(此项必须唯一,不可重复) |
| carOwnerPhone | String | 否 | 无 | 车主手机号 |
| cardType | String | 否 | 无 | 证件类型[IDCARD-身份证,PASSPORT-护照] |
| carOwnerIdCard | String | 否 | 无 | 车主证件号 |
| carModel | String | 否 | 无 | 车型 |
| carEngineNumber | String | 否 | 无 | 发动机号 |
| carFrameNumber | String | 否 | 无 | 车架号 |
| carType | String | 否 | 无 | 车辆类型[NEWCAR-新车;USEDCAR-二手车;IMPORTEDCAR-进口车] |
| loanMonth | String | 否 | 无 | 贷款期限(整数格式) |
| loanSum | String | 否 | 无 | 贷款额度(金额格式) |
| overallSum | String | 否 | 无 | 总评额度(金额格式) |
| salesman | String | 否 | 无 | 业务员 |
| homeAddress | String | 否 | 无 | 家庭住址 |
| workAddress | String | 否 | 无 | 工作单位地址 |
| sex | String | 否 | 1 | 性别[0-女,1-男],不填默认 1 |
| carColor | String | 否 | 无 | 车辆颜色 |
| loanDate | String | 否 | 无 | 贷款日期,格式:yyyy-MM-dd |
| repaymentType | String | 否 | 无 | 还款方式,[STAGES-等额本金, ONCE-先息后本] |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
正确返回示例:
{
"code": 0,
"message": "编辑成功",
"result": null
}
错误返回示例:
{"code":xxx,"message":"车牌号已经存在"}
删除车辆信息
接口说明
通过车辆ID删除车辆信息,只有未绑定设备的车辆才可进行删除操作。
请求URL
本接口通用参数里面 method的值为jimi.open.car.delete
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| carId | String | 是 | 无 | 车辆ID |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
正确返回示例:
{
"code": 0,
"message": "删除车辆成功",
"result": null
}
错误返回示例:
{"code":230,"message":"车辆不存在"}
车辆转移
接口说明
指定账号进行车辆转移。
请求URL
本接口通用参数里面 method的值为jimi.open.car.move
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| carIds | String | 是 | 无 | 车辆ID,多个用逗号隔开 |
| account | String | 是 | 无 | 转移账号(包含子级账号) |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
正确返回示例:
{
"code": 0,
"message": "转移车辆成功",
"result": null
}
错误返回示例:
{"code":230,"message":"车辆不存在"}
车辆绑定IMEI设备
接口说明
对指定车辆进行IMEI号的绑定操作,已安装的设备不可进行绑定。
请求URL
本接口通用参数里面 method的值为jimi.open.car.device.bind
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| account | String | 是 | 无 | 账号,包含子级账号(车辆ID与IMEI必须在此账号下) |
| carId | String | 是 | 无 | 车辆ID |
| imei | String | 是 | 无 | 设备imei号 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
正确返回示例:
{
"code": 0,
"message": "绑定设备成功",
"result": null
}
错误返回示例:
{"code": 233,"message": "IMEI不存此账号下在或者已绑定其他车辆上"}
车辆解绑IMEI设备
接口说明
对指定车辆进行IMEI号的绑定操作,已安装的设备不可进行绑定。
请求URL
本接口通用参数里面 method的值为jimi.open.car.device.unbind
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| account | String | 是 | 无 | 账号,包含子级账号(车辆ID与IMEI必须在此账号下) |
| carId | String | 是 | 无 | 车辆ID |
| imei | String | 是 | 无 | 设备imei号 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
正确返回示例:
{
"code": 0,
"message": "解绑设备成功",
"result": null
}
错误返回示例:
{"code": 232,"message": "该设备不属于此车辆下无法解绑"}
查询车辆详情
接口说明
通过车辆编号获取车辆详细信息。
请求URL
本接口通用参数里面 method的值为jimi.open.car.device.details
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| carIds | String | 是 | 无 | 车辆ID,多个用逗号隔开。建议采用POST方式(一次最多100个carId) |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| carId | String | 车辆编号 |
| bindUserAccount | String | 绑定车辆账号 |
| carOwnerName | String | 车主名称 |
| carPlateNumber | String | 车牌号 |
| carOwnerPhone | String | 车主手机号 |
| cardType | String | 证件类型[IDCARD-身份证,PASSPORT-护照] |
| carOwnerIdCard | String | 证件号码 |
| carModel | String | 车型 |
| carFrameNumber | String | 车架号 |
| carEngineNumber | String | 发动机号 |
| carType | String | 车辆类型[NEWCAR-新车;USEDCAR-二手车;IMPORTEDCAR-进口车] |
| loanMonth | String | 贷款期限 |
| loanSum | String | 贷款额度 |
| overallSum | String | 总评额度 |
| salesman | String | 业务员 |
| homeAddress | String | 家庭住址 |
| workAddress | String | 工作单位地址 |
| sex | String | 性别[0-女,1-男] |
| carColor | String | 车辆颜色 |
| loanDate | String | 贷款日期,格式:yyyy-MM-dd |
| repaymentType | String | 还款方式,[STAGES-等额本金, ONCE-先息后本] |
| imeis | String | 安装设备IMEI,多个用逗号隔开 |
| createTime | String | 创建时间 |
| updateTime | String | 修改时间 |
| equtList | String | 安装设备详情列表 |
equtList参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| imei | 设备IMEI号 | |
| deviceName | String | 设备名称 |
| activationTime | String | 激活时间 |
| expiration | String | 过期时间 |
| mcType | String | 设备机型 |
| equipType | String | 设备类型(WIRED:有线 WIRELESS:无线) |
| sim | String | 卡号 |
| driverPhone | String | 电话 |
| vehicleIcon | String | 车辆图标 |
| mcTypeUseScope | String | 机型使用范围(aotomobile:汽车 electromobile:电动车 personal:个人 pet:宠物 plane:飞机 others:其他) |
| reMark | String | 备注 |
| installTime | String | 安装时间 |
正确返回示例:
{
"code": 0,
"message": "成功",
"result": [
{
"carId": 5750,
"bindUserAccount": "huangwm",
"carOwnerName": "测试车辆3",
"carOwnerPhone": null,
"cardType": "IDCARD",
"carOwnerIdCard": "12312312112321",
"carPlateNumber": "TX12321",
"carModel": "TW12321",
"carEngineNumber": "qas123",
"carFrameNumber": "qwe123",
"carType": "NEWCAR",
"overallSum": 18000,
"loanMonth": "12",
"loanSum": 15000,
"salesman": "wwq",
"homeAddress": "测试地址1",
"workAddress": "测试地址2",
"sex": 1,
"carColor": "蓝色",
"loanDate": "2018-08-15",
"repaymentType": "STAGES",
"imeis": "201803161655008,201804271524201",
"createTime": "2018-05-23 19:03:56",
"updateTime": "2018-05-23 19:03:56",
"equtList": [
{
"imei": "201803161655008",
"deviceName": "ET110-55008",
"activationTime": null,
"expiration": null,
"mcType": "ET110",
"sim": "",
"driverPhone": null,
"vehicleIcon": "automobile",
"equipType": "WIRED",
"mcTypeUseScope": "electromobile",
"reMark": null,
"installTime": "2018-05-22"
},
{
"imei": "201804271524201",
"deviceName": "ET100-24201",
"activationTime": null,
"expiration": null,
"mcType": "ET100",
"sim": "",
"driverPhone": null,
"vehicleIcon": "automobile",
"equipType": "WIRED",
"mcTypeUseScope": "electromobile",
"reMark": null,
"installTime": "2018-05-22"
}
]
}
......
]
}
错误返回示例:
{"code":xxx,"message":"非法用户"}
查询账号下的所有车辆信息
接口说明
通过车辆编号获取车辆详细信息。
请求URL
本接口通用参数里面 method的值为jimi.open.car.device.list
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| account | String | 是 | 无 | 账号(包含子级账号) |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| carId | String | 车辆编号 |
| carOwnerName | String | 车主名称 |
| carPlateNumber | String | 车牌号 |
| carOwnerPhone | String | 车主手机号 |
| cardType | String | 证件类型[IDCARD-身份证,PASSPORT-护照] |
| carOwnerIdCard | String | 证件号码 |
| carModel | String | 车型 |
| carFrameNumber | String | 车架号 |
| carEngineNumber | String | 发动机号 |
| carType | String | 车辆类型[NEWCAR-新车;USEDCAR-二手车;IMPORTEDCAR-进口车] |
| loanMonth | Integer | 贷款期限 |
| loanSum | Double | 贷款额度 |
| overallSum | Double | 总评额度 |
| salesman | String | 业务员 |
| homeAddress | String | 家庭住址 |
| workAddress | String | 工作单位地址 |
| sex | String | 性别[0-女,1-男] |
| carColor | String | 车辆颜色 |
| loanDate | String | 贷款日期,格式:yyyy-MM-dd |
| repaymentType | String | 还款方式,[STAGES-等额本金, ONCE-先息后本] |
| imeis | String | 安装设备IMEI,多个用逗号隔开 |
| createTime | String | 创建时间 |
| updateTime | String | 修改时间 |
正确返回示例:
{
"code": 0,
"message": "成功",
"result": [
{
"carId": 5756,
"carOwnerName": "测试车主",
"carOwnerPhone": "12356456456465456456",
"cardType": "IDCARD",
"carOwnerIdCard": "4526011995132565221",
"carPlateNumber": "TX85512",
"carModel": "Tc1",
"carEngineNumber": "axsq123456",
"carFrameNumber": "axsq12345623",
"carType": "NEWCAR",
"overallSum": 18000,
"loanMonth": "12",
"loanSum": 15000,
"salesman": "wwq",
"homeAddress": "测试地址1",
"workAddress": "测试地址2",
"sex": 1,
"carColor": "蓝色",
"loanDate": "2018-08-15",
"repaymentType": "STAGES"
"imeis": null,
"createTime": "2018-05-23 19:03:56",
"updateTime": "2018-05-23 19:03:56"
},
{
"carId": 5750,
"carOwnerName": "测试车辆3",
"carOwnerPhone": null,
"cardType": "IDCARD",
"carOwnerIdCard": "12312312112321",
"carPlateNumber": "TX12321",
"carModel": "TW12321",
"carEngineNumber": "qas123",
"carFrameNumber": "qwe123",
"carType": "NEWCAR",
"overallSum": 18000,
"loanMonth": "12",
"loanSum": 15000,
"salesman": "wwqw",
"homeAddress": "测试地址3",
"workAddress": "测试地址4",
"sex": 1,
"carColor": "蓝色",
"loanDate": "2018-08-15",
"repaymentType": "STAGES"
"imeis": "201803161655008,201804271524201",
"createTime": "2018-05-22 14:42:59",
"updateTime": "2018-05-22 16:24:05"
},
.......
]
}
错误返回示例:
{"code":xxx,"message":"非法用户"}
获取设备支持的指令列表
接口说明
获取指定设备机型支持的指令列表。
请求URL
本接口通用参数里面 method的值为jimi.open.instruction.list
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imei | String | 是 | 无 | 设备imei号 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | String | 指令编码 |
| orderName | String | 指令名称 |
| orderContent | String | 指令模板 |
| orderExplain | String | 指令说明 |
| orderMsg | String | 提示 |
| isOffLine | String | 是否支持离线指令 0:否 1:是 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": [
{
"id": 81,
"orderName": "SOS设置",
"orderContent": "SOS,A,{0},{1},{2}#",
"orderExplain": "SOS号码用于接收报警短信以及接收SOS报警,支持3~20位数字SOS号码设置",
"orderMsg": "",
"isOffLine": "1"
}
...
]
}
错误返回示例:
{"code":xxx,"message":"非法设备"}
指定设备发送指令
接口说明
给指定设备发送指令。
请求URL
本接口通用参数里面 method的值为jimi.open.instruction.send
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imei | String | 是 | 无 | 设备imei号 |
| inst_param_json | String | 是 | 无 | 指令消息json字符串。列如:{"inst_id":"110104","inst_template":"SOS,A,{0},{1},{2}#","params":["13243","1234","12344"],"is_cover":"false"} |
inst_param_json参数说明
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| inst_id | String | 是 | 无 | 指令编码 |
| inst_template | String | 是 | 无 | 指令模板 |
| params | Array<string> | 是 | 无 | 指令参数字符串数组 |
| is_cover | boolean | 否 | false | 是否覆盖已存在的离线指令true-覆盖 false-不覆盖 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
正确返回示例:
{
"code": 0,
"message": "发送指令成功",
"result": null
}
错误返回示例:
{"code": 12005,"message": "下发指令失败,结果码:226","result": null}
获取设备指令结果
接口说明
获取设备已发送的指令结果。
请求URL
本接口通用参数里面 method的值为jimi.open.instruction.result
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imei | String | 是 | 无 | 设备imei号 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| codeId | String | 指令编码 |
| code | String | 发送的指令 |
| content | String | 设备回复内容 |
| isExecute | String | 指令状态0:执行失败,1:执行成功,3:待发送,4:已取消 |
| sendTime | String | 发送时间 格式:yyyy-MM-dd HH:mm:ss |
| sender | String | 发送者 |
| receiveDevice | String | 接收的imei号 |
| isOffLine | String | 0在线 1离线 |
| idsource | String | 指令描述 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": [
{
"codeId": "99",
"code": "status#",
"content": "参数错误",
"isExecute": "4",
"sendTime": "2017-06-19 11:46:00",
"sender": "jimitest",
"receiveDevice": "868120111111117",
"isOffLine": "1",
"idsource": "自定指令"
}
]
}
错误返回示例:
{"code":xxx,"message":"非法设备"}
为设备IMEI创建电子围栏
接口说明
为设备imei创建一个电子围栏信息
请求URL
本接口通用参数里面method的值为jimi.open.device.fence.create
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imei | String | 是 | 无 | 设备imei号 |
| fence_name | String | 是 | 无 | 围栏名称 |
| alarm_type | String | 是 | 无 | 告警类型(in/out/in,out) |
| report_mode | String | 是 | 无 | 报警上报方式,0:仅GPRS,1:SMS+GPRS |
| alarm_switch | String | 是 | 无 | 围栏报警开关(ON开启/OFF关闭) |
| lng | String | 是 | 无 | 经度 |
| lat | String | 是 | 无 | 纬度 |
| radius | String | 是 | 无 | 围栏半径(1~9999;单位:百米) |
| zoom_level | String | 是 | 无 | 缩放级别(3-19) |
| map_type | String | 是 | 无 | 地图类型(baidu/google) |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据,成功后返回围栏序号 |
正确返回示例:
{
"code": 0,
"message": "创建电子围栏成功",
"result": "5"
}
错误返回示例:
{
"code": 41003,
"message": "设备不在线,无法创建电子围栏",
"result": null
}
为设备IMEI删除电子围栏
接口说明
为设备imei删除一个电子围栏信息
请求URL
本接口通用参数里面method的值为jimi.open.device.fence.delete
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imei | String | 是 | 无 | 设备imei号 |
| instruct_no | String | 是 | 无 | 电子围栏指令序号 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
正确返回示例:
{
"code": 0,
"message": "删除电子围栏成功",
"result": "5"
}
错误返回示例:
{
"code": 41003,
"message": "设备不在线,无法删除电子围栏",
"result": null
}
获取设备电子围栏信息
接口说明
查询设备已设置的电子围栏记录
请求URL
本接口通用参数里面method的值为jimi.open.device.fence.get
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imei | String | 是 | 无 | 设备imei号 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| imei | String | 设备IMEI |
| fenceName | String | 电子围栏名称 |
| instructNo | String | 电子围栏指令序号 |
| alarmType | String | 进出报警类型in,out |
| radius | String | 半径 |
| mapType | String | 地图类型,baidu/google |
| zoomLevel | String | 缩放级别 |
| lat | double | 与地图类型对应的纬度 |
| lng | double | 与地图类型对应的经度 |
| gpsLat | double | 原始GPS纬度坐标 |
| gpsLng | double | 原始GPS经度坐标 |
| instructCode | int | 设备返回码,参考指令错误码 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": [
{
"imei": "456789123456801",
"fenceName": "11111111111",
"instructNo": "1",
"alarmType": "in,out",
"radius": "5344",
"mapType": "baidu",
"zoomLevel": "12",
"lat": 22.6969,
"lng": 113.988498,
"gpsLat": 22.693452554454886,
"gpsLng": 113.97709023148917,
" instructCode":255
},
{
"imei": "456789123456801",
"fenceName": "1111223",
"instructNo": "2",
"alarmType": "in,out",
"radius": "4191",
"mapType": "baidu",
"zoomLevel": "12",
"lat": 22.613654,
"lng": 113.998272,
"gpsLat": 22.610193418762954,
"gpsLng": 113.98684308538836,
" instructCode":255
}]
}
创建平台围栏
接口说明
为设备imei创建一个平台围栏信息(一个imei最多创建20个平台围栏;围栏名称不可包含特俗字符;围栏名称不可重复)
请求URL
本接口通用参数里面method的值为jimi.open.plat.fence.create
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imei | String | 是 | 无 | 设备imei号 |
| fence_name | String | 是 | 无 | 围栏名称 |
| fence_shape | String | 是 | circle | 围栏形状(只能为circle——圆) |
| status | String | 否 | 无 | in-进围栏,out-出围栏,all-进出都有 |
| lng | double | 是 | 无 | 经度 |
| lat | double | 是 | 无 | 纬度 |
| radius | double | 是 | 无 | 围栏半径(200~999900;单位:米) |
| map_type | String | 是 | 无 | 地图类型(baidu/google) |
| scale | int | 是 | 无 | 缩放级别(3~19) |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据,成功后返回围栏序号 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| imei | String | 设备IMEI |
| fenceName | String | 电子围栏名称 |
| fenceId | String | 平台围栏ID |
正确返回示例:
{
"code": 0,
"message": "成功",
"result": {
"imei": "456789123456801",
"fenceName": "11111111111",
"fenceId": "0f566e9d9e0b4a2499832cd158b0c63b",
}
}
错误返回示例:
{
"code": 12008,
"message": "围栏超过创建个数",
"result": null
}
删除平台围栏
接口说明
删除平台围栏信息
请求URL
本接口通用参数里面method的值为jimi.open.plat.fence.delete
HTTP请求方式
POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| fence_id | String | 是 | 无 | 围栏ID |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
正确返回示例:
{
"code": 0,
"message": "成功",
"result": null
}
错误返回示例:
{
"code": 12012,
"message": "删除围栏失败",
"result": null
}
wifi、基站定位解析接口
接口说明
按用户名下总设备数(按每10次/天/设备,包含下级所有子账户)总数配置限额。
接口返回的坐标系为WGS84
请求URL
本接口通用参数里面 method的值为jimi.lbs.address.get
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| imei | String | 是 | 无 | 设备Imei号 |
| lbs | String | 否 | 无 | (wifi和LBS至少一项) LBS信息组(mcc,mnc,lac,cell,rssi)最多7个,每组五项,每一项不能为空,顺序不能改变 MCC移动国家代码,中国460 MNC移动网络码,移动0 LAC基站分区信息, 2312 23222 CELL基站编码23222 RSSI信号量-70 |
| wifi | String | 否 | 无 | (wifi和LBS至少一项) mac1,rssi1| mac2,rssi2 mac地址,没有中间的冒号,大小写不敏感, rssi信号强度 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| lng | String | 经度(WGS84坐标系) |
| lat | String | 纬度(WGS84坐标系) |
| accuracy | String | 精准度,值越大越好 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": {
"lat": 40.65615416521587,
"lng": 109.89894039833524,
"accuracy": 0
}
}
错误返回示例:
{"code":xxx,"message":"非法设备"}
消息推送接口
接口说明
第三方平台提供消息接收的url地址,几米平台调用该url请求发送数据
消息服务列表
| 消息服务 | 描述 |
|---|---|
| jimi.push.device.alarm | 设备告警数据 |
推送的内容如下:
| 参数 | 类型 | 描述 |
|---|---|---|
| msgType | String | 消息类型,对应消息服务列表 |
| data | String | 消息内容,具体内容与msgType对应 |
告警推送 (jimi.push.device.alarm)
推送策略:当告警推送失败时,会将失败告警记录下,第二天上午9点定时重推一次,如果还是失败则丢弃。
推送的告警属性如下:
| 参数 | 类型 | 描述 |
|---|---|---|
| imei | String | 设备imei |
| deviceName | String | 设备名称 |
| alarmType | String | 告警类型 |
| alarmName | String | 告警名称 |
| lat | String | 纬度(WGS84坐标系) |
| lng | String | 经度(WGS84坐标系) |
| alarmTime | String | 告警时间,格式(yyyy-MM-dd HH:mm:ss) |
| address | String | 告警地址(未解析成功时返回null) |
消息示例:
https://ip:port/xxx?msgType=jimi.push.device.alarm&data={"imei":"868120145212312","deviceName":"868120145212312","alarmType":"2","alarmName":"测试","lat":40.65615416521587,"lng":109.89894039833524,"alarmTime":"2017-05-08 12:00:00","address":"北京市xxx路"}
参数:
"msgType": "jimi.push.device.alarm",
"data": {
"imei": "868120145233604",
"deviceName": "868120145233604",
"alarmType": "2",
"alarmName": "断电报警",
"lat": 40.65615416521587,
"lng": 109.89894039833524,
"alarmTime": "2017-05-08 12:00:00"
"address": "北京市xxx路"
}
附:设备告警类型
| 参数 | 描述 |
|---|---|
| 1 | SOS求救 |
| 2 | 断电报警 |
| 3 | 震动报警 |
| 4 | 进入电子围栏(终端) |
| 5 | 离开电子围栏(终端) |
| 6 | 超速报警 |
| 9 | 位移报警 |
| 10 | 进卫星盲区报警 |
| 11 | 出卫星盲区报警 |
| 12 | 开机报警 |
| 13 | 卫星第一次定位报警 |
| 14 | 外电低电报警 |
| 15 | 外电低电保护报警 |
| 16 | 换卡报警 |
| 17 | 关机报警 |
| 18 | 外电低电保护后飞行模式报警 |
| 19 | 拆卸报警 |
| 20 | 门报警 |
| 22 | 声控报警 |
| 23 | 伪基站报警 |
| 24 | 开盖报警 |
| 25 | 内部电池低电报警 |
| 32 | 进入深度休眠报警 |
| 50 | 拔出报警 |
| 90 | 低电报警 |
| 128 | 后视镜震动报警 |
| 192 | 非法移动告警 |
| 194 | 后备电池电量不足告警 |
| 195 | 越界告警 |
| 1001 | ACC关闭 |
| 1002 | ACC开启 |
| 1003 | 离线告警 |
| 1004 | 停留告警 |
| 1005 | 逗留告警 |
| 1006 | 进入围栏 |
| 1007 | 离开围栏 |
| 1008 | 长时间不进围栏 |
| 1009 | 长时间不出围栏 |
| 1010 | 黑车围栏告警 |
| 1011 | 超速报警(平台) |
| 1012 | 风险点告警 |
查询状态统计
接口说明
查询账号下设备状态信息。
请求URL
本接口通用参数里面 method的值为jimi.open.report.state
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| account | String | 是 | 无 | 查询账号(包含子级账号) |
| state | String | 否 | 无 | 设备状态,[0-离线,1-在线,2-行驶,3-静止,不填表示全部状态] |
| subordinated | String | 否 | false | 是否包含下级设备,[false-否,true-是,不填默认false] |
| paidOff | String | 否 | false | 是否包含已还清车辆,[false-否,true-是,不填默认false] |
| imeis | String | 否 | 无 | 设备IMEI号,多个用逗号隔开,最大查询1000个 |
| pageNo | Integer | 否 | 1 | 当前页,默认1 |
| pageSize | Integer | 否 | 20 | 当前页大小,默认20,最大1000 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| page | Integer | 当前页 |
| size | Integer | 当前页查询大小 |
| number | Integer | 返回数据总数 |
| lastPage | Boolean | 是否为最后一页 |
| items | Array | 返回数据列表 |
items参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| carId | String | 车辆ID |
| carOwnerName | String | 车辆名称 |
| carPlateNumber | String | 车牌号 |
| imei | String | IMEI号 |
| orgName | String | 所属部门 |
| deviceName | String | 设备名称 |
| salesman | String | 业务员 |
| deviceType | String | 设备机型 |
| carEngineNumber | String | 车型 |
| carFrameNumber | String | 车架号 |
| status | String | 状态,(0-离线,1-在线,2-行驶,3-静止) |
| lat | String | 经度 |
| lng | String | 纬度 |
| date | String | 时间 |
| lngLat | String | 经度/纬度 |
| addr | String | 详细地址 |
| times | Integer | 时长,单位秒 |
| speed | Integer | 速度 |
| gpsTime | String | 定位时间 |
| hbTime | String | 心跳时间 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": {
"page": 1,
"size": 20,
"number": 2,
"lastPage": true,
"items": [
{
"carId": "",
"carOwnerName": "",
"carPlateNumber": "",
"imei": "201808221000079",
"carOwnerPhone": "",
"orgName": "ES003",
"deviceName": "GT300-00079",
"salesman": "",
"deviceType": "GT300",
"carEngineNumber": "",
"carFrameNumber": "",
"status": "0",
"lat": 22.540203,
"lng": 113.91854,
"date": "2018-08-22 15:04:54",
"lngLat": "113.91854/22.540203",
"addr": "广东省深圳市南山区红花路19号,南山区文体中心西北63米",
"times": 444446,
"speed": 0,
"gpsTime": "2018-08-22 15:07:56",
"hbTime": "2018-08-22 15:04:54"
},
{
"carId": 46049,
"carOwnerName": "BB",
"carPlateNumber": "BB-02",
"imei": "201808221000012",
"carOwnerPhone": "13812345678",
"orgName": "ES001",
"deviceName": "GT230-00012",
"salesman": "李四8",
"deviceType": "GT230",
"carEngineNumber": "123456796",
"carFrameNumber": "123456796",
"status": "0",
"lat": 22.540203,
"lng": 113.91854,
"date": "2018-08-22 15:05:34",
"lngLat": "113.91854/22.540203",
"addr": "广东省深圳市南山区红花路19号,南山区文体中心西北63米",
"times": 444407,
"speed": 0,
"gpsTime": "2018-08-22 15:07:56",
"hbTime": "2018-08-22 15:05:34"
},
..........
]
}
}
错误返回示例:
{"code":xxx,"message":"非法用户"}
查询电量过低统计
接口说明
查询账号下设备电量信息。
请求URL
本接口通用参数里面 method的值为jimi.open.report.lowbattery
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| account | String | 是 | 无 | 查询账号(包含子级账号) |
| power | Integer | 是 | 无 | 查询电量低于百分比值,只能输入[10,20,30,40,50,60,70,80,90,100] |
| subordinated | String | 否 | false | 是否包含下级设备,[false-否,true-是,不填默认false] |
| paidOff | String | 否 | false | 是否包含已还清车辆,[false-否,true-是,不填默认false] |
| deviceType | String | 否 | 无 | 设备机型 |
| pageNo | Integer | 否 | 1 | 当前页,默认1 |
| pageSize | Integer | 否 | 20 | 当前页大小,默认20,最大10000 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| page | Integer | 当前页 |
| size | Integer | 当前页查询大小 |
| number | Integer | 返回数据总数 |
| lastPage | Boolean | 是否为最后一页 |
| items | Array | 返回数据列表 |
items参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| carId | String | 车辆ID |
| carOwnerName | String | 车辆名称 |
| carPlateNumber | String | 车牌号 |
| carOwnerPhone | String | 车主手机号 |
| imei | String | IMEI号 |
| orgName | String | 所属部门 |
| deviceName | String | 设备名称 |
| salesman | String | 业务员 |
| deviceType | String | 设备机型 |
| carEngineNumber | String | 车型 |
| carFrameNumber | String | 车架号 |
| power | Integer | 电量百分比值 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": {
"page": 2,
"size": 20,
"number": 14, //当前页查询数量
"lastPage": true, //是否为最后一页
"items": [
{
"carId": 46053,
"carOwnerName": "CC",
"carPlateNumber": "CC-03",
"imei": "201808221000066",
"carOwnerPhone": "13812345678",
"orgName": "ES002",
"deviceName": "GT300-00066",
"salesman": "李四16",
"deviceType": "GT300",
"carEngineNumber": "123456804",
"carFrameNumber": "123456804",
"power": 5
},
{
"carId": "",
"carOwnerName": "",
"carPlateNumber": "",
"imei": "201808221000067",
"carOwnerPhone": "",
"orgName": "ES002",
"deviceName": "GT300-00067",
"salesman": "",
"deviceType": "GT300",
"carEngineNumber": "",
"carFrameNumber": "",
"power": 5
},
..........
]
}
}
错误返回示例:
{"code":xxx,"message":"非法用户"}
查询告警总览统计
接口说明
查询账号下设备告警总览信息。
请求URL
本接口通用参数里面 method的值为jimi.open.report.alarm
HTTP请求方式
GET/POST
请求参数
(1)通用参数
参见:通用参数
(2)私有参数
| 参数名 | 参数类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| access_token | String | 是 | 访问令牌,表明其是一个合法第三方 | |
| account | String | 是 | 无 | 查询账号(包含子级账号) |
| startTime | String | 是 | 无 | 开始时间,格式为yyyy-MM-dd HH:mm:ss |
| endTime | String | 是 | 无 | 结束时间,格式为yyyy-MM-dd HH:mm:ss |
| subordinated | String | 否 | false | 是否包含下级设备,[false-否,true-是,不填默认false] |
| paidOff | String | 否 | false | 是否包含已还清车辆,[false-否,true-是,不填默认false] |
| imeis | String | 否 | 无 | 设备IMEI号,多个用逗号隔开,最大查询1000个 |
| pageNo | Integer | 否 | 1 | 当前页,默认1 |
| pageSize | Integer | 否 | 20 | 当前页大小,默认20 |
返回值
| 参数 | 类型 | 描述 |
|---|---|---|
| code | Int | 返回码: 0: 正确返回 其它: 失败。参考错误码说明 |
| message | String | 如果code不为0,会有相应的错误信息提示 |
| result | String | 返回的数据 |
result参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| page | Integer | 当前页 |
| size | Integer | 当前页查询大小 |
| number | Integer | 返回数据总数 |
| lastPage | Boolean | 是否为最后一页 |
| items | Array | 返回数据列表 |
items参数列表:
| 参数 | 类型 | 描述 |
|---|---|---|
| carId | String | 车辆ID |
| carOwnerName | String | 车辆名称 |
| carPlateNumber | String | 车牌号 |
| imei | String | IMEI号 |
| orgName | String | 所属部门 |
| salesman | String | 业务员 |
| deviceType | String | 设备机型 |
| sos | Integer | SOS求救告警 |
| cutPower | Integer | 断电告警 |
| vibration | Integer | 震动告警 |
| enterTerminalGeozone | Integer | 进入电子围栏告警 |
| exitTerminalGeozone | Integer | 离开电子围栏告警 |
| overspeed | Integer | 超速报警 |
| movement | Integer | 位移告警 |
| blindAreaEnter | Integer | 进卫星盲区报警 |
| blindAreaExit | Integer | 出卫星盲区报警 |
| bootingNotification | Integer | 开机报警 |
| firstFixNotification | Integer | 卫星第一次定位报警 |
| lowExternalPower | Integer | 外电低电报警 |
| lowPowerProtection | Integer | 外电低电保护报警 |
| simCardChange | Integer | 换卡报警 |
| powerOff | Integer | 关机报警 |
| airplaneModeAfterLowPowerProtection | Integer | 外电低电保护后飞行模式告警 |
| disassembly | Integer | 拆卸告警 |
| doorAlarm | Integer | 门告警 |
| voice | Integer | 声控告警 |
| pseudoBaseStation | Integer | 伪基站告警 |
| openCoverAlarm | Integer | 开盖告警 |
| lowPowerAlarm | Integer | 内部电池低电 |
| sleepAlarm | Integer | 进入深度睡眠告警 |
| lowPower | Integer | 低电告警 |
| dvrVibration | Integer | 后视镜震动告警 |
| overspeedDVR | Integer | 超速告警(DVR) |
| rapidAcceleration | Integer | 急加速告警 |
| rapidDeceleration | Integer | 急减速告警 |
| sharpTurn | Integer | 急转弯告警 |
| carCrash | Integer | 撞车告警 |
| illegalMobileAlert | Integer | 非法移动告警 |
| insufficientBatteryBackupAlert | Integer | 后备电池电量不足告警 |
| overStepAlert | Integer | 越界告警 |
| exitGeozone | Integer | 离开围栏告警 |
| enterGeozone | Integer | 进入围栏告警 |
| offline | Integer | 离线告警 |
| accOpen | Integer | ACC开启告警 |
| accShutdown | Integer | ACC关闭告警 |
| longtimeNotOutFence | Integer | 长时间不出围栏告警 |
| longtimeNotIntoFence | Integer | 长时间不进围栏告警 |
| lingerAlert | Integer | 逗留告警 |
| stayAlert | Integer | 停留告警 |
| sensitiveAreasFence | Integer | 黑车区域围栏告警 |
| overspeedPlatform | Integer | 超速报警 |
| separationAlarm | Integer | 设备分离 |
正确返回示例:
{
"code": 0,
"message": "success",
"result": {
"page": 1,
"size": 20,
"number": 20,
"lastPage": false,
"items": [
{
"carId": 46047,
"carOwnerName": "AA",
"carPlateNumber": "AA-03",
"imei": "201808221000004",
"orgName": "测试部门",
"salesman": "李四4",
"deviceType": "GT230",
"sos": 0,
"cutPower": 0,
"vibration": 0,
"enterTerminalGeozone": 0,
"exitTerminalGeozone": 0,
"overspeed": 0,
"movement": 0,
"blindAreaEnter": 0,
"blindAreaExit": 0,
"bootingNotification": 0,
"firstFixNotification": 0,
"lowExternalPower": 0,
"lowPowerProtection": 0,
"simCardChange": 0,
"powerOff": 0,
"airplaneModeAfterLowPowerProtection": 0,
"disassembly": 0,
"doorAlarm": 0,
"voice": 0,
"pseudoBaseStation": 0,
"openCoverAlarm": 0,
"lowPowerAlarm": 0,
"sleepAlarm": 0,
"lowPower": 0,
"dvrVibration": 0,
"overspeedDVR": 0,
"rapidAcceleration": 0,
"rapidDeceleration": 0,
"sharpTurn": 0,
"carCrash": 0,
"illegalMobileAlert": 0,
"insufficientBatteryBackupAlert": 0,
"overStepAlert": 0,
"exitGeozone": 4,
"enterGeozone": 5,
"offline": 1,
"accOpen": 0,
"accShutdown": 0,
"longtimeNotOutFence": 4,
"longtimeNotIntoFence": 4,
"lingerAlert": 0,
"stayAlert": 3,
"sensitiveAreasFence": 24,
"overspeedPlatform": 0,
"separationAlarm": 0
},
{
"carId": "",
"carOwnerName": "",
"carPlateNumber": "",
"imei": "201808221000010",
"orgName": "测试部门",
"salesman": "",
"deviceType": "GT230",
"sos": 0,
"cutPower": 0,
"vibration": 0,
"enterTerminalGeozone": 0,
"exitTerminalGeozone": 0,
"overspeed": 0,
"movement": 0,
"blindAreaEnter": 0,
"blindAreaExit": 0,
"bootingNotification": 0,
"firstFixNotification": 0,
"lowExternalPower": 0,
"lowPowerProtection": 0,
"simCardChange": 0,
"powerOff": 0,
"airplaneModeAfterLowPowerProtection": 0,
"disassembly": 0,
"doorAlarm": 0,
"voice": 0,
"pseudoBaseStation": 0,
"openCoverAlarm": 0,
"lowPowerAlarm": 0,
"sleepAlarm": 0,
"lowPower": 0,
"dvrVibration": 0,
"overspeedDVR": 0,
"rapidAcceleration": 0,
"rapidDeceleration": 0,
"sharpTurn": 0,
"carCrash": 0,
"illegalMobileAlert": 0,
"insufficientBatteryBackupAlert": 0,
"overStepAlert": 0,
"exitGeozone": 5,
"enterGeozone": 4,
"offline": 2,
"accOpen": 0,
"accShutdown": 0,
"longtimeNotOutFence": 4,
"longtimeNotIntoFence": 5,
"lingerAlert": 0,
"stayAlert": 4,
"sensitiveAreasFence": 16,
"overspeedPlatform": 0,
"separationAlarm": 0
},
...........
]
}
}
错误返回示例:
{"code":xxx,"message":"非法用户"}