# 平台对外接口调用协议定义(HPS)
接口通过HPS(http get + MD5验签)协议接入,需要授权访问。
授权联系人:王智涛
接口负责人:赵振华
hps协议接入标准请求参数:
参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
---|---|---|---|---|---|
merchant_name | 接入用户名,接入用户名从接入平台获取 | query | true | string | |
signature_method | 签名方法,目前固定传 MD5 | query | true | string | |
signature | 签名(详见 HPS请求签名算法) | query | true | string | |
timestamp | 时间戳 | query | true | string | |
xxx | 业务参数 | query | true |
HPS请求签名算法
- 当前请求参数名的字母序进行升序排列(排序时区分大小写,signature和value为空的参数不参与签名);
- 将所有参数-值组合以 key=value 的形式拼成一个新字符串,不同参数值之间没有任何分隔符;
- 最后加上对应的签名密钥 secretKey(此密钥在接入时由王智涛提供给游戏相关接入人员) 后进行MD5哈希运算。如MD5方法的输入的字符串为:key1=value1key2=value2secretKey;
# G分查询接口(gcreditQuery)
接口地址:
联调环境:
http://pre.hps4billing.sdo.com:8800/gcredit/gcreditQuery
正式环境:
http://hps4billing.sdo.com/gcredit/gcreditQuery
请求方式:GET
响应数据类型:*/*
接口描述:
查询用户G分
请求参数:
参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
---|---|---|---|---|---|
uniqueId | 请求编号 | query | true | string | |
userId | 用户ID | query | true | string | |
userIdType | userIdType=1,userId传sndaId;userIdType=2,userId传手机号 | query | true | int | |
payTypeId | G分的货币类型 | query | true | int | |
eventTimestamp | 表示业务请求发起时间,格式为“yyyy-MM-dd HH:mm:ss” | query | true | int | |
endpointOS | C用户所使用的终端设备操作系统:1:Windows 2:Linux 3:IOS 4:Android 5:Symbian 6:WinPhone | query | true | int | |
endpointType | C用户所使用的终端设备的产品类型::1:PC 2:Mobile 3:Pad | query | true | int | |
endpointIp | 终端用户IP | query | true | string |
响应参数:
参数名称 | 参数说明 | 类型 | schema |
---|---|---|---|
return_code | 响应代码 | int | |
return_message | 响应信息 | string | |
data | 响应数据(object) | Object | |
resultCode | 返回代码 | int | |
resultMsg | 返回信息 | String | |
uniqueId | 请求编号 | String | |
phone | 手机号 | String | |
balance | G分余额 | int | |
freezedBalance | 冻结G分余额 | int | |
balanceInfo | G分余额详细信息:channelId1|balance1|beginTime1|endTime1# channelId2|balance2|beginTime2|endTime2#....不同的渠道,有不同的过期时间 | String | |
toExpiredBalanceInfo | G分余额详细信息:channelId1|balance1|beginTime1|endTime1# channelId2|balance2|beginTime2|endTime2#....不同的渠道,有不同的过期时间 | String | |
transactionTimestamp | 服务端接收到业务请求的时间,格式为“yyyy-MM-dd HH:mm:ss” | String |
# G分扣费接口(gcreditCharge)
接口地址:
联调环境:
http://pre.hps4billing.sdo.com:8800/gcredit/gcreditCharge
正式环境:
http://hps4billing.sdo.com/gcredit/gcreditCharge
请求方式:GET
响应数据类型:*/*
接口描述:
扣除用户G分
请求参数:
参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
---|---|---|---|---|---|
uniqueId | 请求编号 | query | true | string | |
userId | 用户ID | query | true | string | |
userIdType | userIdType=1,userId传sndaId;userIdType=2,userId传手机号 | query | true | int | |
payTypeId | G分的货币类型 | query | true | int | |
amount | 扣费金额 | query | true | int | |
tradeType | 业务类型 | query | true | int | |
appId | 应用ID | query | true | int | |
areaId | 区ID | query | true | int | |
itemId | 道具Id | query | true | int | |
itemNum | 道具数量 | query | true | int | |
eventTimestamp | 表示业务请求发起时间,格式为“yyyy-MM-dd HH:mm:ss” | query | true | int | |
endpointOS | C用户所使用的终端设备操作系统:1:Windows 2:Linux 3:IOS 4:Android 5:Symbian 6:WinPhone | query | true | int | |
endpointType | C用户所使用的终端设备的产品类型::1:PC 2:Mobile 3:Pad | query | true | int | |
endpointIp | 终端用户IP | query | true | string |
响应参数:
参数名称 | 参数说明 | 类型 | schema |
---|---|---|---|
return_code | 响应代码 | int | |
return_message | 响应信息 | string | |
data | 响应数据(object) | Object | |
resultCode | 返回代码 | int | |
resultMsg | 返回信息 | String | |
uniqueId | 请求编号 | String | |
orderId | 会员体系2.0返回的订单号 | String | |
phone | 手机号 | String | |
balance | G分余额 | int | |
freezedBalance | 冻结G分余额 | int | |
balanceInfo | G分余额详细信息:channelId1|balance1|beginTime1|endTime1#channelId2|balance2|beginTime2|endTime2#....不同的渠道,有不同的过期时间 | String | |
toExpiredBalanceInfo | G分余额详细信息:channelId1|balance1|beginTime1|endTime1#channelId2|balance2|beginTime2|endTime2#....不同的渠道,有不同的过期时间 | String | |
transactionTimestamp | 服务端接收到业务请求的时间,格式为“yyyy-MM-dd HH:mm:ss” | String |
# VIP等级查询接口(vipGradeQuery)
接口地址:
联调环境:
http://pre.hps4billing.sdo.com:8800/gcredit/vipGradeQuery
正式环境:
http://hps4billing.sdo.com/gcredit/vipGradeQuery
请求方式:GET
响应数据类型:*/*
接口描述:
查询用户VIP等级以及当前成长值
请求参数:
参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
---|---|---|---|---|---|
uniqueId | 请求编号 | query | true | string | |
userId | 用户ID | query | true | string | |
userIdType | userIdType=1,userId传sndaId;userIdType=2,userId传手机号 | query | true | int | |
eventTimestamp | 表示业务请求发起时间,格式为“yyyy-MM-dd HH:mm:ss” | query | true | int | |
endpointOS | C用户所使用的终端设备操作系统:1:Windows 2:Linux 3:IOS 4:Android 5:Symbian 6:WinPhone | query | true | int | |
endpointType | C用户所使用的终端设备的产品类型::1:PC 2:Mobile 3:Pad | query | true | int | |
endpointIp | 终端用户IP | query | true | string |
响应参数:
参数名称 | 参数说明 | 类型 | schema |
---|---|---|---|
return_code | 响应代码 | int | |
return_message | 响应信息 | string | |
data | 响应数据(object) | Object | |
resultCode | 返回代码 | int | |
resultMsg | 返回信息 | string | |
uniqueId | 总记录数 | int | |
vipGrade | VIP等级(取自然成长的VIP等级和VIP会员卡等级较高者) | int | |
curVipGrade | 当前VIP等级(自然成长) | int | |
nextVipGrade | 下一个VIP等级(自然成长) | int | |
purchaseVipGrade | VIP会员卡等级 | int | |
curVipGrowth | 当前成长值 | int | |
diffVipGrowth | 升级到下一VIP等级所需成长值 | int | |
transactionTimestamp | 服务端接收到业务请求的时间,格式为“yyyy-MM-dd HH:mm:ss” | string |