更新时间:2020-05-27 15:16
对接或调用阿里云全域停车开放服务时需要有一些前置条件,例如:调用场库信息上架高德的服务时,停车企业需要将场库的信息接入阿里云全域停车开放平台;又比如企业需要调用车牌二次识别服务时,企业需要将停车场车辆进出的图片上传至阿里云全域停车开放平台。
合作伙伴的停车场库系统通过接口等形式对接到阿里云智能停车平台对接,可以充分利用阿里的生态、数据能力,构建出更具竞争力的应用。和智能停车平台一次接入,就能参数扩展的方式快速接入多种上层停车场景能力。
说明:接口调用所需的平台授权参数,请向平台管理员 @云叶 咨询获取
关于API的调用方法,需要使用平台提供的SDK调用,SDK和Demo调用示例,有多种不同的语言版本,JAVA、.Net、PHP、Python、Node.js。文档中所提到的所有API,调用方式均一样,不同API的只是Path,和Post请求payload的不同,API调用时请求的payload格式请参考后续章节各个API的请求格式说明。
(1)JAVA: 按Java SDK示例调用
(2)PHP: 示例Demo https://github.com/aliyun/api-gateway-demo-sign-php.git
(3)C#: 示例Demo https://github.com/aliyun/api-gateway-demo-sign-net
(4)Python: 示例Demo https://github.com/aliyun/api-gateway-demo-sign-python
(5)Node.js: 示例Demo https://github.com/aliyun/api-gateway-nodejs-sdk
POM依赖:
<!-- https://mvnrepository.com/artifact/com.aliyun.iotx/iotx-api-gateway-client -->
<dependency>
<groupId>com.aliyun.iotx</groupId>
<artifactId>iotx-api-gateway-client</artifactId>
<version>1.0.3</version>
</dependency>
示例代码:
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("${appKey}");
ioTApiClientBuilderParams.setAppSecret("${appSecret}");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("${apiVersion}");
// 接口参数
request.putParam("param1", "${paramValue}");
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("${apiHost}",
"${apiPath}", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
概述
停车场库系统向智能停车平台发送心跳,用于监控停车场是否在线。对于本地场库系统(由本地管理直接对接到阿里云智能停车平台),为保证可用性,每个停车场须定期向平台发送心跳,推荐的周期为1分钟。云端对接方式,可根据情况判断是否接入。
接口
path: /park/isv/v1/park/heartbeat/upload
version: 1.0.0
参数
业务请求参数: | ||||
---|---|---|---|---|
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
vendorParkId | String | 是 | 64 | 场库系统的停车场ID |
uploadTime | Long | 是 | UTC时间(UNIX毫秒时间戳) | |
业务响应参数: | ||||
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
serverTime | String | 是 | 停车场id |
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("123456");
ioTApiClientBuilderParams.setAppSecret("abcdefghijklmn");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
// 接口参数
request.putParam("vendorParkId","2947297626687");
request.putParam("uploadTime", 1550030400000);
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("park-api-pre.aliplus.com",
"/park/isv/v1/park/heartbeat/upload", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
请求示例
{
"id":"5e1c0fbc-acdb-4c47-9846-7fc9beedbe14",
"params":{
"vendorParkId":"2947297626687",
"uploadTime":1550030400000
},
"request":{
"apiVer":"1.0.0"
},
"version":"1.0"
}
响应示例
{
"code": 200,
"data": {
"serverTime": 1550030410000
},
"message": "success"
}
当车辆进出场后余位发生变化时,停车场库系统将车场实时将可用余位同步到智能停车平台。如无法做到实时上报,需要定期更新,推荐的周期为1分钟。
path: /park/isv/v1/park/availablespace/update
version: 1.0.0
业务请求参数: | ||||
---|---|---|---|---|
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
vendorParkId | String | 是 | 64 | 场库系统的停车场ID |
uploadTime | Long | 否 | UTC时间(UNIX毫秒时间戳),不传时取服务器时间 | |
availableSpace | Integer | 是 | 车场总余位数量 | |
availableOpenSpace | Integer | 否 | 车场对外开放车位余位数 | |
业务响应参数: | ||||
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
- | 无业务返回参数 |
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("123456");
ioTApiClientBuilderParams.setAppSecret("abcdefghijklmn");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
// 接口参数
request.putParam("vendorParkId","2947297626687");
request.putParam("uploadTime", 1550030400000);
request.putParam("availableSpace", 99);
request.putParam("availableOpenSpace", 88);
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("park-api-pre.aliplus.com",
"/park/isv/v1/park/availablespace/update", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
请求示例
{
"id":"5e1c0fbc-acdb-4c47-9846-7fc9beedbe14",
"params":{
"vendorParkId": "2947297626687",
"uploadTime": 1550030400000,
"availableSpaces": 99,
"availableOpenSpaces": 88
},
"request":{
"apiVer":"1.0.0"
},
"version":"1.0"
}
响应示例
{
"code": 200,
"data": {},
"message": "success"
}
车辆入场完成成,实时将停车记录上传到云端。除了同步记录,可以调用智能停车平台的云端能力进行更多业务处理,例如”先离场后付费”停车场景能力中签约状态的查询,具体能力场景请参见停车场景能力文档。停车场库系统可以根据的业务需求选择性接入相应的停车场景能力。
path: /park/isv/v1/park/record/enter
version: 1.0.0
业务请求参数: | ||||
---|---|---|---|---|
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
vendorParkId | String | 是 | 64 | 场库系统的停车场ID |
vendorRecordId | String | 是 | 64 | 场库系统的停车记录ID |
plateNo | String | 是 | 16 | 车牌号 |
plateColor | String | 是 | 车牌颜色,枚举值如下: - BLUE : 蓝色 - YELLOW : 黄色 - GREEN : 绿色 - BLACK : 黑色 - WHITE : 白色 |
|
inTime | Long | 是 | 入场时间,UTC时间(UNIX毫秒时间戳) | |
inPictureUrl | String | 否 | 512 | 车辆入场图片,实时性要求高时可以通4.2.7图片上传接口补传图片 |
inChannelId | String | 是 | 64 | 入口通道(出入口/岗亭)ID,没有对通道进行管理的停车系统传”无” |
inChannelName | String | 是 | 64 | 入口通道(出入口/岗亭)名称,没有对通道进行管理的停车系统传”无” |
bizParams | String | 否 | 车场景能力业务参数,JSON字符串格式,相关说明参见车场景能力文档 | |
业务响应参数: | ||||
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
bizResults | String | 否 | 车场景能力业务结果,JSON字符串格式,相关说明参见车场景能力文档 | |
业务异常: | ||||
异常码 | 说明 | |||
2002 | 厂商停车场ID不存在 | |||
3002 | 停车记录ID重复 |
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("123456");
ioTApiClientBuilderParams.setAppSecret("abcdefghijklmn");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
// 接口参数
request.putParam("vendorParkId","2947297626687");
request.putParam("vendorRecordId","R20200218135602565");
request.putParam("plateNo", "苏B11111");
request.putParam("plateColor", "BLUE");
request.putParam("inTime", 1550030400000);
request.put("inPictureUrl", "http://aliyun.com/parking.jpg");
request.put("inChannelId", "C19008934");
request.put("inChannelName", "天鹅座东门入口");
# 停车场景能力业务参数,根据需要传参
Map<String, JSONObject> bizParams = new HashMap<>();
JSONObject bizParam1 = new JSONObject();
bizParam1.put("alipayUserId", "2800437569838574893759327547");
bizParams.put("LEAVEPAY", bizParam1);
request.putParam("bizParams", JSON.toJSONString(bizParams));
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("park-api-pre.aliplus.com",
"/park/isv/v1/park/record/enter", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
请求示例
{
"id":"5e1c0fbc-acdb-4c47-9846-7fc9beedbe14",
"params":{
"vendorParkId": "2947297626687",
"vendorRecordId": "R20200218135602565",
"plateNo": "苏B11111",
"plateColor": "BLUE",
"inTime": 1550030400000,
"inPictureUrl": "http://aliyun.com/parking.jpg",
"inChannelId": "C19008934",
"inChannelName": "天鹅座东门入口",
"bizParams": "{
\"LEAVEPAY\": {
\"alipayUserId\": \"2800437569838574893759327547\"
}
}"
},
"request":{
"apiVer":"1.0.0"
},
"version":"1.0"
}
响应示例
{
"code": 200,
"data": {
"bizResults": "{
\"LEAVEPAY\": {
\"bizState\": 200,
\"bizContent\": {
\"alipayUserId\": \"2800437569838574893759327547\",
\"alipayParkingId\": \"PI1571995775528118818\",
\"authLevel\": 2
}
}
}"
},
"message": "success"
}
车辆离场完成成,实时将停车记录上传到云端。除了同步记录,还可以调用智能停车平台的云端能力进行更多业务处理,例如”先离场后付费”停车场景能力中的催缴通知,具体能力场景请参见停车场景能力文档。停车场库系统可以根据的业务需求选择性接入相应的停车场景能力。
path: /park/isv/v1/park/record/depart
version: 1.0.0
业务请求参数: | ||||
---|---|---|---|---|
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
vendorParkId | String | 是 | 64 | 场库系统的停车场ID |
vendorRecordId | String | 是 | 64 | 场库系统的停车记录ID,和入场记录ID一致 |
plateNo | String | 是 | 16 | 车牌号 |
plateColor | String | 是 | 车牌颜色,枚举值如下: - BLUE : 蓝色 - YELLOW : 黄色 - GREEN : 绿色 - BLACK : 黑色 - WHITE : 白色 |
|
inTime | Long | 否 | 入场时间,UTC时间(UNIX毫秒时间戳),传入该参数时会更新停车记录中的入场时间 | |
outTime | Long | 是 | 离场时间,UTC时间(UNIX毫秒时间戳) | |
outPictureUrl | String | 否 | 512 | 车辆离场图片,实时性要求高时可以通4.2.7图片上传接口补传图片 |
outChannelId | String | 是 | 出口通道(出入口/岗亭)ID,没有对通道进行管理的停车系统传”无” | |
outChannelName | String | 是 | 出口通道(出入口/岗亭)名称,没有对通道进行管理的停车系统传”无” | |
bizParams | String | 否 | 车场景能力业务参数,JSON字符串格式,相关说明参见车场景能力文档 | |
业务响应参数: | ||||
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
bizResults | String | 否 | 车场景能力业务结果,JSON字符串格式,相关说明参见车场景能力文档 | |
业务异常: | ||||
异常码 | 说明 | |||
2002 | 厂商停车场ID不存在 | |||
3001 | 车辆离场对应的入场记录不存在 | |||
3002 | 停车记录ID重复 |
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("123456");
ioTApiClientBuilderParams.setAppSecret("abcdefghijklmn");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
// 接口参数
request.putParam("vendorParkId","2947297626687");
request.putParam("vendorRecordId","R20200218135602565");
request.putParam("plateNo", "苏B11111");
request.putParam("plateColor", "BLUE");
request.putParam("outTime", 1550034300000);
request.put("outPictureUrl", "http://aliyun.com/parking.jpg");
request.put("outChannelId", "C19008935");
request.put("outChannelName", "天鹅座东门出口");
# 停车场景能力业务参数,根据需要传参
Map<String, JSONObject> bizParams = new HashMap<>();
JSONObject bizParam1 = new JSONObject();
bizParam1.put("alipayUserId", "2800437569838574893759327547");
bizParams.put("LEAVEPAY", bizParam1);
request.putParam("bizParams", JSON.toJSONString(bizParams));
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("park-api-pre.aliplus.com",
"/park/isv/v1/park/record/depart", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
请求示例
{
"id":"5e1c0fbc-acdb-4c47-9846-7fc9beedbe14",
"params":{
"vendorParkId": "2947297626687",
"vendorRecordId": "R20200218135602565",
"plateNo": "苏B11111",
"plateColor": "BLUE",
"outTime": 1550034300000,
"outPictureUrl": "http://aliyun.com/parking.jpg",
"outChannelId": "C19008935",
"outChannelName": "天鹅座东门出口",
"bizParams": "{
\"LEAVEPAY\": {
\"alipayUserId\": \"2800437569838574893759327547\"
}
}"
},
"request":{
"apiVer":"1.0.0"
},
"version":"1.0"
}
响应示例
{
"code": 200,
"data": {
"bizResults": "{
\"LEAVEPAY\": {
\"bizState\": 200,
\"bizContent\": {
}
}
}"
},
"message": "success"
}
车辆离场完成成,实时将停车记录上传到云端。除了同步记录,还可以调用智能停车平台的云端能力进行更多业务处理,例如”先离场后付费”停车场景能力中的催缴通知,具体能力场景请参见停车场景能力文档。停车场库系统可以根据的业务需求选择性接入相应的停车场景能力。
path: /park/isv/v1/park/bill/upload
version: 1.0.0
业务请求参数: | ||||
---|---|---|---|---|
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
vendorParkId | String | 是 | 64 | 场库系统的停车场ID |
vendorBillId | String | 是 | 64 | 场库系统场账单ID |
vendorRecordId | String | 是 | 64 | 场库系统场账单ID对应的停车记录ID |
plateNo | String | 是 | 16 | 车牌号,如果未识别传”无车牌” |
chargeStartTime | Long | 是 | 计费开始时间,UTC时间(UNIX毫秒时间戳) | |
chargeEndTime | Long | 是 | 计费结束时间,UTC时间(UNIX毫秒时间戳) | |
billAmount | Integer | 是 | 账单计费金额,单位:分 | |
receivableAmount | Integer | 是 | 账单应收金额(减去优惠后的),单位:分 | |
paidAmount | Integer | 否 | 账单实收金额,单位:分 | |
billCreateTime | Long | 是 | 账单生成时间,UTC时间(UNIX毫秒时间戳) | |
billPayTime | Long | 否 | 支付渠道返回的支付成功时间,UTC时间(UNIX毫秒时间戳) | |
payMethod | String | 是 | 支付方式: - FREE : 免费 - BARCODE : 扫码付 - APP : APP付款 - ETC : ETC - OTHER : 其他 |
|
payChannel | String | 是 | 支付渠道: - CASH : 现金 - ETC : ETC - ALIPAY : 支付宝 - WECHAT : 微信 - UNIONPAY : 银联 |
- CMB : 招商银行
- CCB : 建设银行
- FUYOU : 富友
- OTHER : 其他
|| payAccount | String | 否 | 128 | 支付渠道对应的支付账号,例如支付宝支付则传用户支付宝ID, 微信支持传用户OpenID || couponInfo | String | 否 | | 优惠信息,JSON结构 || bizParams | String | 否 | | 车场景能力业务参数,JSON字符串格式,相关说明参见车场景能力文档 || 业务响应参数: | | | | || 参数名称 | 参数类型 | 必填 | 长度 | 说明 || bizResults | String | 否 | | 车场景能力业务结果,JSON字符串格式,相关说明参见车场景能力文档 || | | | | |
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("123456");
ioTApiClientBuilderParams.setAppSecret("abcdefghijklmn");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
// 接口参数
request.putParam("vendorParkId","2947297626687");
request.putParam("vendorBillId","90001");
request.putParam("vendorRecordId","R20200218135602565");
request.putParam("plateNo", "苏B11111");
request.putParam("chargeStartTime", 1550030400000);
request.putParam("chargeEndTime", 1550034500000);
request.putParam("billAmount", 1000);
request.putParam("reveivableAmount", 200);
request.putParam("paidAmount", 200);
request.putParam("billCreateTime", 1550034500000);
request.putParam("billPayTime", 1550034500000);
request.putParam("payMethod", "APP");
request.putParam("payChannel", "ALIPAY");
request.putParam("payAccount", "2800437569838574893759327547");
request.putParam("couponInfo", "{\"couponId\": \"xbdgxv294bs\", \"amount\": 800}");
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("park-api-pre.aliplus.com",
"/park/isv/v1/park/bill/upload", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
请求示例
{
"id":"5e1c0fbc-acdb-4c47-9846-7fc9beedbe14",
"params":{
"vendorParkId": "2947297626687",
"vendorBillId": "90001",
"vendorRecordId": "R20200218135602565",
"plateNo": "苏B11111",
"chargeStartTime": 1550030400000,
"chargeEndTime": 1550034500000,
"billAmount": 1000,
"reveivableAmount": 200,
"paidAmount": 200,
"billCreateTime": 1550034500000,
"billPayTime": 1550034500000,
"payMethod": "APP",
"payChannel": "ALIPAY",
"payAccount": "2800437569838574893759327547",
"couponInfo": "{\"couponId\": \"xbdgxv294bs\", \"amount\": 800}"
},
"request":{
"apiVer":"1.0.0"
},
"version":"1.0"
}
响应示例
{
"code": 200,
"data": {
},
"message": "success"
}
车辆进离场时将图片上传至云端。图片上传可能比较耗时,为保证进离场记录上报的实时性,停车管理系统可以先不带图片上报进离场记录,待图片上传完成后再调用本接口上传图片。
path: /park/isv/v1/park/record/picture/upload
version: 1.0.0
业务请求参数: | ||||
---|---|---|---|---|
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
vendorParkId | String | 是 | 64 | 场库系统的停车场ID |
vendorRecordId | String | 是 | 64 | 场库系统场账单ID对应的停车记录ID |
pictureUrl | String | 是 | 512 | 进离场图片URL |
pictureType | String | 是 | 16 | 图片类型: - IN : 入场图片 - OUT : 离场图片 |
业务响应参数: | ||||
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
- | - | - | - | - |
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("123456");
ioTApiClientBuilderParams.setAppSecret("abcdefghijklmn");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
// 接口参数
request.putParam("vendorParkId", "2947297626687");
request.putParam("vendorRecordId", "R20200218135602565");
request.putParam("pictureUrl", "http://aliyun.com/parking.jpg");
request.putParam("pictureType", "IN");
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("park-api-pre.aliplus.com",
"/park/isv/v1/park/record/picture/upload", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
请求示例
{
"id":"5e1c0fbc-acdb-4c47-9846-7fc9beedbe14",
"params":{
"vendorParkId": "2947297626687",
"vendorRecordId": "R20200218135602565",
"pictureUrl": "http://aliyun.com/parking.jpg",
"pictureType": "IN"
},
"request":{
"apiVer":"1.0.0"
},
"version":"1.0"
}
响应示例
{
"code": 200,
"data": null,
"message": "success"
}
{
"code": 200,
"data": {
"serverTime": 1550030410000
},
"message": "success"
}
在阿里云智能停车平台创建新车场,停车场和停车厂商系统的停车场是一对一关联的。为保证一致性,停车厂商在创建停车场时,需要先调用本接口在阿里云停车平台创建停车场。
path: /park/isv/v1/park/create
version: 1.0.1
业务请求参数: | ||||
---|---|---|---|---|
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
vendorParkId | String | 是 | 64 | 停车厂商停车管理系统内停车场的标识ID |
parkName | String | 是 | 64 | 停车场名称 |
address | String | 是 | 128 | 停车场地址 |
longitude | Double | 是 | 停车场位置经度 (高德坐标系) | |
latitude | Double | 是 | 停车场位置纬度 (高德坐标系) | |
totalSpace | Integer | 是 | 总车位数 | |
parkEstateType | String | 是 | 32 | 停车场物业类型,枚举值如下: - PUBLIC_PAKRING 公共停车场 - APPERTAIN_PARKING 配建停车场 - RESERVED_PARKING 专用停车场 |
parkBusinessType | String | 是 | 64 | 停车场商业类型,枚举值如下: - OFFICE_BUILDING 写字楼 - RESIDENTIAL 小区 - HOSPITAL 医院 - PUBLIC_SERVICE 公共事业 - GOVERNMENT 政府机构 - TRANSPORTATION_HUB 交通枢纽 - SHOPPING_MALL 购物中心 - SPECIAL_USE 专用停车场 - RESTAURANT 餐饮 - ENTERTAINMENT 娱乐 - HOTEL 宾馆 - TOURISM 景点 - SCHOOL 学校 - EXHIBITION 场馆会展中心 - COMPREHENSIVE 综合 - UNKNOWN 未知 |
pictureUrls | List | 否 | 10 | 停车场图片URL,最多10张,第1张为主图 |
业务响应参数: | ||||
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
- | - | - | - | - |
业务异常: | ||||
异常码 | 说明 | |||
2003 | 厂商停车场ID已存在 | |||
2004 | 根据坐标经纬度找不到对应的地址 |
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("123456");
ioTApiClientBuilderParams.setAppSecret("abcdefghijklmn");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
// 接口参数
request.putParam("vendorParkId", "p23734375693");
request.putParam("parkName", "天鹅座停车场");
request.putParam("address", "无锡市新吴区净慧东路96号");
request.putParam("longitude", 120.367013);
request.putParam("latitude", 31.492141);
request.putParam("totalSpace", 100);
request.putParam("parkEstateType", "PUBLIC_PAKRING");
request.putParam("parkBusinessType", "OFFICE_BUILDING");
request.putParam("pictureUrls", ["http://aliyun.com/parking.jpg"]);
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("park-api-pre.aliplus.com",
"/park/isv/v1/park/create", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
HTTP Client调用
请求示例
{
"id":"5e1c0fbc-acdb-4c47-9846-7fc9beedbe14",
"params":{
"vendorParkId": "p23734375693",
"parkName": "天鹅座停车场",
"address": "无锡市新吴区净慧东路96号",
"longitude": 120.367013,
"latitude": 31.492141,
"totalSpace": 100,
"parkEstateType": "PUBLIC_PAKRING",
"parkBusinessType": "OFFICE_BUILDING",
"pictureUrls": ["http://aliyun.com/parking.jpg"],
},
"request":{
"apiVer":"1.0.0"
},
"version":"1.0"
}
响应示例
{
"code": 200,
"data": null,
"message": "success"
}
删除阿里云智能停车平台停车场,合作伙伴删除停车场时需调用本接口,保存双方系统数据一致。
path: /park/isv/v1/park/delete
version: 1.0.0
业务请求参数: | ||||
---|---|---|---|---|
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
vendorParkId | String | 是 | 64 | 停车厂商停车管理系统内停车场的标识ID |
业务响应参数: | ||||
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
- | - | - | - | - |
业务异常: | ||||
异常码 | 说明 | |||
2002 | 厂商停车场ID不存在 |
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("123456");
ioTApiClientBuilderParams.setAppSecret("abcdefghijklmn");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
// 接口参数
request.putParam("vendorParkId", "p23734375693");
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("park-api-pre.aliplus.com",
"/park/isv/v1/park/delete", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
请求示例
{
"id":"5e1c0fbc-acdb-4c47-9846-7fc9beedbe14",
"params":{
"vendorParkId": "p23734375693"
},
"request":{
"apiVer":"1.0.0"
},
"version":"1.0"
}
响应示例
{
"code": 200,
"data": null,
"message": "success"
}
更新阿里云智能停车平台停车场信息,合作伙伴修改停车场信息时需调用本接口,保存双方系统数据一致。
path: /park/isv/v1/park/update
version: 1.0.0
业务请求参数: | ||||
---|---|---|---|---|
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
vendorParkId | String | 是 | 64 | 停车厂商停车管理系统内停车场的标识ID |
parkName | String | 是 | 64 | 停车场名称 |
address | String | 是 | 128 | 停车场地址 |
longitude | Double | 是 | 停车场位置经度 (高德坐标系) | |
latitude | Double | 是 | 停车场位置纬度 (高德坐标系) | |
totalSpace | Integer | 是 | 总车位数 | |
parkEstateType | String | 是 | 32 | 停车场物业类型,枚举值如下: - PUBLIC_PAKRING 公共停车场 - APPERTAIN_PARKING 配建停车场 - RESERVED_PARKING 专用停车场 |
parkBusinessType | String | 是 | 64 | 停车场商业类型,枚举值如下: - OFFICE_BUILDING 写字楼 - RESIDENTIAL 小区 - HOSPITAL 医院 - PUBLIC_SERVICE 公共事业 - GOVERNMENT 政府机构 - TRANSPORTATION_HUB 交通枢纽 - SHOPPING_MALL 购物中心 - SPECIAL_USE 专用停车场 - RESTAURANT 餐饮 - ENTERTAINMENT 娱乐 - HOTEL 宾馆 - TOURISM 景点 - SCHOOL 学校 - EXHIBITION 场馆会展中心 - COMPREHENSIVE 综合 - UNKNOWN 未知 |
pictureUrls | List | 否 | 10 | 停车场图片URL,最多10张,第1张为主图 |
业务响应参数: | ||||
参数名称 | 参数类型 | 必填 | 长度 | 说明 |
- | - | - | - | - |
业务异常: | ||||
异常码 | 说明 | |||
2002 | 厂商停车场ID不存在 | |||
2004 | 根据坐标经纬度找不到对应的地址 |
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();
ioTApiClientBuilderParams.setAppKey("123456");
ioTApiClientBuilderParams.setAppSecret("abcdefghijklmn");
SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);
IoTApiRequest request = new IoTApiRequest();
//设置api的版本
request.setApiVer("1.0.0");
// 接口参数
request.putParam("vendorParkId", "p23734375693");
request.putParam("parkName", "天鹅座停车场");
request.putParam("address", "无锡市新吴区净慧东路96号");
request.putParam("longitude", 120.367013);
request.putParam("latitude", 31.492141);
request.putParam("totalSpace", 100);
request.putParam("parkEstateType", "PUBLIC_PAKRING");
request.putParam("parkBusinessType", "OFFICE_BUILDING");
request.putParam("pictureUrls", ["http://aliyun.com/parking.jpg"]);
//请求参数域名、path、request
ApiResponse response = syncApiClient.postBody("park-api-pre.aliplus.com",
"/park/isv/v1/park/update", request);
System.out.println("response code = " + response.getCode()
+ " response content = " + new String(response.getBody(), "utf-8"));
请求示例
{
"id":"5e1c0fbc-acdb-4c47-9846-7fc9beedbe14",
"params":{
"vendorParkId": "p23734375693",
"parkName": "天鹅座停车场",
"address": "无锡市新吴区净慧东路96号",
"longitude": 120.367013,
"latitude": 31.492141,
"totalSpace": 100,
"parkEstateType": "PUBLIC_PAKRING",
"parkBusinessType": "OFFICE_BUILDING",
"pictureUrls": ["http://aliyun.com/parking.jpg"],
},
"request":{
"apiVer":"1.0.0"
},
"version":"1.0"
}
响应示例
{
"code": 200,
"data": null,
"message": "success"
}
在文档使用中是否遇到以下问题
更多建议
匿名提交