运营商ID是平台分配给对应渠道方的唯一代码(长度9位,由数字及大小写字符组成)。
查询接口和回调接口均需要满足以下格式要求:
Content-Type 为 application/json; Authorization 为 Bearer token(平台认证接口用于获取token)入参示例:
{
"operatorId": "123456789",
"data": "mYvffpNoFf4E/ZTC1tOw41TC5OlkEobfAYCm5N8hEusaLUaUIqOrXtdbMrSck0DSmfM7mRuOGMoCQzH0nWPGuw==",
"timeStamp": "20180120165755",
"seq": "0001",
"sig": "D2D584A14F3F284445DF85D0E8C0697C"
}
出参示例:
{
"ret": 0,
"msg": "",
"data": "uxeKP0ezR5yL8xSg4/ZCDh/N91/u86NXFxd2DrwZVW8zCPYcpl59Twz/yQZ3RaO4rDDrGmkvQignmNEJ+k4PGxdmIC+4fpJ8rU6osSobY+AeA0uueuQ5+eQiWBL6p6v5XMMm91brtK8yfFELYUWQzVcxABnAwK/+dyxtUhqLIxUpkwTEU/4ktN40df9IzzlLO5uvUknPGYu9yL0pp5w9vdRxmA1RiiTDNCysz6klr9bunGV3VJa2qpLcgeZMf/oG",
"sig": "58E52010C7DEE87FE183B0AFA5B2BE30"
}
data 里的内容为接口的实际入参和出参,均需要密文传输operatorId + data + timeStamp + seqret + msg + data| 返回码 | 说明 |
|---|---|
| 0 | 请求成功 |
| 500 | 系统错误 |
| 4001 | 签名错误 |
| 4002 | token错误 |
| 4003 | 参数不合法,缺少必需的参数:operatorId、sig、timeStamp、data、seq |
| 4004 | 请求的业务参数不合法,各接口定义自己的必须参数 |
/third-party/v1/query_token| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| operatorId | 运营商标识 | String | 请求方唯一编号 | 是 |
| operatorSecret | 运营商密钥 | String | 被调用方分配的唯一识别密钥 | 是 |
data加密前:
{
"operatorId": "123456789",
"operatorSecret": "1234567890abcdef"
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| operatorId | 运营商标识 | String | 运营商唯一标识 |
| resultStatus | 操作结果标识 | Integer | 0-成功,1-失败 |
| accessToken | 访问令牌 | String | token令牌 |
| tokenExpirationTime | token有效期 | Integer | 有效期,单位秒 |
| failReason | 失败原因 | Integer | 0-无,1-operatorId无效 |
data解密后:
{
"operatorId": "123456789",
"resultStatus": 0,
"accessToken": "kVnStIRknCCOBdXgJrmu8rb3pcccifKW2NcQrysKKIzb7iQBxkkjeq3WoGdjgrIL",
"tokenExpirationTime": 7200,
"failReason": 0
}
/third-party/v1/query_recharge_level_pageAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| pageNum | 页码 | Long | 页码,默认1 | 否 |
| pageSize | 每页记录数 | Long | 每页记录数,默认10 | 否 |
data加密前:
{
"pageNum": 1,
"pageSize": 10
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| total | 总记录数 | Long | 总记录数 |
| pageNum | 当前页码 | Long | 当前页码 |
| pageSize | 每页记录数 | Long | 每页记录数 |
| pages | 总页数 | Long | 总页数 |
| records | 数据列表 | Array | 充值档位列表 |
records 数组元素:
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| id | 档位ID | Long | 档位ID |
| name | 档位名称 | String | 充值档位名称 |
| money | 充值金额 | BigDecimal | 充值金额 |
| status | 状态 | Integer | 0-不可用,1-可用 |
| tips | 充值提示 | String | 充值提示 |
data解密后:
{
"total": 5,
"pageNum": 1,
"pageSize": 10,
"pages": 1,
"records": [
{
"id": 1,
"name": "10元档位",
"money": 10.00,
"status": 1,
"tips": "此券可以用于抵扣充电费用"
}
]
}
/third-party/v1/query_user_infoAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| phone | 手机号 | String | 用户手机号 | 是 |
data加密前:
{
"phone": "13800138000"
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| isNewUser | 是否新用户 | Integer | 0-否,1-是 |
| userInfo | 用户信息 | Object | 用户基本信息 |
| accountInfo | 账户信息 | Object | 用户账户信息 |
userInfo 对象:
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| userId | 用户ID | Long | 用户ID |
| nickName | 昵称 | String | 用户昵称 |
| phone | 手机号 | String | 用户手机号 |
| openid | 微信openid | String | 微信openid |
accountInfo 对象:
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| accountId | 账户ID | Long | 账户ID |
| balance | 可用抵用券余额 | BigDecimal | 可用抵用券余额 |
| redeemBalance | 兑换余额 | BigDecimal | 兑换余额 |
| integral | 积分 | BigDecimal | 积分 |
data解密后:
{
"isNewUser": 0,
"userInfo": {
"userId": 10001,
"nickName": "张三",
"phone": "13800138000",
"openid": "oXyZ123456"
},
"accountInfo": {
"accountId": 20001,
"balance": 100.00,
"redeemBalance": 50.00,
"integral": 500.00
}
}
/third-party/v1/charge_order_payAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| levelId | 充值档位ID | Long | 充值档位ID | 是 |
| userId | 用户ID | Long | 用户ID | 是 |
| phone | 手机号 | String | 用户手机号 | 是 |
| orderNo | 订单号 | String | 第三方订单号 | 是 |
| payTime | 支付时间 | String | 支付时间 | 是 |
| totalMoney | 总金额 | String | 充值总金额 | 是 |
data加密前:
{
"levelId": 1,
"userId": 10001,
"phone": "13800138000",
"orderNo": "TP2024031600001",
"payTime": "2024-03-16 10:30:00",
"totalMoney": "100.00"
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| result | 充值结果 | Integer | 0-成功,1-失败 |
| message | 结果消息 | String | 结果描述 |
| userId | 用户ID | Long | 用户ID |
| rechargeMoney | 充值金额 | BigDecimal | 实际充值金额 |
| balanceAfter | 充值后余额 | BigDecimal | 充值后账户余额 |
| orderNo | 第三方订单号 | String | 第三方订单号 |
data解密后:
{
"result": 0,
"message": "充值成功",
"userId": 10001,
"rechargeMoney": 100.00,
"balanceAfter": 200.00,
"orderNo": "TP2024031600001"
}
/third-party/v1/query_charge_station_listAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| pageNum | 页码 | Long | 页码,默认1 | 否 |
| pageSize | 每页记录数 | Long | 每页记录数,默认10 | 否 |
| sortType | 请求类别 | Integer | 1-离我最近、2-空闲最多、3-电费最低 | 否 |
| longitude | 经度 | BigDecimal | 用户当前位置经度 | 否 |
| latitude | 纬度 | BigDecimal | 用户当前位置纬度 | 否 |
data加密前:
{
"pageNum": 1,
"pageSize": 10,
"sortType": 1,
"longitude": 116.404,
"latitude": 39.915
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| total | 总记录数 | Long | 总记录数 |
| pageNum | 当前页码 | Long | 当前页码 |
| pageSize | 每页大小 | Long | 每页大小 |
| pages | 总页数 | Long | 总页数 |
| list | 站点列表 | Array | 充电站列表 |
list 数组元素:
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| stationId | 站点ID | Long | 充电站ID |
| stationName | 站点名称 | String | 充电站名称 |
| tips | 提示语 | String | 站点提示信息 |
| distance | 距离 | BigDecimal | 距离(km) |
| fastCharging | 快充 | String | 格式:空闲/总数 |
| slowCharging | 慢充 | String | 格式:空闲/总数 |
| peakValue | 当前峰值 | String | 当前峰值 |
| peakTime | 峰时段时间 | String | 峰时段时间 |
| periodFlag | 时段标志 | Integer | 1-尖,2-峰,3-平,4-谷 |
| platformPrice | 平台价 | BigDecimal | 平台价格 |
data解密后:
{
"total": 50,
"pageNum": 1,
"pageSize": 10,
"pages": 5,
"list": [
{
"stationId": 1,
"stationName": "XX充电站",
"tips": "充电减免2小时停车费",
"distance": 1.5,
"fastCharging": "5/10",
"slowCharging": "3/8",
"peakValue": "1.2元/度",
"peakTime": "10:00-13:00",
"periodFlag": 2,
"platformPrice": 1.20
}
]
}
/third-party/v1/query_charge_station_detailAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| stationId | 充电站ID | Long | 充电站ID | 是 |
| longitude | 经度 | BigDecimal | 用户当前位置经度 | 否 |
| latitude | 纬度 | BigDecimal | 用户当前位置纬度 | 否 |
data加密前:
{
"stationId": 1,
"longitude": 116.404,
"latitude": 39.915
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| stationId | 站点ID | Long | 充电站ID |
| stationName | 站点名称 | String | 充电站名称 |
| tips | 提示语 | String | 标签提示信息 |
| distance | 距离 | BigDecimal | 距离(km) |
| address | 详细地址 | String | 充电站详细地址 |
| longitude | 经度 | BigDecimal | 站点经度 |
| latitude | 纬度 | BigDecimal | 站点纬度 |
| pictures | 站点图片 | String | 站点图片列表(JSON数组) |
| currentPrice | 当前价 | BigDecimal | 当前价(元/度) |
| currentPeriod | 当前时段 | String | 当前时段描述 |
| originalPrice | 原价 | BigDecimal | 原价/划线价(元/度) |
| periodFlag | 时段标志 | Integer | 1-尖,2-峰,3-平,4-谷 |
| idleCount | 空闲终端数 | Integer | 空闲终端数量 |
| occupiedCount | 占用终端数 | Integer | 占用终端数量 |
| offlineCount | 离线终端数 | Integer | 离线终端数量 |
| businessHours | 营业时间 | String | 营业时间 |
| serviceProvider | 服务提供方 | String | 服务提供方名称 |
| invoiceProvider | 发票提供方 | String | 发票提供方名称 |
| customerServiceHotline | 客服热线 | String | 客服电话 |
| connectorList | 充电终端列表 | Array | 充电终端信息列表 |
connectorList 数组元素:
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| connectorId | 充电终端ID | Long | 充电终端ID |
| connectorName | 终端名称 | String | 终端名称 |
| equipmentType | 终端分类 | String | 终端分类描述 |
| connectorCode | 终端编码 | String | 终端编码 |
| status | 状态 | Integer | 0-离线,1-空闲,2-占用 |
| statusName | 状态名称 | String | 状态描述 |
data解密后:
{
"stationId": 1,
"stationName": "XX充电站",
"tips": "充电减免2小时停车费,超出部分按每小时3元计费",
"distance": 1.5,
"address": "北京市朝阳区XX路XX号",
"longitude": 116.404,
"latitude": 39.915,
"pictures": "[\"http://xxx.com/1.jpg\"]",
"currentPrice": 1.20,
"currentPeriod": "峰10:00-13:00",
"originalPrice": 1.50,
"periodFlag": 2,
"idleCount": 5,
"occupiedCount": 3,
"offlineCount": 2,
"businessHours": "周一至周日 00:00-24:00",
"serviceProvider": "XX充电服务",
"invoiceProvider": "XX科技有限公司",
"customerServiceHotline": "400-XXX-XXXX",
"connectorList": [
{
"connectorId": 101,
"connectorName": "101号直流充电桩",
"equipmentType": "直流设备",
"connectorCode": "CONN001",
"status": 1,
"statusName": "空闲"
}
]
}
/third-party/v1/query_charge_device_detailAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| id | 设备主键ID | Long | 设备主键ID | 否 |
| equipmentId | 设备编码 | String | 设备编码 | 否 |
注:id 和 equipmentId 至少传一个
data加密前:
{
"id": 101,
"equipmentId": "EQ001"
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| connectorId | 充电设备接口ID | Long | 充电设备接口ID |
| connectorCode | 充电设备接口编码 | String | 充电设备接口编码 |
| connectorName | 充电设备接口名称 | String | 充电设备接口名称 |
| stationId | 充电站ID | Long | 所属充电站ID |
| stationName | 充电站名称 | String | 所属充电站名称 |
| stationAddress | 充电站地址 | String | 所属充电站地址 |
| equipmentId | 设备ID | Long | 设备ID |
| equipmentCode | 设备编码 | String | 设备编码 |
| equipmentName | 设备名称 | String | 设备名称 |
| equipmentType | 设备类型 | Integer | 1-直流设备,2-交流设备,3-交直流一体设备,4-无线设备,5-其他 |
| equipmentTypeName | 设备类型名称 | String | 设备类型描述 |
| parkNo | 车位号 | String | 车位号 |
| status | 终端状态 | Integer | 0-离网,1-空闲,2-占用(未充电),3-占用(充电中),4-占用(预约锁定),255-故障 |
| statusName | 终端状态名称 | String | 终端状态描述 |
| connectorType | 接口类型 | Integer | 1-家用插座,2-交流接口插座,3-交流接口插头,4-直流接口枪头,5-无线充电座,6-其他 |
| connectorTypeName | 接口类型名称 | String | 接口类型描述 |
| voltageUpperLimits | 额定电压上限 | Integer | 单位V |
| voltageLowerLimits | 额定电压下限 | Integer | 单位V |
| current | 额定电流 | Integer | 单位A |
| power | 额定功率 | BigDecimal | 单位kW |
| nationalStandard | 国家标准 | Integer | 1-2011,2-2015 |
| nationalStandardName | 国家标准名称 | String | 国家标准描述 |
| currentPrice | 常规价格 | BigDecimal | 元/度(电价+服务费+常规运营费+增值费用) |
| periodFlag | 时段标志 | Integer | 1-尖,2-峰,3-平,4-谷 |
| currentPeriodDesc | 当前时段描述 | String | 当前时段描述 |
| parkingTips | 停车费说明 | String | 提示语/停车费说明 |
data解密后:
{
"connectorId": 101,
"connectorCode": "CONN001",
"connectorName": "101号充电口",
"stationId": 1,
"stationName": "XX充电站",
"stationAddress": "北京市朝阳区XX路XX号",
"equipmentId": 10,
"equipmentCode": "EQ001",
"equipmentName": "1号直流充电桩",
"equipmentType": 1,
"equipmentTypeName": "直流设备",
"parkNo": "A001",
"status": 1,
"statusName": "空闲",
"connectorType": 4,
"connectorTypeName": "直流接口枪头",
"voltageUpperLimits": 750,
"voltageLowerLimits": 200,
"current": 250,
"power": 120.00,
"nationalStandard": 2,
"nationalStandardName": "2015",
"currentPrice": 1.20,
"periodFlag": 2,
"currentPeriodDesc": "峰时段 10:00-13:00",
"parkingTips": "充电减免2小时停车费"
}
/third-party/v1/invoke_chargeAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| equipmentId | 充电桩编号 | String | 充电桩编号 | 是 |
| stationId | 第三方充电站ID | String | 充电站ID | 是 |
| connectorId | 充电设备接口编码 | String | 充电设备接口编码 | 是 |
| channelOrderNo | 渠道方订单编号 | String | 第三方平台订单编号 | 是 |
| channelUserPhone | 渠道方用户手机号 | String | 用户手机号 | 是 |
| channelPreAmt | 渠道方预支付金额 | BigDecimal | 预支付金额 | 是 |
data加密前:
{
"equipmentId": "EQ001",
"stationId": "1",
"connectorId": "CONN001",
"channelOrderNo": "CH2024031600001",
"channelUserPhone": "13800138000",
"channelPreAmt": 100.00
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| result | 启动结果 | Integer | 0-成功,1-失败 |
| message | 结果消息 | String | 结果描述 |
| chargeOrderId | 充电订单ID | Long | 平台充电订单ID |
| chargeOrderNo | 充电订单编号 | String | 平台充电订单编号 |
| status | 充电状态 | Integer | 0-待启动,1-充电中,2-结算中,3-已完成,5-未成功充电 |
data解密后:
{
"result": 0,
"message": "启动充电成功",
"chargeOrderId": 100001,
"chargeOrderNo": "CD2024031600001",
"status": 1
}
/third-party/v1/stop_chargeAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| chargeOrderNo | 充电订单编号 | String | 平台充电订单编号 | 是 |
data加密前:
{
"chargeOrderNo": "CD2024031600001"
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| result | 停止结果 | Integer | 0-成功,1-失败 |
| message | 结果消息 | String | 结果描述 |
| chargeOrderId | 充电订单ID | Long | 平台充电订单ID |
| chargeOrderNo | 充电订单编号 | String | 平台充电订单编号 |
| status | 充电状态 | Integer | 0-待启动,1-充电中,2-结算中,3-已完成,5-未成功充电 |
data解密后:
{
"result": 0,
"message": "停止充电成功",
"chargeOrderId": 100001,
"chargeOrderNo": "CD2024031600001",
"status": 2
}
/third-party/v1/query_charge_order_listAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| operatorId | 运营商ID | String | 运营商唯一标识 | 是 |
| userId | 用户ID | Long | 用户ID | 否 |
| chargeOrderNo | 充电订单号 | String | 充电订单号 | 否 |
| pageNo | 页码 | Long | 页码,默认1 | 否 |
| pageSize | 每页记录数 | Long | 每页记录数,默认10 | 否 |
data加密前:
{
"operatorId": "123456789",
"userId": 10001,
"pageNo": 1,
"pageSize": 10
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| total | 总记录数 | Long | 总记录数 |
| pageNo | 当前页码 | Long | 当前页码 |
| pageSize | 每页记录数 | Long | 每页记录数 |
| pages | 总页数 | Long | 总页数 |
| records | 数据列表 | Array | 订单列表 |
records 数组元素:
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| id | 订单ID | Long | 订单ID |
| userId | 用户ID | Long | 用户ID |
| chargeOrderNo | 充电订单号 | String | 充电订单号 |
| equipmentId | 充电桩编号 | String | 充电桩编号 |
| connectorId | 充电设备接口编码 | String | 充电设备接口编码 |
| stationName | 充电站名称 | String | 充电站名称 |
| connectorName | 充电设备接口名称 | String | 充电设备接口名称 |
| startTime | 充电开始时间 | String | 充电开始时间 |
| endTime | 充电结束时间 | String | 充电结束时间 |
| chargeTime | 充电时长 | Integer | 充电时长(秒) |
| totalCharge | 实际充电度数 | BigDecimal | 单位:kW/h |
| status | 订单状态 | Integer | 0-待启动,1-充电中,2-结算中,3-已完成,5-未成功充电 |
| preAmt | 预充值金额 | BigDecimal | 预充值金额 |
| phoneNum | 手机号 | String | 用户手机号 |
| plateNum | 车牌号 | String | 车牌号 |
| stopType | 停止类型 | Integer | 1-主动停止,2-充满停止,3-余额不足停止,4-电桩按钮停止 |
| stopReason | 停止原因 | String | 停止原因描述 |
| createTime | 创建时间 | String | 订单创建时间 |
data解密后:
{
"total": 100,
"pageNo": 1,
"pageSize": 10,
"pages": 10,
"records": [
{
"id": 100001,
"userId": 10001,
"chargeOrderNo": "CD2024031600001",
"equipmentId": "EQ001",
"connectorId": "CONN001",
"stationName": "XX充电站",
"connectorName": "101号充电口",
"startTime": "2024-03-16 10:00:00",
"endTime": "2024-03-16 11:30:00",
"chargeTime": 5400,
"totalCharge": 30.50,
"status": 3,
"preAmt": 100.00,
"phoneNum": "13800138000",
"plateNum": "京A12345",
"stopType": 2,
"stopReason": "充满停止",
"createTime": "2024-03-16 10:00:00"
}
]
}
/third-party/v1/query_charge_order_infoAuthorization: Bearer {accessToken}| 参数名称 | 参数定义 | 参数类型 | 描述 | 是否必填 |
|---|---|---|---|---|
| chargeOrderNo | 充电订单号 | String | 充电订单号 | 是 |
data加密前:
{
"chargeOrderNo": "CD2024031600001"
}
| 参数名称 | 参数定义 | 参数类型 | 描述 |
|---|---|---|---|
| result | 查询结果 | Integer | 0-成功,1-失败 |
| message | 失败原因 | String | 失败原因描述 |
| id | 订单ID | Long | 订单ID |
| userId | 用户ID | Long | 用户ID |
| chargeOrderNo | 充电订单号 | String | 充电订单号 |
| equipmentId | 充电桩编号 | String | 充电桩编号 |
| connectorId | 充电设备接口编码 | String | 充电设备接口编码 |
| stationName | 充电站名称 | String | 充电站名称 |
| connectorName | 充电设备接口名称 | String | 充电设备接口名称 |
| startTime | 充电开始时间 | String | 充电开始时间 |
| endTime | 充电结束时间 | String | 充电结束时间 |
| chargeTime | 充电时长 | Integer | 充电时长(秒) |
| totalCharge | 实际充电度数 | BigDecimal | 单位:kW/h |
| status | 订单状态 | Integer | 0-待启动,1-充电中,2-结算中,3-已完成,5-未成功充电 |
| preAmt | 预充值金额 | BigDecimal | 预充值金额 |
| phoneNum | 手机号 | String | 用户手机号 |
| plateNum | 车牌号 | String | 车牌号 |
| stopType | 停止类型 | Integer | 1-主动停止,2-充满停止,3-余额不足停止,4-电桩按钮停止 |
| stopReason | 停止原因 | String | 停止原因描述 |
| createTime | 创建时间 | String | 订单创建时间 |
data解密后:
{
"result": 0,
"message": "",
"id": 100001,
"userId": 10001,
"chargeOrderNo": "CD2024031600001",
"equipmentId": "EQ001",
"connectorId": "CONN001",
"stationName": "XX充电站",
"connectorName": "101号充电口",
"startTime": "2024-03-16 10:00:00",
"endTime": "2024-03-16 11:30:00",
"chargeTime": 5400,
"totalCharge": 30.50,
"status": 3,
"preAmt": 100.00,
"phoneNum": "13800138000",
"plateNum": "京A12345",
"stopType": 2,
"stopReason": "充满停止",
"createTime": "2024-03-16 10:00:00"
}
对接需要配置以下参数,由平台给第三方平台提供这些参数信息:
| 参数名称 | 参数定义 | 参数说明 | 是否必填 | 备注 |
|---|---|---|---|---|
| operatorId | 运营商ID | 平台分配给对应渠道方的唯一代码(长度9位,由数字及大小写字符组成) | 是 | 用于标识运营商身份 |
| apiBaseUrl | 接口地址 | 平台提供的API接口基础地址 | 是 | 例如: https://cd.admin.zswlgz.com |
| operatorSecret | 运营商密钥 | 用于获取Token的密钥,由对方平台分配 | 是 | 用于申请认证 |
| sigSecret | 签名密钥 | 用于生成和验证消息签名的密钥 | 是 | 用于HMAC-MD5签名算法 |
| dataSecret | 数据密钥 | 用于AES加密和解密数据的密钥 | 是 | 16位密钥,用于data字段加解密 |
| dataSecretIV | 数据加密向量 | AES加密算法使用的初始化向量(IV) | 是 | 16字节向量,用于CBC模式加密 |
配置示例:
{
"operatorId": "123456789",
"apiBaseUrl": "https://cd.admin.zswlgz.com",
"operatorSecret": "your_operator_secret_key",
"sigSecret": "your_sign_secret_key",
"dataSecret": "your_data_encryption_key",
"dataSecretIV": "your_data_iv_vector"
}
⚠️ 重要提示:
- 以上所有参数由平台提供给第三方平台
- 密钥信息需要严格保密,不得泄露
- 配置参数需要双方确认无误后再进行接口对接