# SaaS版本API
# 一. RESTful API交付方式
手机号画像数据部署在云端,通过HTTPS的RESTful接口查询使用。每个注册客户会分配一个【snuser】和【snkey】(可在控制台-配置 (opens new window)页面中可以查看),在后续接口调用过程中,作为安全认证。
手机号画像库服务端对查询请求实行IP白名单机制(客户可以在的“控制台-配置 (opens new window)”页面添加自己的IP地址白名单),只有白名单中IP地址才会被允许查询。
(注:需要先申请获取产品使用权限后,才能成功添加IP,IP白名单生效时间为5分钟)
# 二. 接口设计
# 2.1 接口查询说明
请求详情 | 说明 |
---|---|
请求地址 | https://api.yazx.com/phone/check/v3 |
请求方式 | POST |
并发 | 50 |
默认QPS | 1000 |
延时情况 | 华南节点<=100ms;华东/华北节点<=200ms |
# 2.1.1 请求数据说明
请求字 段 | 类型 | 说明 |
---|---|---|
snuser | String | 用户识别id(控制台-配置 (opens new window)页面中可以查看) |
data | List[Dict] | 将本土手机号经过sha1加密得到值组成的json数组再经过AES的CFB加密组成,密钥是snkey(控制台-配置页面中可以查看)。一次性请求手机号最高100个。 |
手机号格式说明
国家地区 | country_code(国家编码) | national_number_sha1(手机号本体) |
---|---|---|
中国大陆手机号 | 86 | sha1(13800000000) 示例 |
非中国大陆手机号 | 例如:1、852等 | sha1(3333333333) 示例 |
- 不传country_code默认为中国手机号
- 国外手机号获取country_code和national_number请参考此处 (opens new window)
[
{"country_code": "86", "national_number_sha1": "13339681b432b5aaaadf91523284c88666e37c29"},
{"country_code": "1", "national_number_sha1": "0a51752a41491c29c1ccc4c4e9f92aa0e2af45b4"}
]
请求示例如下:
{
'snuser': 'test',
'data':'WG6sn7gTU3CsaM/1lD1r29t9DM93YzLZL4HN9N2M8LMISRYBtShjiAfwZAzx2E3QZgLiNcKmUo3G\nDDsAH13V1qs7kr5+2sImeHvAGO12LWiODCQeXy41x+cMAhwfVgV/vgWL5bX/LxqXm03Z'
}
# 2.1.2 返回数据说明
返回参数 | 说明 |
---|---|
status | 状态码 |
data | 由AES的CFB加密的json数组 |
errmsg | 对应状态码返回提示信息 |
响应示例如下:
{
'status': 200,
'data': 'E1zdcnKXjAqaIgYVPFgTAZ1t0ZLJL/NyJVC10tARW4cSSwbAi2cfKKe7JrDIokseXmdAMjeqODz5GwNYMCE7FOqpT+734VeC8dQJ1pdmFlzLONRiBr+H8fP5O3uev6FhBFO+fGVPiX3CWPoxaVzl97z0NAhtkzBFrMvqFSliyiVVSGe0RAqY4zzHxH6Rtzc3O9fGXVBkPnOV1Sp4GyOX1SGclEzbKMRQuSi0UeRqqekc9/4PObOrVnMaI9CxjG4PHif/Q4QbSWW1JyHFYiHulffXIxL+Sxxqp8f6n2dGqm8wjLtP4GlJoG0ssfrmoieObthzRnQGpTtAItLBIDeIItkUhivgh1BHf5DgtxP1JA8ksjOVQIkD9Q92eo64uy0OdkSTnNSG0u0usSf/uUJXMMFMf4TWLbV8hhGIVudlqw==',
'errmsg': 'OK'
}
错误码表
Code | 说明 |
---|---|
200 | OK |
10000 | 服务内部错误,请联系管理员 |
10001 | 请求体解析错误 |
10002 | 请求参数错误 |
10003 | 用户或密钥错误 |
10004 | IP不在白名单,请登录控制台添加IP白名单,5分钟生效,可在配置管理 (opens new window)页面添加白名单) |
10005 | 服务不存在 |
10006 | 账号已过期 |
10007 | 请求次数不足 |
10008 | 请求频率过快 |
data解密后内容示例如下(仅作为示例不代表最终结果):
[{
"country_code": "86",
"national_number_sha1": "13339681b432b5aaaadf91523284c88666e37c29",
"first_catch_time": "2020-05-03 16:27:01",
"last_catch_time": "2022-09-04 20:15:37",
"risk": 9,
"risk_tag": 1,
"location": "山东 青岛 海航通信",
"location_info": {
"country": "中国",
"province": "山东",
"city": "青岛",
"operator": "海航通信"
},
"attribute": 1,
"card_type": 0,
"project_name": "xx网",
"project_price": "0.100"
},
{
"country_code": "1",
"national_number_sha1": "0a51752a41491c29c1ccc4c4e9f92aa0e2af45b4",
"first_catch_time": "2022-01-19 18:03:55",
"last_catch_time": "2022-09-05 15:54:49",
"risk": 2,
"risk_tag": 7,
"location": "美国/加拿大",
"location_info": {
"country": "美国/加拿大",
"province": "",
"city": "",
"operator": ""
},
"attribute": -1,
"card_type": 0,
"project_name": "",
"project_price": "0.000"
}
]
具体参数说明:
参数 | 参数名称 | 参数类型 | 参数说明 |
---|---|---|---|
country_code | 国家编码 | string | 返回参数示例"86" |
national_number_sha1 | 本土sha1手机号 | string | 返回参数示例"13339681b432b5aaaadf91523284c88666e37c29" |
risk | 风险分数 | integer | 基于捕获号码来源渠道、号码状态检测等方式,对手机号的风险程度进行打分,分数范围为【0-9】,分数越大,手机号风险值越高 |
risk_tag | 风险标签 | integer | 0【无风险】未发现风险 1【猫池卡】 从接码平台或发卡平台直接捕获到黑产持有并使用的手机号 2【沉默卡】通过对手机号的属性,行为,活跃度等多个角度进行综合策略评判,符合黑卡不活跃特征号码 3【账号卡】从发卡平台中捕获黑产出售的业务注册账号对应的手机号 4【拦截卡】黑产通过病毒木马劫持手机短信收发权限,从而控制的手机号码,号码主人为正常用户 5【隐私小号】手机号码租赁平台出售的手机号,容易被黑产购买使用 6【历史风险卡】历史从接码平台或发卡平台直接捕获到黑产持有并使用的手机号,但超过90天未再次捕获,且号码状态发现变化,可能流入正常用户手中 7【网络电话】海外使用基于IP完成语音传输的网络电话号码,如Google Voice 8【疑似猫池卡】手机号码特征符合猫池卡特征的手机号码 9【疑似新号】 疑似新入网的手机号 10【疑似真人作弊】 手机号关联的设备上安装了多款真人众包软件,疑似真人众包兼职群体使用的手机号 |
location | 归属地 | string | 大陆精确到市国外卡只展示归属国家 示例 “江苏 南京 联通,美国” |
location_info.country | 归属地国家或地区 | string | 中国,美国,英国... |
location_info.province | 归属地省份 | string | 北京,广东... |
location_info.city | 归属地城市 | string | 北京,深圳... |
location_info.operator | 归属地运营商 | string | 移动,联通,电信... |
attribute | 卡属性 | integer | 0 基础运营商(移动、联通和电信) 1 虚拟运营商 -1 海外以及港澳台号码 |
card_type | 卡类型 | integer | 0 普通卡 4 物联网卡 |
project_name | 最近黑卡项目名称 | string | 该黑卡被捕获用于注册的平台 |
project_price | 最近黑卡项目价格 | string | 该黑卡被捕获用于注册平台的价格为xxx元/个 |
last_catch_time | 最近活跃时间 | datetime | 该黑卡最近被监控活跃时间 示例“2018-07-10 08:23:14” |
first_catch_time | 首次发现时间 | datetime | 该黑卡首次被发现的时间 |
注: risk与risk_tag后期会有新增,使用上请做好冗余。
risk与risk_tag对应说明
risk | 对应的risk_tag |
---|---|
risk9 | risk_tag=1(猫池卡)、 risk_tag=8(疑似猫池卡) |
risk8 | |
risk7 | risk_tag=4(拦截卡) |
risk6 | risk_tag=2(沉默卡) |
risk5 | risk_tag=6(历史风险卡) |
risk4 | risk_tag=10(疑似真人作弊) |
risk3 | risk_tag=9(疑似新号) |
risk2 | risk_tag=3(账号卡)、 risk_tag=5(隐私小号)、 risk_tag=7(网络电话) |
risk1 | |
risk0 | risk_tag=0(无风险) |
# 三. DEMO示例
← 产品说明书 SaaS版本回调API →