邮件与账号安全接口
这一组接口覆盖邮箱验证与密码找回。/api/email/* 中除重发外都不需要登录。
邮箱验证
POST /api/email/verify
用邮件里的令牌完成验证。令牌一次性使用,有效期 24 小时。
| 参数 | 类型 | 必填 |
|---|---|---|
token | string | 是 |
失败返回 400 invalid_token(链接无效或已过期,需要重新发送)。
POST /api/email/resend
重新发送验证邮件,需要登录令牌。邮箱已验证时返回 400 already_verified。
找回密码
POST /api/email/forgot
申请重置密码。
| 参数 | 类型 | 必填 |
|---|---|---|
email | string | 是 |
json
{ "ok": true, "message": "如果该邮箱已注册,我们已发出重置链接" }设计说明:无论该邮箱是否注册,都返回完全相同的响应,避免被用来枚举已注册邮箱。重置令牌有效期 30 分钟。
POST /api/email/reset
用令牌设置新密码。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
token | string | 是 | 重置令牌 |
password | string | 是 | 8–72 位,含字母与数字 |
重置成功后,该账号此前所有登录会话立即失效,需要用新密码重新登录。
邮件通道
GET /api/mail/status
查询当前使用的邮件通道。
json
{ "ok": true, "transport": "smtp", "smtpConfigured": true, "baseUrl": "https://ai.modelfold.online" }transport | 含义 |
|---|---|
smtp | 已配置 SMTP,邮件真实投递 |
file | 未配置 SMTP,邮件写入服务端日志文件兜底,真实用户收不到 |
POST /api/mail/test
给自己(或指定地址)发一封测试邮件,用于验证 SMTP 配置。
| 参数 | 类型 | 必填 |
|---|---|---|
to | string | 否,默认发给自己 |
配置不正确时返回 400,并在响应里带上具体原因。