接入之前请在向商务同学获取接入需要的 appId 及 secret
REQUESTID 调用方的请求编号, 长度32位, 唯一代表此次请求
TIMESTAMP 请求的当前unix时间戳精确到毫秒,与当前时间差异不超过五分钟
AUTHID C端客户授权标识: 1-已授权,0-未授权
ISCPT 终端产品是否合规: 1-合规,0-不合规
TMCNAME 终端商户名,必须与备案的终端商户名一致
SIGNATURE 本请求的签名,生成方式后面会提到
所有请求均通过POST, Content-Type: application/json 发送
SIGNATURE 生成方式
REQUESTID、TIMESTAMP、AUTHID、ISCPT、TMCNAME、secret、请求体文本 使用","有序拼接组成字符串
按UTF8编码 取 MD5Hex 转大写
所有请求的响应均参照以下结构
{
"reqId": "XXXXXXXX-XXXXX-XXXXX-XXXXXXXXX",
"trxId": "XXXXXXXX-XXXXX-XXXXX-XXXXXXXXX",
"code": 0,
"feeFlag": 1,
"msg": "SUCCESS",
"detail": "",
"data": {}
}
reqId 请求时的REQUESTID 一致
trxId 代表此次请求的受理id
code 响应码, 0为正常, 非0为异常
msg 响应的描述, "SUCCESS" 为成功, "FAIL" 为失败
detail 对异常返回的具体描述, code 不为0时返回
feeFlag 判断此次请求的计费状态, 1为计费, 0为不计费
data 为此次请求的业务数据,当且仅当code为0时返回
code | detail |
---|---|
1000001 | SIGNATURE(签名)不能为空 |
1000011 | REQUESTID(请求编号)不能为空 |
1000021 | TIMESTAMP(时间戳)不能为空 |
1000031 | AUTHID(C端客户授权标识)不能为空 |
1000041 | ISCPT(终端产品合规标识)不能为空 |
1000051 | TMCNAME(终端商户名)不能为空 |
1000003 | SIGNATURE(签名)验证失败 |
1000013 | REQUESTID(请求编号)长度非法 |
1000023 | TIMESTAMP(时间戳)非法 |
1000033 | AUTHID(C端客户授权标识)不合法 |
1000043 | ISCPT(终端产品合规标识)不合法 |
1000063 | 接口地址非法 |
1001001 | 产品为空 |
1001011 | 产品配置为空 |
1001002 | 产品已停用 |
1002001 | 应用为空 |
1002002 | 应用已停用 |
1003002 | 客户已停用 |
1003004 | 客户余额不足 |
1004004 | 数据处理失败 |
1005003 | 参数不合法 |
1005013 | 手机号不合法 |
1005023 | 身份证号不合法 |
接口:
/api/v1/3rd_check/{appId} POST
请求体(选一种入参即可):
明文入参:
{
name String 姓名
idNo String 身份证号
phone String 手机号
}
例: {"phone": "15038214902", "idNo":"43038119990707556X", "name":"张三"}
MD5入参:
{
nameMd5 String 姓名MD5(按UTF8编码,取MD5Hex)
idNoMd5 String 身份证号MD5(按UTF8编码,取MD5Hex,含有X的身份证号X为大写)
phoneMd5 String 手机号MD5(按UTF8编码,取MD5Hex)
}
例: {"idNoMd5": "c1654d2e5f0497b122c34edf5f84ca4d","phoneMd5":"c0bc9fc3d60b85ab7c4384ee4a64e39b","nameMd5":"ab2a0d28de6b77ffdd6c72afead099ab"}
响应:
{
"reqId": "XXXXXXXX-XXXXX-XXXXX-XXXXXXXXX",
"trxId": "XXXXXXXX-XXXXX-XXXXX-XXXXXXXXX",
"code": 0,
"feeFlag": 1,
"msg": "SUCCESS",
"data": {
result: "1",
resultMsg: "一致",
province: "北京",
city:"北京",
isp:"联通"
}
}
接口:
/api/v1/online_status/{appId} POST
请求体(选一种入参即可):
明文入参:
{
name String 姓名
idNo String 身份证号
phone String 手机号
}
例: {"phone": "15038214902", "idNo":"43038119990707556X", "name":"张三"}
MD5入参:
{
nameMd5 String 姓名MD5(按UTF8编码,取MD5Hex)
idNoMd5 String 身份证号MD5(按UTF8编码,取MD5Hex,含有X的身份证号X为大写)
phoneMd5 String 手机号MD5(按UTF8编码,取MD5Hex)
}
例: {"idNoMd5": "c1654d2e5f0497b122c34edf5f84ca4d","phoneMd5":"c0bc9fc3d60b85ab7c4384ee4a64e39b","nameMd5":"ab2a0d28de6b77ffdd6c72afead099ab"}
响应:
{
"reqId": "XXXXXXXX-XXXXX-XXXXX-XXXXXXXXX",
"trxId": "XXXXXXXX-XXXXX-XXXXX-XXXXXXXXX",
"code": 0,
"feeFlag": 1,
"msg": "SUCCESS",
"data": {
result: "1",
resultMsg: "在网",
province: "北京",
city:"北京",
isp:"移动"
}
}
接口:
/api/v1/online_duration/{appId} POST
请求体(选一种入参即可):
明文入参:
{
name String 姓名
idNo String 身份证号
phone String 手机号
}
例: {"phone": "15038214902", "idNo":"43038119990707556X", "name":"张三"}
MD5入参:
{
nameMd5 String 姓名MD5(按UTF8编码,取MD5Hex)
idNoMd5 String 身份证号MD5(按UTF8编码,取MD5Hex,含有X的身份证号X为大写)
phoneMd5 String 手机号MD5(按UTF8编码,取MD5Hex)
}
例: {"idNoMd5": "c1654d2e5f0497b122c34edf5f84ca4d","phoneMd5":"c0bc9fc3d60b85ab7c4384ee4a64e39b","nameMd5":"ab2a0d28de6b77ffdd6c72afead099ab"}
响应:
{
"reqId": "XXXXXXXX-XXXXX-XXXXX-XXXXXXXXX",
"trxId": "XXXXXXXX-XXXXX-XXXXX-XXXXXXXXX",
"code": 0,
"feeFlag": 1,
"msg": "SUCCESS",
"data": {
result: "1",
resultMsg: "[0, 3)",
province: "北京",
city:"北京",
isp:"电信"
}
}
参数 | 必选 | 类型 | 描述 | 说明 |
---|---|---|---|---|
result | 是 | String | 响应结果值 | |
resultMsg | 是 | String | 响应结果解释 | |
province | 是 | String | 省 | |
city | 是 | String | 城市 | |
isp | 是 | String | 运营商 |
result | resultMsg | 计费情况 |
---|---|---|
-1 | 不支持该运营商 | 不计费 |
0 | 查无记录 | 不计费 |
1 | 一致 | 计费 |
2 | 不一致 | 计费 |
result | resultMsg | 计费情况 |
---|---|---|
-1 | 不支持该运营商 | 不计费 |
0 | 查无记录 | 不计费 |
1 | 在网 | 计费 |
2 | 不在网 | 计费 |
3 | 停机 | 计费 |
4 | 关机 | 计费 |
5 | 在网但不可用 | 计费 |
result | resultMsg | 计费情况 |
---|---|---|
-1 | 不支持该运营商 | 不计费 |
0 | 查无记录 | 不计费 |
1 | [0, 3) | 计费 |
2 | [3, 6) | 计费 |
3 | [6, 12) | 计费 |
4 | [12, 24) | 计费 |
5 | [24, +) | 计费 |