公开文档适合网站维护者Next.js 网站

SEO 内容托管文档

这份文档教你把 RankOps AI 生成并审核后的 SEO 文章,发布到你自己的网站。目标网站只需要提供一个会校验共享密钥的安全 POST 接口,并返回发布后的公开链接。

一、先理解完整流程

1. RankOps AI 生成文章

先找关键词,再生成大纲和文章草稿。

2. 你审核文章

确认标题、正文、SEO 描述和发布状态。

3. 目标站接收文章

RankOps AI 调用你的 POST 接口,把内容发过去。

4. 返回发布结果

目标站返回文章 ID、公开链接和最终状态。

二、目标网站需要提供的接口

在目标网站新增接口: POST /api/seo-content/publish

Authorization: Bearer SEO_CONTENT_PUBLISH_TOKEN
sourceArticleIdRankOps AI 里的文章 ID,用来排查重复发布。
title文章标题,目标网站直接保存为 post title。
slugURL slug。建议目标站发现重复时返回 409。
descriptionSEO meta description,可以为空。
content文章正文,通常是 HTML。必须保存完整。
language文章语言,例如 en 或 zh。
authorName / authorImage作者信息,可以为空。
statusdraft 或 published;公开发布必须返回 published。
dryRun可选。为 true 时只做连接测试,并返回验证结果。

请求体示例

{
  "sourceArticleId": "rankops-article-id",
  "title": "Article title",
  "slug": "article-url-slug",
  "description": "Meta description",
  "content": "<p>HTML article body</p>",
  "language": "en",
  "authorName": "RankOps AI",
  "authorImage": "https://example.com/avatar.png",
  "status": "published"
}

成功返回示例

{
  "targetPostId": "post-id-from-your-site",
  "publishedUrl": "https://your-site.com/blog/article-url-slug",
  "status": "published",
  "slug": "article-url-slug"
}

测试连接请求

RankOps AI 的“测试连接”会发送 dryRun 请求。目标网站收到后验证密钥和接口,并返回连接验证结果。

{
  "dryRun": true,
  "source": "rankops",
  "purpose": "connection_test"
}

测试连接成功返回

{
  "ok": true,
  "dryRun": true
}

三、RankOps AI 里怎么配置

在 RankOps AI 控制台选择当前站点,然后填写接收接口 URL、共享密钥和默认发布状态。

接收接口 URL: https://your-site.com/api/seo-content/publish
共享密钥: 和目标网站接口校验用的同一个密钥
默认发布状态: published 或 draft

POST /api/seo-content/publish 是示例路径,可以替换。目标网站自己决定文章怎么入库、怎么生成公开 URL,也可以决定文章放在 /blog 还是其他目录。

四、上线前按这个顺序测试

  • 目标网站先能本地启动,并且接口地址能被浏览器或 curl 访问。
  • 目标网站和 RankOps AI 使用同一个共享密钥,但不要把密钥发给别人。
  • RankOps AI 控制台的站点配置里填写接收接口 URL、共享密钥和默认发布状态。
  • 先点击“测试连接”。如果目标网站已支持 dryRun,成功后会显示“连接已验证”。
  • 先用 1 篇已审核文章测试,不要一开始批量发布。
  • 返回 publishedUrl 后,打开这个链接确认文章真的能看到。

五、常见问题怎么排查

401

密钥不一致。检查 Bearer 后面的值是否和目标站保存的共享密钥完全相同。

400

缺字段或字段格式不对。重点看 title、slug、content、language、status。

409

目标站已有同 slug 文章。换 slug,或让目标站明确更新已有文章。

测试连接失败

目标网站可能还没有支持 dryRun。先按本文档增加 dryRun 分支。

发布后 404

目标站返回了链接,但文章仍是草稿、路由没刷新,或状态没设为 published。

RankOps 还未请求目标站

先确认文章已经生成、审核通过,并进入发布或托管步骤。

六、直接提交给 AI 编程工具

如果你不懂代码,可以把下面这段完整复制给 Cursor、Claude Code、Codex 或其他 AI 编程工具,让它在你的目标网站项目里实现接口。

请在我的 Next.js 项目里新增一个 SEO 内容托管接口。

目标:接收 RankOps AI 发来的已审核文章,并在我自己的网站创建文章。

接口要求:
1. 新增 POST /api/seo-content/publish。这个路径只是示例,可以替换成 /api/rankops/publish 或你项目里的其他路径。
2. 从请求头读取 Authorization: Bearer <SEO_CONTENT_PUBLISH_TOKEN>。
3. 如果密钥不一致,在写入文章前返回 401。
4. 如果请求体是 { dryRun: true, source: "rankops", purpose: "connection_test" },只验证密钥和接口是否可用,并返回 { ok: true, dryRun: true } 作为连接验证结果。
5. 普通发布请求读取 JSON 字段:sourceArticleId、title、slug、description、content、language、authorName、authorImage、status。
6. title、slug、content、language 必填;status 只允许 draft 或 published。
7. 如果 slug 已存在,返回 409,并说明 slug 已存在。
8. 目标网站自己决定文章怎么入库、怎么生成公开 URL;创建文章后返回 targetPostId、publishedUrl、status、slug。
9. publishedUrl 必须是公开可访问的 http/https 地址。
10. 密钥只保留在服务端,不写死到前端代码里,并返回真实的成功或错误状态。
11. 请补测试:dryRun、401、400、409、成功发布各一条。