Octop 自托管 AI 助手 API 文档实战指南:5 步从开启 /api/docs 到调通第一个接口

发布时间:2026/10/21 1:25:51

Octop 自托管 AI 助手 API 文档实战指南:5 步从开启 /api/docs 到调通第一个接口 Octop 自托管 AI 助手 API 文档实战指南5 步从开启 /api/docs 到调通第一个接口【免费下载链接】OctopA smarter, self-hosted AI assistant — multi-user, multi-agent.项目地址: https://gitcode.com/GitHub_Trending/oct/OctopOctop 是一个多用户、多智能体协作的自托管 AI 助手全部后端能力挂在/api前缀下官方自带/api/docs交互文档与在线调试页。本文从打开文档页讲起覆盖 JWT 令牌获取与续期、分组导航、首次接口调通和错误码解读读完你能独立跑通第一条 API 请求链路。01 | 把文档页打开默认关闭、两种开启方式与验证动作/api/docs与/api/openapi.json出厂状态是关闭的访问直接 404——生产环境少暴露一层能力面这个取舍很合理。想打开它只有两个开关环境变量优先级高于配置文件开启方式写法生效条件配置文件~/.octop/config.json中加enable_api_docs: true重启服务环境变量OCTOP_ENABLE_API_DOCS1重启服务优先覆盖配置{ enable_api_docs: true }字段定义在 src/octop/config.py 的OctopConfig中/api/docs路由本身注册在 src/octop/api/app.py页面由 Scalar 渲染。验证动作重启后浏览器打开http://127.0.0.1:8088/api/docsOctop 默认监听127.0.0.1:8088看到左侧接口分组导航即算成功。 小贴士开启状态未走完首次安装向导时/api/docs本身能打开但调任何业务接口都会拿到 503 和{setup_required: true}——先完成向导再调试。02 | 拿到钥匙令牌获取与续期三步走登录换令牌POST /api/auth/login提交username与password响应里取access_token字段启用强验证码时还要带上captcha_token。请求头携带后续请求统一加Authorization: Bearer access_tokensrc/octop/api/middleware/jwt_auth.py 会对除白名单外的所有/api/*路由做拦截。过期与自动续期令牌 TTL 默认 86400 秒由access_token_ttl_seconds控制。当剩余有效期不足三分之一时认证响应会顺带一个X-Octop-Access-Token响应头里面是新令牌——拿到就替换本地旧值实现一次登录长期在线的滑动续期。curl -s -X POST http://127.0.0.1:8088/api/auth/login \ -H Content-Type: application/json \ -d {username: admin, password: 你的密码}以下端点免令牌直接裸调/api/docs、/api/openapi.json、/api/health/api/auth/login、/api/auth/captcha、SSO 系列/api/auth/oidc/*、/api/auth/oauth/*邀请码/api/auth/invite/validate、/api/auth/invite/redeemOAuth 回调/api/connectors/oauth/callback内部网关/api/internal/mcp/*首次安装向导/api/setup/*注意安装锁首个管理员创建之前src/octop/api/middleware/setup_lockdown.py 会对所有非公开/api接口一律回 503setup_required等于强制你先走安装向导。03 | 看懂左侧地图40 多个标签的分组逻辑文档页左侧 40 多个业务标签不是拍脑袋起的而是OPENAPI_TAGS配置逐条生成定义在 src/octop/api/openapi_meta.py——分组有疑问直接翻这份源码对照。高频标签的能力边界标签管什么边界提醒setup首次安装向导建管理员、配模型只有初始安装阶段用得上auth登录登出、当前用户资料与偏好免令牌入口也在这agents智能体增删改查、启动/停止运行时运行时操作仅属主或管理员providersLLM 供应商与模型选择、连通性测试删除前确认无智能体引用cron挂在智能体上的定时 Promptowner only跨属主查不到browser远程浏览器会话、实时流、录放依赖宿主机浏览器环境点标签 → 右侧看接口卡片 → 按卡片上的 Bearer 标识决定是否带令牌导航就这三步。04 | 登录到调通一条请求链路完整走一遍目的接口权限探活GET /api/health公开登录POST /api/auth/login公开当前用户GET /api/auth/me用户智能体列表GET /api/agents用户启动智能体POST /api/agents/{id}/start属主建定时任务POST /api/agents/{id}/cron属主权限分四级递进public → user → owner → admin。owner 指资源属主或管理员例如 cron 接口即使管理员去看别人的任务也拿不到数据。文档页右侧接口卡片上的BearerAuth标识可以直接看出该接口属于哪一级。在线调试演示两个高频动作。第一步文档页找到POST /api/auth/login填入username、password点发送从响应 JSON 取出access_token第二步在请求设置里配置全局头Authorization: Bearer 刚才复制的令牌再调GET /api/auth/me返回{id, username, role, ...}即代表鉴权链路完全跑通。实时对话不走 HTTP连WS /api/agents/{agent_id}/chat/ws?tokenjwtJWT 放查询参数发送{type:user_turn, ...}帧服务端流式回 JSON 分片直到done或error帧。05 | 错误码怎么读统一信封 5 个高频码所有非 2xx 的 JSON 响应都是同一副信封message会按Accept-Language本地化{ error: { code: AGENT_NOT_FOUND, message: ..., details: {} } }code与 src/octop/infra/errors.py 的ErrorCode枚举一一对应。新手最常撞上的五个codeHTTP处理建议AUTH_FAILED/TOKEN_EXPIRED401重新走登录换新令牌LOGIN_LOCKED429等login_lockout_seconds解锁或请管理员调/api/users/{id}/unlock-loginSETUP_REQUIRED409初始管理员还没建先完成安装向导FORBIDDEN403令牌有效但角色不够升 admin 或换属主账号AGENT_NOT_FOUND404智能体不存在或不属于当前用户06 | 踩坑与生产建议5 个高频问答Q公网开着文档页会泄密吗文档页只暴露接口结构不含任何业务数据但它等于把系统能力边界摊开给扫描器。公网生产建议保持关闭确实需要时让反向代理给/api/docs单独加一层基础认证。Q文档页打不开怎么定位先看返回码404 说明enable_api_docs没开改完记得重启200 打开但业务接口全 503是安装向导没走完。Q想把文档能力搬进 Postman 或 YApiGET /api/openapi.json拉完整规范导入即可离线维护集合。Q批量脚本总是令牌过期在请求层加一行逻辑每次响应检查X-Octop-Access-Token存在就替换本地令牌——续期是服务端顺带完成的别自己算时间。Q文档页和 Swagger 能共存吗不用纠结。Octop 只保留 Scalar 这一套/api/docs就是唯一入口。这套开页 → 拿令牌 → 看分组 → 调通首个接口 → 读懂错误 → 生产避坑的闭环走完Octop 的 HTTP API 就真正成了你的工具箱。想进一步挖接口细节直接翻官方 docs/api.md 与 docs/configuration.md。【免费下载链接】OctopA smarter, self-hosted AI assistant — multi-user, multi-agent.项目地址: https://gitcode.com/GitHub_Trending/oct/Octop创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/21 1:25:51

ABS建模核心:滑移率物理本质与制动器动态建模

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/21 1:20:48

【VSCode】常用插件推荐(持续更新~)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/21 2:41:00

DeepL 入门:翻译整篇文档并用 DeepL Write 润色表达

适合人群:需要读英文资料、写英文邮件,或者经常要把 Word、PPT、PDF 整篇翻译成中文的学生和上班族。需要说明:DeepL 的免费版有字符数、文件数和文件大小限制,付费套餐内容也可能调整;下文以写作时 DeepL 帮助中心和定…

2026/10/21 2:41:00

Google Stitch 入门:用文字描述生成 App 界面设计稿

适合人群:想做一个 App 或网页,但不会用专业设计软件的产品新人、学生和独立开发者;也适合想先出几版界面草稿再和设计师沟通的人。需要说明:Stitch 目前仍是 Google Labs 的实验产品,额度规则、模式名称和导出选项都可…

2026/10/21 2:41:00

房态管理软件怎么选:2026 年中小门店选型清单

中小民宿、酒店、宾馆选房态管理软件(PMS),建议先看四件事能否成立:房态冲突能否被看见、订单能否从预订走到退房闭环、岗位权限是否够用、能否免部署快速上手。渠道对接、智能硬件、复杂收益模块可以后置——先把「可售真相」跑稳…

2026/10/21 2:41:00

免费 PMS 能不能用?先跑通再付费的路径

免费 PMS 能不能用?能——若你的目标是先验证「房态日历 订单闭环」能否支撑日常接待,而不是一上来追求全渠道自动同步与复杂报表。更稳妥的路径是:用免费版(或等价试用)跑通两周经营动作,列出真实缺口&am…

2026/10/21 2:36:00

连锁品牌的老客唤醒,怎么做才算有效

很多品牌的操作路径是:拉出一份半年没消费的名单,群发一条优惠消息,然后看有多少人回来。头一轮效果还行,第二轮弱一点,第三轮几乎没人反应。不是客户变了,而是这套做法本身就存在问题,只是前几…

2026/10/19 18:06:35

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/21 0:00:35

交通流仿真实战:IDM跟驰与MOBIL换道模型参数调优与避坑指南

简介:这份资源是面向交通工程学习者与Python开发者的微观交通流仿真项目,核心实现智能驾驶模型(IDM)下的车辆跟驰与换道行为,可用于理解速度、密度与流量之间的动态关系,适合具备Python基础、希望深入交通模…

2026/10/21 0:00:35

揭穿智能体表面顺从:用追踪代码重建任务执行确定性

1. 表面顺从不是智能体的“礼貌”,而是任务执行链路上的隐性断点最近在调试一个跨平台长周期任务调度系统时,我反复遇到一种令人困惑的现象:智能体在用户指令发出后,几乎秒级响应“已收到”“正在处理”“请稍候”,UI上…

2026/10/21 0:00:35

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑