深圳硕软技术有限公司 技术支持中心 24小时服务电话:0755-82682968 在线远程协助QQ:2513402938
搜索:     高级搜索

API查询接口(专用)

文章ID: 62
最近更新: 2016年 04月 15日
Revision: 2
添加评论
查看: 451
评论: 0
发表: 2016年 02月 19日
通过 Ltisn L.
更新: 2016年 04月 15日
通过 Ltisn L.

硕汉宽固业务查询接口

协议版本号

序号

协议变更内容

协议版本号

版本日期

更新人

1

制定硕汉业务接口协议1.0版本

1.0

2015.4.16

江龙

1接口设计

1.1接口调用方式

1.1.1通信协议

Http协议、GET方式

1.1.2调用参数

分为系统参数和业务参数

1.1.2.1 系统参数

名称

类型

是否必须

描述

method

string

Y

API接口名称 queryUserInfo

timestamp

string

Y

时间戳,格式为yyyyMMddHHmmssSSS,例如:20130506135203528。

format

string

N

可选,指定响应格式。默认json,目前可选值:json

seller_id

string

Y

用户名

v

string

N

API协议版本,默认1.0,目前可选值:1.0

sign

string

Y

对 API 输入参数进行签名

sign_method

string

N

参数的签名方法选择,默认MD5,目前可选值是:MD5

1.1.2.2 业务参数

所有的业务参数采用json格式,整个json串采用名称biz_paras进行标示。

业务参数由于不同 API 各自不同,这里举例说明,更多请参考具体的业务API章节。

名称

参数名

类型

是否必须

示例值

默认值

取值说明

手机号码

phoneNo

String

13800001111

最终的业务参数json串为:

biz_paras={" phoneNo ":"13800001111"}

1.1.3 签名sign

1.1.3.1签名算法:MD 5

调用API 时需要对请求参数进行签名,服务器端需要会对该请求参数进行验证是否合法的,API提供方需为硕汉提供签名需要的secret密钥串,如:12jjse83jd93hf20sjfos93bk29

1.1.3.2 签名内容

  1. sign参数不参与签名
  2. 将其他所有系统参数和biz_paras按照参数名称字符升序排列,排序后,所有参数以&连接起来,最后再拼接上secret密钥串,则得到待签名的字符串
  3. 使用MD5算法进行签名,签名得到的byte[]以十六进制Hex转为字符串,然后赋给sign参数
  4. 签名使用utf-8字符集编码

  • phoneNo ":"13800001111"}&format=json&method=queryUserInfo
  • 12jjse83jd93hf20sjfos93bk29(密钥)

1.1.4完整的http请求

假定签名后得到的签名值为5364C12B837RE89D256DB2A301A3E,则完整的http请求url为:

http://ip:port/…?sign=5364C12B837RE89D256DB2A301A3E &timestamp=20150309135203528&v=1.0&sell_id=12345678&method= queryUserInfo&format=json& biz_paras={" phoneNo":"13800001111"}&sign_method= MD5

注意:传递的参数值需要采用utf-8进行编码

1.1.5应答报文

Json格式,最外层节点为result,里面包含三个子节点: code(经转换后硕汉所需的结果码),desc(结果描述,格式为:API提供方内部的具体结果码#具体结果描述)、bizResp(具体的业务结果)

示例如下:

{

    "result": {

        "code": "",//本接口协议定义的错误编码,API提供方需要将内部编码进行

        "desc": "",//格式要求:API提供方内部错误编码#内部错误的详细说明

        "bizResp": {

            "业务结果": "参照具体的api说明"

        }

    },

    "sign": "对result节点的签名"//待签名串的字符串为result={"code": "","desc": "","bizResp": {"业务结果": "参照具体的api说明"}}12jjse83jd93hf20sjfos93bk29(密钥)

}

1.2接口列表

1.2.1余额查询

  • 接口说明

用于查询手机号码的余额、流量、分钟数信息

  • 接口编码

queryBalance

  • 接口提供方
  • 业务输入参数

名称

参数名

类型

是否必须

示例值

默认值

取值说明

手机号码

phoneNo

String

业务编码

busiCode

String

10000表示查余额

11000

表示查余额和流量剩余总量,以此类推

6位标志位串码:第一位标识查余额,

第二位表示查流量剩余总量,

第三位表示查流量剩余明细,

第四位表示查剩余分钟数,

第5,6位备用

  • 请求报文格式

  • 业务响应参数

名称

参数名

类型

是否必须

取值说明

用户余额

accountBalance

String

以“元”为单位

用户流量剩余总额

flowBalance

String

以“KB”为单位

用户流量明细

flowDetail

Array

详见参数描述“用户流量明细”

用户剩余通话分钟数

minuteBalance

String

以“分钟”为单位

用户流量明细结构描述

名称

参数名

类型

是否必须

取值说明

资源类型

resType

String

5位标志位串码:

第一位表示本地或全国流量(0,1),

第二位表示3G流量或4G流量或通用流量(0,1,2)

第三位表示闲时流量或非闲时流量

第4,5位备用

资源总量

totalFlow

String

以(KB)为单位

资源已使用量

usedFlow

String

以(KB)为单位

资源剩余量

flowBalance

String

以(KB)为单位

  • 响应报文格式

2附录

2.1结果码和结果描述(沿用之前已定义的结果码,新增可补充)

结果码

结果描述

0000

交易成功

0001

幂等结果码

此次请求是上一次的重复请求,且上一次处理结果返回0000,例子:

场景1:

第一次的请求服务方收到,且处理结果为0000,但调用方没有收到,调用方第二次重新发送请求时,服务方返回0001。

场景2:

第一次的请求服务方收到,且处理失败返回错误码1001,但调用方没有收到,调用方第二次重新发送请求时,服务方返回对应的错误编码1001。

0002

系统其他未知异常

0003

业务处理结果未明确,需重试

1001

订单不存在

1002

订单状态非法

1003

订单交易推进失败

1004

-交易已关闭,用户已退款

2001

宽带账号不存在

2002

当前宽带账号欠费

2003

。。。。。。(待补充)

2.2接口枚举编码及含义

所有的编码统一采用的标准定义编码

2.2.1待补充

这篇文章是:  
前一个   下一个
API商户协议-多业务接口     外围对接模块开放协议