# User 与 Minds API User 与 Minds API 负责账户管理。这些端点使用 JWT 认证(而非 Mind Key),因为它们作用于账户级别,而非 Mind 级别。 ## 认证端点 ### POST /register 创建新用户账户。 ```bash curl -X POST https://synapse.schaefer.zone/register \ -H "Content-Type: application/json" \ -d '{ "email": "you@example.com", "password": "your-secure-password", "display_name": "Michael" }' ``` 响应: ```json { "jwt": "eyJhbGci...", "user": { "id": "u_abc123", "email": "you@example.com", "display_name": "Michael", "created_at": "2026-06-27T..." } } ``` ### POST /login 登录已有账户。 ```bash curl -X POST https://synapse.schaefer.zone/login \ -H "Content-Type: application/json" \ -d '{ "email": "you@example.com", "password": "your-secure-password" }' ``` 响应:与 `/register` 相同。 ## Minds 端点 ### POST /minds 创建新 Mind。返回 Mind Key — **请立即保存**,它只显示一次。 ```bash curl -X POST https://synapse.schaefer.zone/minds \ -H "Authorization: Bearer YOUR_JWT" \ -H "Content-Type: application/json" \ -d '{ "name": "Work Mind", "description": "Job-related memories" }' ``` 响应: ```json { "id": "m_xyz789", "name": "Work Mind", "description": "Job-related memories", "mind_key": "mk_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789", "created_at": "2026-06-27T..." } ``` > [!CRITICAL] > `mind_key` 只显示一次。如果丢失,无法找回 — 你必须删除该 Mind 并创建新 Mind(会丢失所有已存储的记忆)。 ### GET /minds 列出当前用户的所有 Mind。 ```bash curl -H "Authorization: Bearer YOUR_JWT" \ https://synapse.schaefer.zone/minds ``` 响应: ```json { "minds": [ { "id": "m_xyz789", "name": "Work Mind", "description": "Job-related memories", "created_at": "2026-06-27T...", "memory_count": 142, "last_activity": "2026-06-27T..." } ] } ``` ### DELETE /minds/:id 永久删除某个 Mind。 ```bash curl -X DELETE -H "Authorization: Bearer YOUR_JWT" \ https://synapse.schaefer.zone/minds/m_xyz789 ``` > [!WARNING] > 删除 Mind **不可逆**。该 Mind 中的所有记忆、任务、聊天记录和脚本都会永久丢失。如需备份,请先通过 `GET /memory/mind-export` 导出。 ## 多 Mind 模式 大多数用户会受益于使用多个 Mind 以隔离上下文: ```bash # 为不同上下文创建 Mind curl -X POST .../minds -d '{"name": "work", "description": "Job"}' # → mind_key: mk_work... curl -X POST .../minds -d '{"name": "personal", "description": "Personal life"}' # → mind_key: mk_personal... curl -X POST .../minds -d '{"name": "project-synapse", "description": "Synapse dev"}' # → mind_key: mk_synapse... ``` 在不同 LLM 会话中使用不同的 Mind Key 即可隔离上下文。 ## 账户安全 ### 密码要求 - 至少 6 个字符 - 无最大长度限制(请使用密码管理器) - 以 bcrypt 哈希存储(绝不存明文) ### JWT 过期 JWT 在 **7 天**后过期。过期后再次调用 `/login` 即可。 ### Mind Key 安全 Mind Key 永不过期。如果 Mind Key 泄露: 1. 通过 `POST /minds` 创建新 Mind 2. 用新的 Mind Key 更新你的 LLM 配置 3. 通过 `DELETE /minds/:id` 删除被泄露的 Mind ## 下一步 - [Authentication](/docs/getting-started/authentication) — 完整认证指南 - [Mind Key 与 JWT](/docs/getting-started/mind-key-vs-jwt) — 决策指南 - [Sharing API](/docs/api/user) — 与其他用户共享 Mind