开发者文档

把内容推送到平台,拿到 30 条规则的检测结果,修复后重新提交并发布。

Python SDK(推荐)

零依赖,只用标准库。把「发布被拦截」做成可直接读取的异常, 不必自己解析 422 的 JSON。

安装并接入

需要管理员签发的 API Key(rkl_live_ 开头)。 客户无需登录控制台,拿到密钥即可调用。

pip install "git+https://github.com/LordFoxFairy/RankLoop.git#subdirectory=sdk/python"
from rankloop import Client, PublishBlockedError

client = Client(api_key="rkl_live_xxx")
content = client.submit(site_id, path="/posts/hello", body=html)

try:
    client.publish(content.id)
except PublishBlockedError as e:
    print(f"当前 {e.score} 分,必须先修:{e.blocking}")

批量场景

不想为每条内容写 try/except 时,用 publish_when_ready 取回待修复项,每项都带修复建议与预估耗时。

ok, todo = client.publish_when_ready(content.id)
for r in todo:
    print(r.message, r.recommendation, f"约 {r.minutes} 分钟")

三步接入(直接调用 HTTP)

1 · 获取 API Key

在控制台创建。明文只显示一次,请立即保存。

Authorization: Bearer rkl_live_xxxxxxxxxxxx

2 · 提交内容

支持 HTML 与 Markdown。Markdown 的元数据通过 frontmatter 提供。

curl -X POST "https://你的域名/api/v1/sites/{siteId}/contents" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"path":"/article","format":"markdown","body":"---\ntitle: 标题\n---\n\n# 正文"}'

3 · 按返回结果修复并发布

检测不通过时返回规则编码、触发证据与修复建议,据此修改后重新提交。

{ "score": 0, "publishable": false,
  "issues": [{ "code": "MISSING_TITLE",
               "evidence": "title 为空或未提供",
               "recommendation": "添加 10-60 字符的标题,包含核心关键词。" }] }
存在 critical 级别问题时,发布接口返回 422 SEO_GATE_FAILED, 并在 details.blocking 中列出阻塞规则。修复后重新提交即可发布。

内容

提交、更新、发布内容。每次提交都会返回检测结果。

接口说明权限
POST /sites/{siteId}/contents 提交新内容并立即检测 contents:write
PUT /contents/{contentId} 更新内容,产生新版本并重新检测 contents:write
POST /contents/{contentId}/publish 发布;存在 critical 问题时返回 422 contents:publish
GET /contents/{contentId} 查看内容与最新检测结果 contents:read
GET /contents/{contentId}/versions 版本历史与分数变化 contents:read
POST /contents/check 无状态预检,不落库 contents:write

站点与域名

管理站点、绑定自有域名。绑定后内容以该域名对外渲染。

接口说明权限
GET /sites 列出站点 sites:read
POST /sites 创建站点 sites:write
GET /sites/{siteId} 站点详情与访问地址 sites:read
PATCH /sites/{siteId} 更新站点名、slug 与展示配置 sites:write
POST /sites/{siteId}/domain 绑定自有域名,返回 DNS 配置指引 sites:write
POST /sites/{siteId}/domain/verify 验证域名归属 sites:write

收录与统计

sitemap、搜索引擎提交与健康分统计。

接口说明权限
GET /sites/{siteId}/sitemap.xml 站点 sitemap indexing:read
POST /sites/{siteId}/indexnow/submit 提交 URL 到 IndexNow indexing:write
GET /sites/{siteId}/indexing-status 每条内容的收录提交状态 indexing:read
GET /stats/overview 健康分与问题分布 contents:read
GET /stats/trend 30 天分数趋势 contents:read

响应格式

成功与错误使用统一结构,便于自动化处理。

// 成功
{ "data": { ... }, "meta": { "request_id": "req_..." } }

// 错误
{ "error": { "code": "SEO_GATE_FAILED",
             "message": "内容存在严重 SEO 问题,无法发布",
             "details": { "blocking": ["MISSING_TITLE"], "score": 13 } },
  "meta": { "request_id": "req_..." } }
完整机器可读 schema:OpenAPI 3.1, 可直接导入 Postman 或用于生成客户端。
检测规则依据 Google 搜索基础规范 与 schema.org 结构化数据标准制定。收录与排名由 Google 决定,本平台只保证技术层面不拖后腿。