ZSend 是一个部署在 Cloudflare Workers 上的邮件发送网关,提供 Web 管理后台、多 SMTP 账号管理和统一的 HTTP 发信 API,由xiaoz开发,已经在Github开源。

github-card-helloxz-zsend.jpeg

> 开源地址:https://github.com/helloxz/zsend

ZSend解决了哪些问题?


**多个 SMTP 账号不好统一管理**

你可能有企业邮箱、个人域名邮箱、不同业务线的 SMTP 账号。ZSend 可以集中管理多个 SMTP 账号,通过发件人地址自动匹配对应账号发信。

**业务系统只想调用 HTTP API,不想接 SMTP**

不同的开发语言依赖不同的SMTP包,接入非常繁琐,ZSend 把 SMTP 封装成统一的 HTTP 发信接口,简化业务接入。

**记录发送日志**

部分SMTP发信后不具备转移到【已发送】的功能,导致发信日志缺失,而ZSend会记录每一条发信日志。

> 总之ZSend 适合那些已经有多个 SMTP 账号、希望用统一 HTTP API 发信、又不想引入复杂邮件系统或商业邮件服务的轻量自托管场景。

ZSend特点


- 支持 Cloudflare Workers 部署
- 可视化管理:支持WebUI管理和查看邮件发送日志
- 支持配置多个 SMTP 账号
- 提供统一HTTP API 发送邮件
- 支持 texthtmlmarkdown 内容
- 自动重试:SMTP 发送失败时自动重试一次
- 发信日志:每次发信请求都会记录日志
- 鉴权访问:发信接口使用 Bearer Token 鉴权

部分截图


CleanShot 2026-05-29 at 08.08.59@2x.png



CleanShot 2026-05-29 at 08.11.38@2x.png

将ZSend部署到 Cloudflare Workers


前置条件


1. 安装 Wrangler CLI
2. 登录 Cloudflare 账号
3. 安装 Bun

wrangler login


1. Fork 并克隆项目


Fork 本项目到您的 Github 账号,然后克隆到本地:

git clone https://github.com/your-username/zsend.git
cd zsend


2. 创建 D1 数据库


wrangler d1 create zsend


创建成功后会输出类似信息:

✅ Successfully created DB 'zsend'
[[d1_databases]]
binding = "DB"
database_name = "zsend"
database_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"


将输出的 database_id 填入 wrangler.jsonc 文件中的 database_id 字段。

3. 设置环境变量


wrangler secret put TOKEN
# 输入任意字符串,后续调用接口需要使用这个字符串做为 Bearer Token


4. 部署项目


bun install
wrangler deploy


部署成功后会显示访问地址,例如:https://zsend.your-subdomain.workers.dev

5. 配置 SMTP 账号


部署完成后,访问 https://zsend.your-subdomain.workers.dev 即可通过 Web UI 查看发信日志和配置SMTP账号。

6. 测试发信


curl -X POST "https://zsend.your-subdomain.workers.dev/api/v1/send" \
  -H "Authorization: Bearer your-token" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "no-reply@example.com",
    "to": "user@example.com",
    "title": "欢迎使用",
    "content": "# Hello\n这是一封由 ZSend 发出的邮件。",
    "type": "markdown",
    "sender_name": "ZSend 通知"
  }'


结语


ZSend 是一款部署于 Cloudflare Workers 的开源邮件网关,让多 SMTP 账号管理、统一 HTTP 发信与日志记录变得简单轻量。无需复杂邮件系统,即可为业务系统快速集成发信能力。

> ZSend项目地址:https://github.com/helloxz/zsend