init: consolidate all ephron.ren PRDs and docs

This commit is contained in:
Ubuntu
2026-05-15 10:39:54 +08:00
parent 9568533314
commit ee8cddf8b8
21 changed files with 6991 additions and 2 deletions

156
api/api-specification.md Normal file
View File

@@ -0,0 +1,156 @@
# ephron.ren API 文档
> 版本: v1.0
> 更新日期: 2026-05-05
> 状态: 已实现
---
## 概述
本文档记录 ephron.ren 已实现的所有 API 接口。
### 服务架构
| 服务 | 域名 | 说明 |
|------|------|------|
| Auth | auth.ephron.ren | 认证授权 |
| Blog | blog.ephron.ren | 博客系统 |
| Canvas | canvas.ephron.ren | 代码画布 |
| Prompt | prompt.ephron.ren | 提示词管理 |
### 权限级别
| 权限 | 标识 | 说明 |
|------|------|------|
| 🟢 公开 | `public` | 无需认证 |
| 🔵 用户 | `user` | 需要登录 |
| 🟡 服务 | `service` | 需要 Service Token |
### 认证方式
| 方式 | Header | 说明 |
|------|--------|------|
| Cookie | `ephron_auth` | 浏览器访问 |
| Bearer Token | `Authorization: Bearer {token}` | 服务间调用 |
---
## Auth 服务
### 用户认证
| 方法 | 路径 | 权限 | 说明 |
|------|------|------|------|
| POST | `/login` | 🟢 公开 | 用户登录 |
| POST | `/register` | 🟢 公开 | 用户注册 |
| POST | `/logout` | 🔵 用户 | 用户登出 |
| GET | `/check-username` | 🟢 公开 | 检查用户名可用 |
### 认证验证
| 方法 | 路径 | 权限 | 说明 |
|------|------|------|------|
| GET | `/auth/verify` | 🟢 公开 | 验证认证状态 |
| GET | `/authz/service-admin` | 🟡 服务 | 验证服务管理员 |
---
## Blog 服务
### 文章管理服务API
| 方法 | 路径 | 权限 | 说明 |
|------|------|------|------|
| GET | `/api/service/posts` | 🟡 服务 | 文章列表 |
| GET | `/api/service/posts/{slug}` | 🟡 服务 | 文章详情 |
| POST | `/api/service/posts` | 🟡 服务 | 创建文章 |
| PATCH | `/api/service/posts/{slug}` | 🟡 服务 | 更新文章 |
| DELETE | `/api/service/posts/{slug}` | 🟡 服务 | 删除文章 |
### 点赞功能
| 方法 | 路径 | 权限 | 说明 |
|------|------|------|------|
| GET | `/posts/{post_slug}/likes` | 🟢 公开 | 获取点赞状态 |
| POST | `/posts/{post_slug}/likes/toggle` | 🟢 公开 | 切换点赞 |
| GET | `/posts/{post_slug}/likes/stats` | 🟢 公开 | 点赞统计 |
### 评论功能
| 方法 | 路径 | 权限 | 说明 |
|------|------|------|------|
| GET | `/posts/{post_slug}/comments` | 🟢 公开 | 获取评论列表 |
| POST | `/posts/{post_slug}/comments` | 🔵 用户 | 添加评论 |
### 订阅与站点
| 方法 | 路径 | 权限 | 说明 |
|------|------|------|------|
| GET | `/feed` | 🟢 公开 | RSS 订阅 |
| GET | `/sitemap.xml` | 🟢 公开 | 站点地图 |
---
## Canvas 服务
### 画布管理服务API
| 方法 | 路径 | 权限 | 说明 |
|------|------|------|------|
| GET | `/api/service/canvas` | 🟡 服务 | 画布列表 |
| GET | `/api/service/canvas/{slug}` | 🟡 服务 | 画布详情 |
| POST | `/api/service/canvas` | 🟡 服务 | 创建画布 |
| PATCH | `/api/service/canvas/{slug}` | 🟡 服务 | 更新画布 |
| DELETE | `/api/service/canvas/{slug}` | 🟡 服务 | 删除画布 |
---
## Prompt 服务
### 公开API
| 方法 | 路径 | 权限 | 说明 |
|------|------|------|------|
| GET | `/api/prompts` | 🟢 公开 | 提示词列表 |
| GET | `/api/prompts/{key}` | 🟢 公开 | 提示词详情 |
### 服务API
| 方法 | 路径 | 权限 | 说明 |
|------|------|------|------|
| GET | `/api/service/prompts` | 🟡 服务 | 提示词列表 |
| GET | `/api/service/prompts/{key}` | 🟡 服务 | 提示词详情 |
| POST | `/api/service/prompts` | 🟡 服务 | 创建草稿 |
| PATCH | `/api/service/prompts/{key}` | 🟡 服务 | 更新草稿 |
| DELETE | `/api/service/prompts/{key}` | 🟡 服务 | 删除草稿 |
---
## 错误响应
```json
{
"detail": "错误信息"
}
```
| HTTP | 说明 |
|------|------|
| 400 | 请求参数错误 |
| 401 | 未认证 |
| 403 | 无权限 |
| 404 | 资源不存在 |
| 500 | 服务器错误 |
---
## 统计
| 服务 | API数量 |
|------|---------|
| Auth | 6 |
| Blog | 12 |
| Canvas | 5 |
| Prompt | 7 |
| **总计** | **30** |