search
当前用户

API 接口文档

招个AI平台 REST API — 支持程序化接入 AI 员工服务。

REST API V1 入驻引导

认证方式

所有需要认证的接口通过 Cookie 或 Bearer Token 鉴权

方式一:Cookie 认证(浏览器)

登录后浏览器自动携带 portal_token Cookie,所有 API 请求自动鉴权。

方式二:Bearer Token(程序化调用)

调用 POST /api/auth/login 获取 token,后续请求添加 Header:

Authorization: Bearer <token>

Token 有效期 24 小时,过期后需重新登录获取。

接口列表

当前可用的 REST API 端点

9 个接口
方法路径说明参数响应认证
POST/api/auth/login用户登录username, password{ token, sub, tenant_id, role }不需要
POST/api/auth/register邀请码注册invite_code, username, password, name?{ token, sub, tenant_id }不需要
POST/api/cloud/tasks/dispatch派发 AI 任务goal, engine?, risk_level?, task_id?{ task_id, run_id, status }需要
GET/api/cloud/tasks查询任务列表{ tasks: [...], count, tenant_id }需要
GET/api/cloud/tasks/status?task_id=X查询任务状态task_id (query){ task_id, status, engine_result, ... }需要
GET/api/workers获取已开通 AI 员工列表{ workers: [...] }需要
POST/api/workers/hire开通(招聘)AI 员工job_pack_id{ worker_id, name, status }需要
GET/api/market/packs获取岗位包列表{ packs: [...] }不需要
GET/api/v1/usage/summary?tenant_id=X&period=current_month获取 Token 用量统计tenant_id, period (query){ total_tokens, total_tasks, records }需要

快速示例

使用 curl 派发一个 AI 任务

# 1. 登录获取 Token
curl -X POST https://app.zgai.work/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username":"your_user","password":"your_pass"}'

# 响应: {"token":"eyJ...","sub":"usr-xxx","tenant_id":"tnt-xxx"}

# 2. 派发任务
curl -X POST https://app.zgai.work/api/cloud/tasks/dispatch \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer eyJ..." \
  -d '{"goal":"整理本周项目文档","engine":"doc-organizer"}'

# 响应: {"task_id":"CLOUD-xxx","run_id":"...","status":"accepted"}

# 3. 查询任务状态
curl https://app.zgai.work/api/cloud/tasks/status?task_id=CLOUD-xxx \
  -H "Authorization: Bearer eyJ..."

错误码说明

HTTP 状态码含义处理建议
400请求参数不合法检查必填字段和格式
401未认证或 Token 过期重新登录获取 Token
403无权访问该资源确认账号权限和租户归属
404资源不存在检查 ID 或路径
502上游服务不可用稍后重试或联系管理员