TM号码标记查询-v3
传入手机号,聚合查询腾讯手机管家、360手机卫士、百度、小米、电话邦等主流平台的号码标记与认证信息。返回号码是否被标记、各平台具体状态(认证/被标记/未标记)及详细的标记标签(如骚扰电话、广告推销)和对应标记量,同时展示企业官方认证名称,适用于风控反欺诈、客服来电识别与电销号码过滤。
接口信息
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|---|---|---|---|---|
| key | string | 是 | 接口调用密钥 | 后台KEY |
| phone | string | 是 | 手机号 | 17264353835 |
[
{
"name": "key",
"type": "string",
"required": true,
"description": "接口调用密钥",
"example": "后台KEY"
},
{
"name": "phone",
"type": "string",
"required": true,
"description": "手机号",
"example": "17264353835"
}
]
{"openapi":"3.1.1","info":{"title":"TM号码标记查询-v3","description":"传入手机号,聚合查询腾讯手机管家、360手机卫士、百度、小米、电话邦等主流平台的号码标记与认证信息。返回号码是否被标记、各平台具体状态(认证/被标记/未标记)及详细的标记标签(如骚扰电话、广告推销)和对应标记量,同时展示企业官方认证名称,适用于风控反欺诈、客服来电识别与电销号码过滤。","version":"1.0.0"},"paths":{"/apis/tmcheckmark":{"get":{"summary":"TM号码标记查询-v3","description":"传入手机号,聚合查询腾讯手机管家、360手机卫士、百度、小米、电话邦等主流平台的号码标记与认证信息。返回号码是否被标记、各平台具体状态(认证/被标记/未标记)及详细的标记标签(如骚扰电话、广告推销)和对应标记量,同时展示企业官方认证名称,适用于风控反欺诈、客服来电识别与电销号码过滤。","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string","example":"后台KEY"},"description":"接口调用密钥"},{"name":"phone","in":"query","required":true,"schema":{"type":"string","example":"17264353835"},"description":"手机号"}],"responses":{"200":{"description":"成功","content":{"application/json":{"schema":{"type":"object"}}}}}}}},"servers":[{"url":"https://api.xunjinlu.fun","description":"当前访问入口(https)"}]}
{
"code": 200,
"phone": "17264353835",
"isMarked": true,
"region": "重庆 移动",
"results": [
{
"platform": "腾讯手机管家",
"status": "被标记",
"tags": [
{
"name": "快递送餐",
"count": 6
}
]
},
{
"platform": "360手机卫士",
"status": "被标记",
"tags": [
{
"name": "快递送餐",
"count": 13
}
]
},
{
"platform": "泰迪熊",
"status": "被标记",
"tags": [
{
"name": "快递外卖",
"count": 20
}
]
},
{
"platform": "百事通",
"status": "未标记"
},
{
"platform": "移动",
"status": "未标记"
},
{
"platform": "电话邦",
"status": "未标记"
},
{
"platform": "小米",
"status": "认证",
"name": "京东快递"
},
{
"platform": "搜狗",
"status": "未标记"
},
{
"platform": "联通",
"status": "被标记",
"tags": [
{
"name": "快递送餐",
"count": 6
}
]
},
{
"platform": "百度",
"status": "被标记",
"tags": [
{
"name": "商业营销"
}
]
}
]
}
接口反馈
号码标记查询
接口说明
号码标记查询用于聚合查询指定手机号在多家主流平台上的标记与认证情况,返回是否被标记、各平台状态及具体标记标签与标记量。
适合风控反欺诈、客服来电识别、电销号码过滤等场景使用。调用时需在 Query 中传入密钥。
调用地址
/apis/tmcheckmark
请求方式
GET
鉴权说明
调用本接口必须携带密钥,密钥通过 Query 参数传递,参数名为 key。
示例形式:/apis/tmcheckmark?key=后台KEY&phone=17264353835
密钥为接口调用凭证,请勿泄露给无关人员。密钥缺失或无效时,请求将被拒绝。
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| key | string | 是 | 接口调用密钥,在请求地址中以 Query 参数形式传递,即 key=后台KEY |
| phone | string | 是 | 待查询的手机号,需填写完整号码,例如 17264353835 |
参数取值说明
key:使用本站签发的调用密钥,直接作为请求地址的查询参数附加。密钥缺失或无效时该请求无法受理。phone:仅支持中国大陆手机号,填写 11 位数字号码,无需添加国家码、区号或+、空格、短横线等分隔符。
请求频率上限约为每分钟 60 次,超出后请求将被限流,请合理安排查询节奏。
成功响应示例
调用成功后,服务以 JSON 形式返回聚合查询结果,code 为 200,phone 为被查询号码,isMarked 表示是否命中任一平台的标记或认证,region 为号码归属地,results 为各平台的明细数组。
{
"code": 200,
"phone": "17264353835",
"isMarked": true,
"region": "重庆 移动",
"results": [
{
"platform": "腾讯手机管家",
"status": "被标记",
"tags": [
{
"name": "快递送餐",
"count": 6
}
]
},
{
"platform": "360手机卫士",
"status": "被标记",
"tags": [
{
"name": "快递送餐",
"count": 13
}
]
},
{
"platform": "泰迪熊",
"status": "被标记",
"tags": [
{
"name": "快递外卖",
"count": 20
}
]
},
{
"platform": "百事通",
"status": "未标记"
},
{
"platform": "移动",
"status": "未标记"
},
{
"platform": "电话邦",
"status": "未标记"
},
{
"platform": "小米",
"status": "认证",
"name": "京东快递"
},
{
"platform": "搜狗",
"status": "未标记"
},
{
"platform": "联通",
"status": "被标记",
"tags": [
{
"name": "快递送餐",
"count": 6
}
]
},
{
"platform": "百度",
"status": "被标记",
"tags": [
{
"name": "商业营销"
}
]
}
]
}
响应字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| code | integer | 响应状态码,200 表示查询成功 |
| phone | string | 本次查询的手机号,与请求参数一致 |
| isMarked | boolean | 该号码是否命中标记或认证,任意平台处于「被标记」或「认证」状态时为 true,全部平台均未标记时为 false |
| region | string | 号码归属地,格式为「省份 运营商」 |
| results | array | 各平台查询结果列表,每个元素对应一个平台 |
| results[].platform | string | 平台名称,如腾讯手机管家、360 手机卫士、百度、小米、电话邦等 |
| results[].status | string | 该平台对号码的状态,取值可能为「认证」「被标记」「未标记」 |
| results[].name | string | 平台认证的企业或机构官方名称,仅在 status 为「认证」时返回,其他状态不返回该字段 |
| results[].tags | array | 该平台的标记标签列表,仅在 status 为「被标记」时返回,其他状态不返回该字段 |
| results[].tags[].name | string | 标记标签名称,如骚扰电话、广告推销、快递送餐等 |
| results[].tags[].count | integer | 该标记标签对应的标记量;部分平台不提供标记量,此时不返回该字段 |
说明:results 中各平台返回的字段并不完全一致,未标记的平台仅返回 platform 与 status;请以字段是否存在为准进行解析,不要假定每个平台都带有 tags 或 name。
错误响应示例
当请求未通过校验、密钥无效、积分不足或接口不可用时,统一以 JSON 形式返回错误信息,HTTP 状态码可能为 200,业务结果需以响应体中的 errcode 字段为准。
未提供调用密钥:
{
"code": 0,
"msg": "未提供调用密钥",
"errcode": 11001
}
密钥错误:
{
"code": 0,
"msg": "密钥错误",
"errcode": 11002
}
积分余额不足:
{
"code": 0,
"msg": "积分余额不足",
"errcode": 11004
}
请求过于频繁(超过每分钟约 60 次的 QPM 限制):
{
"code": 0,
"msg": "请求过于频繁",
"errcode": 11005
}
接口维护中:
{
"code": 0,
"msg": "接口维护中",
"errcode": 11006
}
请求方式不允许(该接口仅支持 GET):
{
"code": 0,
"msg": "请求方式不允许",
"errcode": 11018
}
当前 IP 不在白名单内:
{
"code": 0,
"msg": "当前IP不在白名单内",
"errcode": 11019
}
密钥已过期:
{
"code": 0,
"msg": "密钥已过期",
"errcode": 11023
}
接口不存在:
{
"code": 0,
"msg": "接口不存在",
"errcode": 11013
}
服务暂不可用:
{
"code": 0,
"msg": "服务暂不可用",
"errcode": 11017
}
以上示例仅展示响应结构,实际返回的 msg 文案可能随场景略有差异,请始终以 errcode 作为判断依据。
业务错误码说明
下表列出本站全部业务错误码及其含义,调用方应针对不同错误码做差异化处理,例如:11005 建议退避重试,11004 需充值后重试,11006、11009、11010、11017 属于临时性不可用,可稍后重试,其余多为请求侧问题,需修正参数或配置后再调用。
| errcode | 含义 | 说明 |
|---|---|---|
| 11001 | 未提供调用密钥 | 请求未携带密钥参数,请按首选鉴权方式在 Query 中传入 key |
| 11002 | 密钥错误 | 密钥值不正确,请核对后台分配的调用密钥 |
| 11003 | 密钥已禁用 | 该密钥已被停用,请联系管理员确认状态 |
| 11004 | 积分余额不足 | 当前账户积分不足以支付本次调用,请先充值 |
| 11005 | 请求过于频繁(QPM 限制) | 超过每分钟约 60 次的频率上限,请降低并发或稍后重试 |
| 11006 | 接口维护中 | 接口处于计划维护状态,请稍后重试 |
| 11007 | 接口已禁用 | 该接口已被关闭,当前不可调用 |
| 11008 | 接口不可用 | 接口暂时无法提供正常服务,请稍后重试 |
| 11009 | 密钥校验暂不可用 | 鉴权环节临时异常,请稍后重试 |
| 11010 | 积分系统暂不可用 | 计费与积分查询环节临时异常,请稍后重试 |
| 11011 | 收费接口须提供有效密钥 | 本接口为收费接口,必须携带有效密钥才能调用 |
| 11012 | 鉴权方式错误 | 密钥传递方式不符合要求,请按要求在 Query 中传入 key |
| 11013 | 接口不存在 | 请求的接口路径有误,请核对调用地址 /apis/tmcheckmark |
| 11014 | ***地址无效 | 接口内部配置的目标地址无效,请稍后重试或反馈 |
| 11015 | ***地址不允许 | 接口内部配置的目标地址不被允许,请稍后重试或反馈 |
| 11016 | ***请求失败 | 数据来源请求失败,请稍后重试 |
| 11017 | 服务暂不可用 | 服务整体临时不可用,请稍后重试 |
| 11018 | 请求方式不允许 | 请求方法不匹配,本接口须使用 GET |
| 11019 | 当前IP不在白名单内 | 调用来源 IP 未加入白名单,请先配置后再调用 |
| 11020 | 启用出口代理须提供有效密钥 | 启用出口代理时未携带有效密钥,请补充后重试 |
| 11021 | 未配置可用出口代理 | 当前无可用出口代理配置,请检查配置 |
| 11022 | 出口代理不可用 | 出口代理临时不可用,请稍后重试 |
| 11023 | 密钥已过期 | 密钥超出有效期,请更换或续期后使用 |
| 11024 | 令牌分配积分不足 | 分配用于本次调用的令牌积分不足,请补充额度后重试 |
调用示例
终端 curl(bash)
curl "https://你的接口域名/apis/tmcheckmark?key=YOUR_KEY&phone=17264353835"
PHP
// PHP 示例:以 GET 方式请求,密钥通过 Query 参数 key 传递
$key = 'YOUR_KEY';
$phone = '17264353835';
$url = 'https://你的接口域名/apis/tmcheckmark?' . http_build_query([
'key' => $key,
'phone' => $phone,
]);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
print_r($data);
注意事项
- 密钥通过 Query 参数
key传递,属于首选且唯一的鉴权方式;请勿将密钥拼接到前端页面、公开仓库或客户端代码中,避免被他人抓取后消耗你的调用额度。 - 建议在服务端调用本接口,并对密钥做定期轮换;若怀疑泄露,请立即重置。
- 调用地址为
/apis/tmcheckmark,请求方式为 GET,请使用 HTTPS 访问,避免密钥与手机号在明文链路上被截获。 phone必须为有效手机号,请勿传入带空格、连字符或国际区号的格式,否则可能返回参数错误或空结果。- 频率限制约为每分钟 60 次,超限会被拒绝;批量查询时请自行控制并发并在失败后做退避重试。
- 本接口按次计费,重复查询同一号码同样计费,建议对结果做本地缓存(号码标记短期内变化不大)。
- 返回的
status有「认证」「被标记」「未标记」等取值,tags仅在被标记时出现,且部分标签可能不含count字段,解析时请做兼容判断。 - 同一号码在不同平台上的结论可能不一致,请以
isMarked作为整体判断依据,并结合具体平台标签做业务决策。 - 号码标记数据来自第三方平台,存在更新延迟,仅供风控参考,不建议作为唯一判断依据。
快速上手
curl -G 'https://api.example.com/apis/tmcheckmark' \
--data-urlencode 'key=YOUR_API_KEY' \
--data-urlencode 'phone=17264353835'
免责声明
使用本平台接口即表示同意本声明。
- 数据来源:接口数据来自第三方公开网络或用户上传,本平台不保证准确性、完整性、实时性,请以官方信息为准。
- 合法性与安全性:本平台无法核实每个接口的安全性、合法性,使用者自行承担相关风险。
- 用途限制:所有的接口禁止商用;严禁用于违法违规行为(如诈骗、赌博、侵权等)。违规后果由使用者自行承担。
- 损害免责:使用本接口产生的任何直接或间接损失,本平台不承担责任。
- 第三方上传:用户/商户上传的接口若侵权或违法,由上传者承担全部责任。
- 监督配合:本平台依法记录访问日志,如发现违法活动将配合执法部门处理,并有权随时限制或封禁服务。
注:本平台保留最终解释权,并可能随时更新本声明。
在线测试
// 结果将在此处显示