跳到主要内容

API 参考

Manor AI 对外暴露的 HTTP API 与 Web 应用使用的完全相同。交互式的 OpenAPI 视图仍然是精确请求与响应 schema 的唯一权威来源,但本页为运维人员和 集成开发者提供了一份可读性更强的公开接口地图。

本地 URL

通过 Docker Compose 运行时:

http://localhost:18080/api/docs
http://localhost:18080/api/redoc
http://localhost:18080/api/openapi.json

直接运行 API 时:

http://localhost:8000/api/docs
http://localhost:8000/api/redoc
http://localhost:8000/api/openapi.json

认证

大多数 /api/v1/* 路由都需要 bearer token:

Authorization: Bearer <access_token>

使用 POST /api/v1/auth/login 创建会话 token,或通过 Web 应用登录后, 用同一后端查看 OpenAPI 文档。模型提供商 API 密钥则是另一回事:它们是 Agent 运行时使用的 BYOK 凭据,通过 /api/v1/api-keys 或设置界面进行管理。

curl -sS http://localhost:18080/api/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"demo@manor.local","password":"manor-demo"}'

核心资源

领域主要端点适用场景
认证与个人资料POST /api/v1/auth/loginGET /api/v1/auth/meGET /api/v1/entities/me登录、查看当前用户、管理当前实体
工作区GET /api/v1/workspacesPOST /api/v1/workspacesGET /api/v1/workspaces/{workspace_id}创建运营工作区、更新工作区元数据、读取工作区仪表盘
工作区运行时GET /api/v1/workspaces/{workspace_id}/operating-modelGET /api/v1/workspaces/{workspace_id}/governanceGET /api/v1/workspaces/{workspace_id}/activityGET /api/v1/workspaces/{workspace_id}/capabilities配置 Agent、目标、规则和审批在工作区内的行为方式
聊天POST /api/v1/chat/messagePOST /api/v1/chat/streamGET /api/v1/chat/conversations向 Agent 运行时发送消息、附加上下文、流式返回响应、管理会话
工作区聊天GET /api/v1/workspaces/{workspace_id}/chat/messagesPOST /api/v1/workspaces/{workspace_id}/chat/messages在工作区范围的会话线程中发送和处理消息
AgentGET /api/v1/agentsPOST /api/v1/agentsPOST /api/v1/agents/generateGET /api/v1/agents/{agent_id}/tools创建 Agent、从提示词生成 Agent、绑定工具
技能GET /api/v1/skillsPOST /api/v1/skillsPOST /api/v1/skills/generatePOST /api/v1/skills/install-github管理可供 Agent 使用的可复用技能
任务GET /api/v1/tasksPOST /api/v1/tasksGET /api/v1/tasks/{task_id}跟踪工作、审批、评论、自动化日志和任务状态
目标与计划GET /api/v1/goalsPOST /api/v1/goalsGET /api/v1/plansPOST /api/v1/plans/{plan_id}/approveGET /api/v1/executions定义目标、运行计划、批准待审计划、查看 Agent 执行状态——参见目标与计划
工作流GET/POST /api/v1/workflowsPOST /api/v1/workflows/{id}/runGET /api/v1/workflows/runsPOST /api/v1/workflows/webhook/{token}构建、部署、触发和查看节点图自动化——参见工作流
定时任务GET/POST /api/v1/jobsPOST /api/v1/jobs/{job_id}/run_nowGET /api/v1/jobs/{job_id}/runs带运行历史的周期性自动化——参见自动化
记忆GET/POST /api/v1/memoriesPOST /api/v1/memories/extract持久化的 Agent 与工作区记忆——参见记忆
报告GET /api/v1/reports/tasks/usage/activityPOST /api/v1/reports/email按需生成 HTML/JSON 报告——参见报告
搜索GET /api/v1/search?q=对任务、文档、Agent、会话的全局子串搜索
蓝图GET /api/v1/blueprintsPOST /api/v1/blueprints/{id}/installPOST /api/v1/workspaces/{id}/export-blueprint打包并安装工作区配置——参见蓝图
日历与预约GET/PUT /api/v1/calendar-settingsPOST .../booking-linksGET .../public/booking-links/{slug}工作时间、预约链接、日程——参见日历与预约
浏览器会话POST /api/v1/browser/sessionsPOST .../{id}/navigate.../action服务端 Chromium 自动化——参见浏览器会话
渠道与配对/api/v1/channels/* webhook、POST /api/v1/channel-pairingsGET/POST /api/v1/messages入站消息渠道、身份配对、内部私信——参见消息渠道
文档GET /api/v1/documentsPOST /api/v1/documents/uploadGET /api/v1/shared-doc/{token}上传、创建、分享文档并管理文档权限
集成GET /api/v1/integrations/mcp-serversPOST /api/v1/integration-sessions/startGET /api/v1/webhooks连接 MCP 服务器、外部账户、OAuth/Nango 流程和出站 webhook
Worker 与沙箱GET /api/v1/workersPOST /api/v1/workers/heartbeatPOST /api/v1/workspaces/sandbox注册 worker,并在已配置的环境中运行基于沙箱的执行
运维GET /healthGET /health/readyGET /health/deepGET /api/v1/backup/summaryGET /api/v1/usage/summary监控就绪状态、导出备份数据、查看用量

由于 Web 应用是 API 优先的,公开的 OpenAPI schema 目前包含数百条路由。 建议先从上表所列领域入手;当你需要精确的字段级契约时,再使用 Swagger 或 ReDoc。

常用调用

登录并保存 token

TOKEN="$(
curl -sS http://localhost:18080/api/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"demo@manor.local","password":"manor-demo"}' \
| jq -r .access_token
)"

列出工作区

curl -sS http://localhost:18080/api/v1/workspaces \
-H "Authorization: Bearer $TOKEN"

创建工作区

curl -sS http://localhost:18080/api/v1/workspaces \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Customer Support Operations",
"description": "Triage customer requests and escalate sensitive work.",
"category": "operations"
}'

发送非流式聊天消息

curl -sS http://localhost:18080/api/v1/chat/message \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"message": "Summarize the workspace priorities for today.",
"workspace_context": true
}'

流式获取 Agent 响应

/api/v1/chat/stream 返回 Server-Sent Events,并接受 multipart/form-data,因此调用方可以附带文件和可选的工作区上下文。

curl -N http://localhost:18080/api/v1/chat/stream \
-H "Authorization: Bearer $TOKEN" \
-F "message=Draft a support triage plan" \
-F "workspace_context=true"

添加模型提供商密钥

curl -sS http://localhost:18080/api/v1/api-keys \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "OpenRouter production",
"provider": "openrouter",
"api_key": "sk-or-...",
"default_model": "openai/gpt-4.1",
"is_default": true
}'

原始密钥只在创建或轮换时被接受。列表响应仅暴露密钥的元数据和前缀, 不会返回密钥本身。

公开与嵌入路由

有些路由专为未认证的外部访问者设计,前提是运维人员先创建了分享或公开 token:

场景端点
分享文档/api/v1/shared-doc/{token}/content/download
分享文件夹/api/v1/shared-folder/{token}
公开任务评审/api/v1/public/task/update-status/complete/evaluate
公开聊天挂件/api/v1/public/chat/{token}/session/message/message/stream/embed.js
渠道 webhook/api/v1/channels/* 回调端点
工作流 webhook/api/v1/workflows/webhook/{token}
公开预约/api/v1/calendar-settings/public/booking-links/{slug}.../book

请将分享 token 和渠道 webhook 密钥视为凭据。一旦泄露,请立即轮换。

生成 OpenAPI JSON

make openapi

该命令会在开发目录中将 OpenAPI 文档写入 docs/openapi.json。 生成的 schema 可用于查阅、契约测试和客户端代码生成。

npx openapi-typescript docs/openapi.json -o manor-api.d.ts

稳定性说明

  • 核心资源中列出的路由是自托管部署进行集成的推荐起点。
  • 平台管理路由在常规的工作区自动化中并不需要。
  • 云端市场、计费、远程编码和 CLI 分发相关的路由不属于公开的 OSS 运行时 导出范围。
  • OpenAPI schema 随仓库一起做版本管理。升级 Manor AI 后请重新生成客户端。