SuperAPI AI 工具集

gql-api

写作与研究

查看项目

更新于 10-16 05:50

技能介绍

用途:通过 Hashnode GraphQL API(Apollo Server)读写 Hashnode 上的内容,包括文章、草稿、出版物、用户、标签、系列与评论。适合智能体代表用户查询或发布内容时按规范调用。

端点:生产环境为 https://gql-beta.hashnode.com(POST GraphQL);本地开发为 http://localhost:8080/graphql。使用标准 HTTP POST,JSON 体形如 { "query": "...", "variables": {...} },已启用 introspection。

认证:使用个人访问令牌(PAT),通过环境变量 HASHNODE_PAT 以引用方式传入,不要内联字面量,例如:curl -H "Authorization: Bearer $HASHNODE_PAT" -H "x-hashnode-client: gql-skill" ...。PAT 需在 Hashnode 控制台的 Account Settings → Developer / API tokens 获取,并在 shell 中 export HASHNODE_PAT=...。每个请求还要带上 x-hashnode-client: gql-skill。令牌等同密码,拥有对用户出版物的完整写入权限:不要要求用户粘贴令牌、不要打印或记录、不要写入文件或提交、始终让 shell 插值 $HASHNODE_PAT。公开读取无需令牌:post、feed、user、tag、publication、documentationProject、checkCustomDomainAvailability、checkSubdomainAvailability。需要认证:me、draft、scheduledPost 以及所有 mutation;缺失或无效令牌返回 UNAUTHENTICATED。

Pro 计划限制:部分操作要求目标出版物处于有效 Pro 计划,否则返回 FORBIDDEN 及提示升级的信息。此时应告知用户去控制台升级,不要重试。受 Pro 限制的包括所有写 mutation(publishPost、updatePost、createDraft、updateDraft、publishDraft、submitDraftForReview、rejectDraftSubmission、deleteDraft)、出版物范围读取(publication、draft、scheduledPost、searchPostsOfPublication、topCommenters)以及单篇文章读取 post(id: ...);feed、user、tag 不受限制。Growth Plan 不新增限制。

链接规则:不要猜测或浏览 URL。文章讨论页为 https://hashnode.com/posts/<slug>/<postId>,评论为 https://hashnode.com/posts/<slug>/<postId>/comment/<commentId>,用户主页为 https://hashnode.com/@<username>;作者自有博客使用 API 返回的 url 字段。旧路径如 /discussions/post/<id> 会 404,不要使用。

限制与规则:大多数连接 first 上限 100,草稿上限 50,超出会被静默截断;查询深度不超过 10,否则被拒;标签输入用 slug(如 javascript),每篇最多 15 个;分页基于游标,读取 pageInfo.endCursor / hasNextPage,将 endCursor 作为下一次的 after;mutation 不缓存,查询最多缓存约 25 秒。

参考资料:references/schema.graphql 为完整 SDL;references/queries.md 含 13 个查询;references/mutations.md 含 10 个 mutation;references/auth-and-roles.md 含认证与角色(OWNER/EDITOR/CONTRIBUTOR)及贡献者审核流程;references/errors-and-limits.md 含错误码与限制;references/recipes.md 含发布、分页、上传图片等端到端示例。