01
前置准备:获取 API Token
Mail Forge 通过 Cloudflare API Token 操作你的账号,Token 需要具备以下两项权限:
- Zone → Zone → Read — 读取域名列表
- Zone → Email Routing Rules → Edit — 创建、修改、删除邮件路由规则
创建步骤
- 登录 Cloudflare 控制台 → 右上角头像 → My Profile
- 左侧导航选择 API Tokens → 点击 Create Token
- 选择 Custom token,添加上述两项权限
- 在 Zone Resources 中选择 Specific zone 并勾选你要管理的域名(也可选 All zones)
- 确认并创建,复制显示的 Token
注意 — Token 只显示一次。请在创建后立即复制保存,关闭页面后将无法再查看。
02
Step 1 — 控制台配置
填写全部字段后点击「保存配置」,系统会自动拉取你账号下的域名列表。
| 字段 | 说明 | 示例 |
API Token |
粘贴上一步创建的 Token |
— |
默认转发目标邮箱 |
所有路由规则统一转发到此地址 |
you@gmail.com |
默认前缀 |
批量创建时邮箱地址的前缀部分 |
promo |
默认数量 |
每次批量创建的数量 |
5 |
默认起始序号 |
编号从几开始,默认 1 |
1 |
请求间隔 (ms) |
批量创建时每条请求之间的等待时间,防止触发 API 速率限制 |
300 |
配置数据保存在本地 data/app-config.json,包含 Token。请勿将此文件提交至公开代码仓库。
03
Step 2 — 域名选择
批量创建操作会同时作用于所有已勾选的域名。
- 勾选域名卡片左侧的复选框即可选中;支持多选。
- 搜索框支持关键词实时过滤域名列表。
- 点击「选中可见域名」可一次勾选当前搜索结果中的所有域名。
- 点击域名卡片右侧「查看规则」按钮,可直接跳转至 Step 4 并加载该域名的路由规则。
- 已选中的域名会以金色边框高亮显示,并在 Hero 区域统计栏更新数量。
04
Step 3 — 批量新增 Mail
支持两种创建模式,通过顶部 Tab 切换。
模式 A:前缀/随机批量
系统自动生成一组邮箱地址。
- 设置前缀 + 数量 + 起始序号后点击「开始批量创建」。
- 前缀留空时自动生成随机字符串作为 local-part。
- 例:前缀
vip,数量 3,起始 1 → 生成 vip001@domain.com、vip002@domain.com、vip003@domain.com
模式 B:手动地址清单
逐行输入你想要的地址:
- 每行一个 local-part,例如
sales、care、vip
- 也可输入完整邮箱地址,系统会自动提取
@ 前的部分
- 输入的 local-part 会被写入所有已选中域名,形成多条路由规则
「创建后立即启用」勾选时,新建规则的状态为 enabled;取消勾选则默认为 disabled,创建后需手动在 Step 4 启用。
05
Step 4 — 规则查询与管理
- 顶部下拉选择要查看的域名,规则列表自动加载。
- 搜索框支持按邮箱地址、目标邮箱、规则名三个维度过滤。
- 每条规则右侧有「启用/停用」和「删除」两个操作按钮。
- 勾选多条规则后,点击面板头部的「删除选中」可批量删除。
- 表头复选框可一次全选当前可见规则。
- 点击「刷新规则」可重新从 Cloudflare 拉取最新状态。
06
常见问题
保存 Token 后为什么拉取不到域名?
检查 Token 权限是否包含 Zone Read。部分账号在创建 Token 时 Zone Resources 选择了 All zones,但由于账号设置某些域名被排除在外。建议明确选择具体域名。
批量创建时部分失败是正常的吗?
是的。如果同名路由规则已存在,Cloudflare API 会返回错误,该条创建失败但不影响其他条。操作日志中会分别显示成功数和失败数。
请求间隔设置多少合适?
Cloudflare API 有速率限制。建议至少设置 200ms,域名或规则数量较多时建议 500ms 以上,以避免触发 429 错误。
如何批量操作多个域名?
在 Step 2 中勾选多个域名后,Step 3 的批量创建会将相同的 local-part 写入所有已选中域名。例如选中 3 个域名、创建 5 条规则,实际会创建 15 条路由规则。
本地服务显示异常怎么办?
通常是 Node.js 服务未启动。在项目目录执行 node server.js 或 npm start,然后刷新页面。
配置数据存在哪里,安全吗?
配置(含 API Token)保存在本地 data/app-config.json,不会上传任何服务器。确保此文件在 .gitignore 中,不要将其推送至公开仓库。