API 接口参考(v1)
ABcloakPro API 采用 RESTful 设计,可将路由管理与 IP 质量检测集成到您自己的投放系统中。本文档对应 v1 版本,与 API 交互演示页配套使用。
基础信息
| 项目 | 值 |
|---|---|
| Base URL | https://api.abcloakpro.com/v1 |
| 协议 | HTTPS(强制 TLS) |
| 数据格式 | JSON(请求与响应均为 application/json) |
| 套餐要求 | 专业版及以上,订阅须在有效期内 |
| 调用限制 | 批量检测单次最多 50 个 IP;触发IP库更新每小时限 1 次(每日 04:37 自动更新);暂无硬性频率限制,恶意滥用将被限制 |
认证方式
所有请求通过 API 密钥认证,密钥在控制台「API管理」页面获取,以 Bearer 方式置于请求头:
Authorization: Bearer {YOUR_API_KEY}
密钥安全API 密钥等同于账户管理权限,请勿写入前端代码或公开仓库。泄露后可在控制台立即重置。
路由管理 API
路由的完整增删改查(端点均为真实字段)。
创建路由
POST /v1/routes
{
"route_name": "春季投放-渠道A",
"route_type": "TikTok",
"original_page": "https://example.com/page-a",
"landing_page": "https://example.com/page-b"
}
route_type 须为系统路由类型:百度搜索 / UC神马 / 360搜索 / 搜狗推广 / 小红书 / 抖音 / 视频号 / Google / TikTok / Facebook。
响应(201 Created):
{
"code": 201,
"message": "路由创建成功",
"data": {
"id": 1024,
"route_name": "春季投放-渠道A",
"route_type": "TikTok",
"original_page": "https://example.com/page-a",
"landing_page": "https://example.com/page-b",
"status": "active"
}
}
说明通过 API 创建的路由不绑定域名,域名绑定请在控制台「路由管理」中完成。
查询路由
GET /v1/routes # 列表(返回本人全部路由)
GET /v1/routes/{id} # 单条详情(仅本人路由可见)
响应(200):
{"code": 200, "message": "获取路由列表成功", "data": [{ "id": 1024, "route_name": "春季投放-渠道A", "route_type": "TikTok", "status": "active" }]}
更新路由
PUT /v1/routes/1024
{ "landing_page": "https://example.com/page-b-v2" }
支持部分更新(route_name / route_type / original_page / landing_page / status),仅提交需要变更的字段即可。响应返回更新后的完整对象。
删除路由
DELETE /v1/routes/1024 # 成功返回 200 与 JSON
说明删除路由后其跳转链接立即失效。链接创建额度为终身累计,删除不返还额度(详见《套餐与计费》)。
IP库检测 API
识别访客 IP 是否为机房/数据中心(权威 ASN 数据源本地化落地,本地毫秒级返回)。需专业版及以上套餐。
单个检测
GET /v1/ip/check?ip=8.8.8.8
批量检测
POST /v1/ip/check
{ "ips": ["8.8.8.8", "1.1.1.1"] } # 单次最多 50 个
响应(200,批量检测 data 为数组):
{
"code": 200,
"message": "检测成功",
"data": {
"ip": "8.8.8.8",
"asn": "AS15169",
"org": "Google LLC",
"is_datacenter": true,
"hit_type": "blacklist",
"risk": "high"
}
}
字段说明:is_datacenter — true=机房IP / false=正常IP / null=库中未知;risk — high(机房) / low(正常) / unknown(未知);hit_type — 命中方式(blacklist / keyword / whitelist / clean / unknown)。
触发IP库更新
POST /v1/ip/update
IP 库每日 04:37 自动更新;也可通过该接口随时触发(每小时限 1 次,一小时内重复触发返回 status=skipped)。更新失败时旧库继续服务,不影响调用。
精准黑名单 API
查询当前生效中的 ASN 黑名单(全局数据,仅可查询)。
GET /v1/ip/blacklist
响应(200):
{
"code": 200,
"message": "获取成功",
"data": { "count": 62, "list": ["AS16509", "AS14618", "..."] }
}
说明黑名单为全局数据,仅可查询;如需调整黑名单请联系管理员。
错误码
| HTTP 状态码 | 含义 | 处理建议 |
|---|---|---|
| 400 | 参数错误(message 含具体说明) | 按 message 修正请求参数 |
| 401 | 密钥缺失或无效 | 检查 Authorization 头 |
| 403 | 套餐不足或权限不足 | 升级到专业版及以上 |
| 404 | 路由不存在 / API端点不存在 | 确认路由 id 与端点路径 |
| 405 | 请求方法不允许 | 按文档使用正确方法 |
| 413 | 批量检测超过 50 个 IP | 拆分批次提交 |
| 502 | IP库更新失败 | 旧库继续服务,稍后重试 |
| 500 | 服务端异常 | 稍后重试,持续出现请联系支持 |